kubernetes安装ingress-nginx
<p> </p><p><strong>版本说明</strong></p>
<p>网上的资料一般是基于v0.30.0来安装,但是对于kubernetes@1.22来说要安装ingress-nginx@v1.0.0以上版本(目前最新版本是v1.0.4,本文采用v1.0.0),原因是 kubectl@v1.22版本不再支持v1beta1</p>
<p>如果安装ingress-nginx@v0.30.0版本后启动pod有如下问题</p>
<div class="cnblogs_code">
<pre>Failed to list *v1beta1.Ingress: the server could not <span style="color: rgba(0, 0, 255, 1)">find</span> the requested resource</pre>
</div>
<p>有一个版本的支持情况(https://github.com/kubernetes/ingress-nginx/)</p>
<p><img src="https://img2020.cnblogs.com/blog/490358/202111/490358-20211106214928621-1210857692.png"></p>
<p>我的node环境</p>
<div class="cnblogs_code">
<pre><strong>$ kubectl get nodes -</strong><span style="color: rgba(0, 0, 0, 1)"><strong>o wide</strong>
NAME STATUS ROLES AGE VERSION INTERNAL</span>-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-<span style="color: rgba(0, 0, 0, 1)">RUNTIME
kbs1 Ready </span><none> 21d v1.<span style="color: rgba(128, 0, 128, 1)">22.2</span> <span style="color: rgba(128, 0, 128, 1)">192.168</span>.<span style="color: rgba(128, 0, 128, 1)">0.106</span> <none> Ubuntu <span style="color: rgba(128, 0, 128, 1)">20.04</span>.<span style="color: rgba(128, 0, 128, 1)">3</span> LTS <span style="color: rgba(128, 0, 128, 1)">5.4</span>.<span style="color: rgba(128, 0, 128, 1)">0</span>-<span style="color: rgba(128, 0, 128, 1)">88</span>-generic docker:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">20.10.9</span>
kbs2 Ready <none> 21d v1.<span style="color: rgba(128, 0, 128, 1)">22.2</span> <span style="color: rgba(128, 0, 128, 1)">192.168</span>.<span style="color: rgba(128, 0, 128, 1)">0.107</span> <none> Ubuntu <span style="color: rgba(128, 0, 128, 1)">20.04</span>.<span style="color: rgba(128, 0, 128, 1)">3</span> LTS <span style="color: rgba(128, 0, 128, 1)">5.4</span>.<span style="color: rgba(128, 0, 128, 1)">0</span>-<span style="color: rgba(128, 0, 128, 1)">88</span>-generic docker:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">20.10.9</span>
kbsm Ready control-plane,master 25d v1.<span style="color: rgba(128, 0, 128, 1)">22.2</span> <span style="color: rgba(128, 0, 128, 1)">192.168</span>.<span style="color: rgba(128, 0, 128, 1)">0.105</span> <none> Ubuntu <span style="color: rgba(128, 0, 128, 1)">20.04</span>.<span style="color: rgba(128, 0, 128, 1)">3</span> LTS <span style="color: rgba(128, 0, 128, 1)">5.4</span>.<span style="color: rgba(128, 0, 128, 1)">0</span>-<span style="color: rgba(128, 0, 128, 1)">88</span>-generic docker:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">20.10.</span></pre>
</div>
<p> </p>
<p>官方的yaml中使用的镜像不能下载,所以要改成dockerhub上的镜像</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)"><strong># controller镜像对应地址,所有的node都要docker pull</strong>
image: k8s.gcr.io</span>/ingress-nginx/controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span>-> https:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">hub.docker.com/r/willdockerhub/ingress-nginx-controller</span>
docker pull willdockerhub/ingress-nginx-controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span><span style="color: rgba(0, 0, 0, 1)">
image: k8s.gcr.io</span>/ingress-nginx/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span> -> https:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">hub.docker.com/r/jettech/kube-webhook-certgen/tags</span>
docker pull jettech/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span></pre>
</div>
<p> 原yaml文件</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.0.0/deploy/static/provider/cloud/deploy.yaml
</pre>
</div>
<p>国内访问这个地址不稳定,我把他复制下来</p>
<div class="cnblogs_code"><img id="code_img_closed_98648cf6-83e8-46cb-a59f-e4c81d968fbe" class="code_img_closed lazyload" data-src="http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif"><img id="code_img_opened_98648cf6-83e8-46cb-a59f-e4c81d968fbe" class="code_img_opened lazyload" style="display: none" data-src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif">
<div id="cnblogs_code_open_98648cf6-83e8-46cb-a59f-e4c81d968fbe" class="cnblogs_code_hide">
<pre><span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
kind: Namespace
metadata:
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
labels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
automountServiceAccountToken: </span><span style="color: rgba(0, 0, 255, 1)">true</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
data:
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/<span style="color: rgba(0, 0, 0, 1)">clusterrole.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRole
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
</span>-<span style="color: rgba(0, 0, 0, 1)"> endpoints
</span>-<span style="color: rgba(0, 0, 0, 1)"> nodes
</span>-<span style="color: rgba(0, 0, 0, 1)"> pods
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> nodes
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> services
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> events
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>- ingresses/<span style="color: rgba(0, 0, 0, 1)">status
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingressclasses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/<span style="color: rgba(0, 0, 0, 1)">clusterrolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRoleBinding
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">role.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Role
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> namespaces
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
</span>-<span style="color: rgba(0, 0, 0, 1)"> pods
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
</span>-<span style="color: rgba(0, 0, 0, 1)"> endpoints
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> services
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>- ingresses/<span style="color: rgba(0, 0, 0, 1)">status
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingressclasses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
resourceNames:
</span>- ingress-controller-<span style="color: rgba(0, 0, 0, 1)">leader
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> events
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">rolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: RoleBinding
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-service-<span style="color: rgba(0, 0, 0, 1)">webhook.yaml
apiVersion: v1
kind: Service
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
type: ClusterIP
ports:
</span>- name: https-<span style="color: rgba(0, 0, 0, 1)">webhook
port: </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)">
targetPort: webhook
appProtocol: https
selector:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">service.yaml
apiVersion: v1
kind: Service
metadata:
annotations:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
type: LoadBalancer
externalTrafficPolicy: Local
ports:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: http
port: </span><span style="color: rgba(128, 0, 128, 1)">80</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
targetPort: http
appProtocol: http
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: https
port: </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
targetPort: https
appProtocol: https
selector:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">deployment.yaml
apiVersion: apps</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Deployment
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
selector:
matchLabels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
revisionHistoryLimit: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
minReadySeconds: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
template:
metadata:
labels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
spec:
dnsPolicy: ClusterFirst
containers:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: controller
image: k8s.gcr.io</span>/ingress-nginx/controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span><span style="color: rgba(0, 0, 0, 1)">@sha256:0851b34f69f69352bf168e6ccf30e1e20714a264ab1ecd1933e4d8c0fc3215c6
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
exec:
command:
</span>- /<span style="color: rgba(0, 0, 255, 1)">wait</span>-<span style="color: rgba(0, 0, 0, 1)">shutdown
args:
</span>- /nginx-ingress-<span style="color: rgba(0, 0, 0, 1)">controller
</span>- --publish-service=$(POD_NAMESPACE)/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
</span>- --election-<span style="color: rgba(0, 0, 255, 1)">id</span>=ingress-controller-<span style="color: rgba(0, 0, 0, 1)">leader
</span>- --controller-class=k8s.io/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>- --configmap=$(POD_NAMESPACE)/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
</span>- --validating-webhook=:<span style="color: rgba(128, 0, 128, 1)">8443</span>
- --validating-webhook-certificate=/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">cert
</span>- --validating-webhook-key=/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">key
securityContext:
capabilities:
drop:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ALL
add:
</span>-<span style="color: rgba(0, 0, 0, 1)"> NET_BIND_SERVICE
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">101</span><span style="color: rgba(0, 0, 0, 1)">
allowPrivilegeEscalation: </span><span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: LD_PRELOAD
value: </span>/usr/local/lib/<span style="color: rgba(0, 0, 0, 1)">libmimalloc.so
livenessProbe:
failureThreshold: </span><span style="color: rgba(128, 0, 128, 1)">5</span><span style="color: rgba(0, 0, 0, 1)">
httpGet:
path: </span>/<span style="color: rgba(0, 0, 0, 1)">healthz
port: </span><span style="color: rgba(128, 0, 128, 1)">10254</span><span style="color: rgba(0, 0, 0, 1)">
scheme: HTTP
initialDelaySeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
periodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
successThreshold: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
timeoutSeconds: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
readinessProbe:
failureThreshold: </span><span style="color: rgba(128, 0, 128, 1)">3</span><span style="color: rgba(0, 0, 0, 1)">
httpGet:
path: </span>/<span style="color: rgba(0, 0, 0, 1)">healthz
port: </span><span style="color: rgba(128, 0, 128, 1)">10254</span><span style="color: rgba(0, 0, 0, 1)">
scheme: HTTP
initialDelaySeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
periodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
successThreshold: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
timeoutSeconds: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
ports:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: http
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">80</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: https
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: webhook
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">8443</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
volumeMounts:
</span>- name: webhook-<span style="color: rgba(0, 0, 0, 1)">cert
mountPath: </span>/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">
readOnly: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
resources:
requests:
cpu: 100m
memory: 90Mi
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
serviceAccountName: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
terminationGracePeriodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">300</span><span style="color: rgba(0, 0, 0, 1)">
volumes:
</span>- name: webhook-<span style="color: rgba(0, 0, 0, 1)">cert
secret:
secretName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">ingressclass.yaml
# We don</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">t support namespaced ingressClass yet</span>
<span style="color: rgba(0, 0, 0, 1)"># So a ClusterRole and a ClusterRoleBinding is required
apiVersion: networking.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: IngressClass
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
controller: k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/validating-<span style="color: rgba(0, 0, 0, 1)">webhook.yaml
# before changing this value, check the required kubernetes version
# https:</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#prerequisites</span>
apiVersion: admissionregistration.k8s.io/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ValidatingWebhookConfiguration
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
webhooks:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: validate.nginx.ingress.kubernetes.io
matchPolicy: Equivalent
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
apiVersions:
</span>-<span style="color: rgba(0, 0, 0, 1)"> v1
operations:
</span>-<span style="color: rgba(0, 0, 0, 1)"> CREATE
</span>-<span style="color: rgba(0, 0, 0, 1)"> UPDATE
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
failurePolicy: Fail
sideEffects: None
admissionReviewVersions:
</span>-<span style="color: rgba(0, 0, 0, 1)"> v1
clientConfig:
service:
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
name: ingress</span>-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission
path: </span>/networking/v1/<span style="color: rgba(0, 0, 0, 1)">ingresses
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">clusterrole.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRole
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> admissionregistration.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> validatingwebhookconfigurations
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">clusterrolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRoleBinding
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">role.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Role
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">rolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: RoleBinding
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/job-<span style="color: rgba(0, 0, 0, 1)">createSecret.yaml
apiVersion: batch</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Job
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 0, 1)">create
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
template:
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 0, 1)">create
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">19023</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">19023</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(128, 0, 128, 1)">15218</span> <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(128, 0, 128, 1)">0</span>:<span style="color: rgba(128, 0, 128, 1)">00</span>:<span style="color: rgba(128, 0, 128, 1)">01</span><span style="color: rgba(128, 0, 128, 1)">0</span>:<span style="color: rgba(128, 0, 128, 1)">00</span>:<span style="color: rgba(128, 0, 128, 1)">01</span> --:--:-- <span style="color: rgba(128, 0, 128, 1)">15230</span>-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
containers:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: create
image: k8s.gcr.io</span>/ingress-nginx/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068
imagePullPolicy: IfNotPresent
args:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- --host=ingress-nginx-controller-admission,ingress-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission.$(POD_NAMESPACE).svc
</span>- --namespace=<span style="color: rgba(0, 0, 0, 1)">$(POD_NAMESPACE)
</span>- --secret-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span><span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
restartPolicy: OnFailure
serviceAccountName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
securityContext:
runAsNonRoot: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">2000</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/job-<span style="color: rgba(0, 0, 0, 1)">patchWebhook.yaml
apiVersion: batch</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Job
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
template:
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
containers:
</span>- name: <span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
image: k8s.gcr.io</span>/ingress-nginx/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068
imagePullPolicy: IfNotPresent
args:
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
- --webhook-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>- --namespace=<span style="color: rgba(0, 0, 0, 1)">$(POD_NAMESPACE)
</span>- --<span style="color: rgba(0, 0, 255, 1)">patch</span>-mutating=<span style="color: rgba(0, 0, 255, 1)">false</span>
- --secret-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>- --<span style="color: rgba(0, 0, 255, 1)">patch</span>-failure-policy=<span style="color: rgba(0, 0, 0, 1)">Fail
</span><span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
restartPolicy: OnFailure
serviceAccountName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
securityContext:
runAsNonRoot: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">2000</span></pre>
</div>
<span class="cnblogs_code_collapse">View Code</span></div>
<p>需要在原deploy.yaml文件上修改修改后再部署</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)"># 修改点如下
</span><span style="color: rgba(128, 0, 128, 1)">1</span>:k8s.gcr.io/ingress-nginx/controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span>@sha256:0851b34f69f69352bf168e6ccf30e1e20714a264ab1ecd1933e4d8c0fc3215c6 改为:willdockerhub/ingress-nginx-controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span>
<span style="color: rgba(128, 0, 128, 1)">2</span>:k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span>@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068 改为:jettech/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span>
<span style="color: rgba(128, 0, 128, 1)">3</span><span style="color: rgba(0, 0, 0, 1)">:Deployment修改点
template:
metadata:
labels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
spec:
dnsPolicy: ClusterFirstWithHostNet#既能使用宿主机DNS,又能使用集群DNS原文line:319
hostNetwork: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)"> #与宿主机共享网络
nodeName: k8s</span>-master-<span style="color: rgba(128, 0, 128, 1)">1</span> #设置只能在k8s-master-<span style="color: rgba(0, 0, 0, 1)">1节点运行
tolerations: #设置能容忍master污点
</span>- key: node-role.kubernetes.io/<span style="color: rgba(0, 0, 0, 1)">master
operator: Exists
containers:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: controller
image: willdockerhub</span>/ingress-nginx-controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span><span style="color: rgba(0, 0, 0, 1)">
imagePullPolicy: IfNotPresent<br></span></pre>
</div>
<p>修改后的yaml文件</p>
<div class="cnblogs_code"><img id="code_img_closed_b9a4d598-2fd9-419c-ba7c-b6ea243946ef" class="code_img_closed lazyload" data-src="http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif"><img id="code_img_opened_b9a4d598-2fd9-419c-ba7c-b6ea243946ef" class="code_img_opened lazyload" style="display: none" data-src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif">
<div id="cnblogs_code_open_b9a4d598-2fd9-419c-ba7c-b6ea243946ef" class="cnblogs_code_hide">
<pre><span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
kind: Namespace
metadata:
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
labels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
automountServiceAccountToken: </span><span style="color: rgba(0, 0, 255, 1)">true</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
data:
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/<span style="color: rgba(0, 0, 0, 1)">clusterrole.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRole
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
</span>-<span style="color: rgba(0, 0, 0, 1)"> endpoints
</span>-<span style="color: rgba(0, 0, 0, 1)"> nodes
</span>-<span style="color: rgba(0, 0, 0, 1)"> pods
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> nodes
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> services
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> events
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>- ingresses/<span style="color: rgba(0, 0, 0, 1)">status
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingressclasses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/<span style="color: rgba(0, 0, 0, 1)">clusterrolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRoleBinding
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">role.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Role
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> namespaces
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
</span>-<span style="color: rgba(0, 0, 0, 1)"> pods
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
</span>-<span style="color: rgba(0, 0, 0, 1)"> endpoints
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> services
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>- ingresses/<span style="color: rgba(0, 0, 0, 1)">status
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingressclasses
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> list
</span>-<span style="color: rgba(0, 0, 0, 1)"> watch
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
resourceNames:
</span>- ingress-controller-<span style="color: rgba(0, 0, 0, 1)">leader
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> configmaps
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> events
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">rolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: RoleBinding
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-service-<span style="color: rgba(0, 0, 0, 1)">webhook.yaml
apiVersion: v1
kind: Service
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
type: ClusterIP
ports:
</span>- name: https-<span style="color: rgba(0, 0, 0, 1)">webhook
port: </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)">
targetPort: webhook
appProtocol: https
selector:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">deployment.yaml
apiVersion: apps</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: DaemonSet
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
selector:
matchLabels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
revisionHistoryLimit: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
minReadySeconds: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
template:
metadata:
labels:
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
spec:
hostNetwork: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
dnsPolicy: ClusterFirst
containers:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: controller
image: registry.cn</span>-beijing.aliyuncs.com/kole_chang/controller:v1.<span style="color: rgba(128, 0, 128, 1)">0.0</span><span style="color: rgba(0, 0, 0, 1)">
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
exec:
command:
</span>- /<span style="color: rgba(0, 0, 255, 1)">wait</span>-<span style="color: rgba(0, 0, 0, 1)">shutdown
args:
</span>- /nginx-ingress-<span style="color: rgba(0, 0, 0, 1)">controller
</span>- --election-<span style="color: rgba(0, 0, 255, 1)">id</span>=ingress-controller-<span style="color: rgba(0, 0, 0, 1)">leader
</span>- --controller-class=k8s.io/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>- --configmap=$(POD_NAMESPACE)/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller
</span>- --validating-webhook=:<span style="color: rgba(128, 0, 128, 1)">8443</span>
- --validating-webhook-certificate=/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">cert
</span>- --validating-webhook-key=/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">key
</span>- --watch-ingress-without-class=<span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
securityContext:
capabilities:
drop:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ALL
add:
</span>-<span style="color: rgba(0, 0, 0, 1)"> NET_BIND_SERVICE
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">101</span><span style="color: rgba(0, 0, 0, 1)">
allowPrivilegeEscalation: </span><span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: LD_PRELOAD
value: </span>/usr/local/lib/<span style="color: rgba(0, 0, 0, 1)">libmimalloc.so
livenessProbe:
failureThreshold: </span><span style="color: rgba(128, 0, 128, 1)">5</span><span style="color: rgba(0, 0, 0, 1)">
httpGet:
path: </span>/<span style="color: rgba(0, 0, 0, 1)">healthz
port: </span><span style="color: rgba(128, 0, 128, 1)">10254</span><span style="color: rgba(0, 0, 0, 1)">
scheme: HTTP
initialDelaySeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
periodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
successThreshold: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
timeoutSeconds: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
readinessProbe:
failureThreshold: </span><span style="color: rgba(128, 0, 128, 1)">3</span><span style="color: rgba(0, 0, 0, 1)">
httpGet:
path: </span>/<span style="color: rgba(0, 0, 0, 1)">healthz
port: </span><span style="color: rgba(128, 0, 128, 1)">10254</span><span style="color: rgba(0, 0, 0, 1)">
scheme: HTTP
initialDelaySeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
periodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">
successThreshold: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
timeoutSeconds: </span><span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
ports:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: http
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">80</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: https
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: webhook
containerPort: </span><span style="color: rgba(128, 0, 128, 1)">8443</span><span style="color: rgba(0, 0, 0, 1)">
protocol: TCP
volumeMounts:
</span>- name: webhook-<span style="color: rgba(0, 0, 0, 1)">cert
mountPath: </span>/usr/local/certificates/<span style="color: rgba(0, 0, 0, 1)">
readOnly: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
resources:
requests:
cpu: 100m
memory: 90Mi
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
serviceAccountName: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
terminationGracePeriodSeconds: </span><span style="color: rgba(128, 0, 128, 1)">300</span><span style="color: rgba(0, 0, 0, 1)">
volumes:
</span>- name: webhook-<span style="color: rgba(0, 0, 0, 1)">cert
secret:
secretName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/controller-<span style="color: rgba(0, 0, 0, 1)">ingressclass.yaml
# We don</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">t support namespaced ingressClass yet</span>
<span style="color: rgba(0, 0, 0, 1)"># So a ClusterRole and a ClusterRoleBinding is required
apiVersion: networking.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: IngressClass
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">component: controller
name: nginx
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
spec:
controller: k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/validating-<span style="color: rgba(0, 0, 0, 1)">webhook.yaml
# before changing this value, check the required kubernetes version
# https:</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#prerequisites</span>
apiVersion: admissionregistration.k8s.io/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ValidatingWebhookConfiguration
metadata:
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
webhooks:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: validate.nginx.ingress.kubernetes.io
matchPolicy: Equivalent
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> networking.k8s.io
apiVersions:
</span>-<span style="color: rgba(0, 0, 0, 1)"> v1
operations:
</span>-<span style="color: rgba(0, 0, 0, 1)"> CREATE
</span>-<span style="color: rgba(0, 0, 0, 1)"> UPDATE
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> ingresses
failurePolicy: Fail
sideEffects: None
admissionReviewVersions:
</span>-<span style="color: rgba(0, 0, 0, 1)"> v1
clientConfig:
service:
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
name: ingress</span>-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission
path: </span>/networking/v1/<span style="color: rgba(0, 0, 0, 1)">ingresses
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">clusterrole.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRole
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>-<span style="color: rgba(0, 0, 0, 1)"> admissionregistration.k8s.io
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> validatingwebhookconfigurations
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> update
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">clusterrolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: ClusterRoleBinding
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">role.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Role
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
rules:
</span>-<span style="color: rgba(0, 0, 0, 1)"> apiGroups:
</span>- <span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">
resources:
</span>-<span style="color: rgba(0, 0, 0, 1)"> secrets
verbs:
</span>-<span style="color: rgba(0, 0, 0, 1)"> get
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/<span style="color: rgba(0, 0, 0, 1)">rolebinding.yaml
apiVersion: rbac.authorization.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: RoleBinding
metadata:
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-upgrade,post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
subjects:
</span>-<span style="color: rgba(0, 0, 0, 1)"> kind: ServiceAccount
name: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
</span>---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/job-<span style="color: rgba(0, 0, 0, 1)">createSecret.yaml
apiVersion: batch</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Job
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 0, 1)">create
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: pre-<span style="color: rgba(0, 0, 255, 1)">install</span>,pre-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
template:
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 0, 1)">create
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
containers:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: create
image: registry.cn</span>-beijing.aliyuncs.com/kole_chang/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
imagePullPolicy: IfNotPresent
args:
</span>-<span style="color: rgba(0, 0, 0, 1)"> create
</span>- --host=ingress-nginx-controller-admission,ingress-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission.$(POD_NAMESPACE).svc
</span>- --namespace=<span style="color: rgba(0, 0, 0, 1)">$(POD_NAMESPACE)
</span>- --secret-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span><span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
restartPolicy: OnFailure
serviceAccountName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
securityContext:
runAsNonRoot: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">2000</span>
---<span style="color: rgba(0, 0, 0, 1)">
# Source: ingress</span>-nginx/templates/admission-webhooks/job-<span style="color: rgba(0, 0, 255, 1)">patch</span>/job-<span style="color: rgba(0, 0, 0, 1)">patchWebhook.yaml
apiVersion: batch</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Job
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
namespace: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
annotations:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook: post-<span style="color: rgba(0, 0, 255, 1)">install</span>,post-<span style="color: rgba(0, 0, 0, 1)">upgrade
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/hook-delete-policy: before-hook-creation,hook-<span style="color: rgba(0, 0, 0, 1)">succeeded
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
template:
metadata:
name: ingress</span>-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
labels:
helm.</span><span style="color: rgba(0, 0, 255, 1)">sh</span>/chart: ingress-nginx-<span style="color: rgba(128, 0, 128, 1)">4.0</span>.<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/name: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/instance: ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
app.kubernetes.io</span>/version: <span style="color: rgba(128, 0, 128, 1)">1.0</span>.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
app.kubernetes.io</span>/managed-<span style="color: rgba(0, 0, 0, 1)">by: Helm
app.kubernetes.io</span>/component: admission-<span style="color: rgba(0, 0, 0, 1)">webhook
spec:
containers:
</span>- name: <span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)">
image: registry.cn</span>-beijing.aliyuncs.com/kole_chang/kube-webhook-certgen:v1.<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
imagePullPolicy: IfNotPresent
args:
</span>- <span style="color: rgba(0, 0, 255, 1)">patch</span>
- --webhook-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>- --namespace=<span style="color: rgba(0, 0, 0, 1)">$(POD_NAMESPACE)
</span>- --<span style="color: rgba(0, 0, 255, 1)">patch</span>-mutating=<span style="color: rgba(0, 0, 255, 1)">false</span>
- --secret-name=ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
</span>- --<span style="color: rgba(0, 0, 255, 1)">patch</span>-failure-policy=<span style="color: rgba(0, 0, 0, 1)">Fail
</span><span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span>-<span style="color: rgba(0, 0, 0, 1)"> name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
restartPolicy: OnFailure
serviceAccountName: ingress</span>-nginx-<span style="color: rgba(0, 0, 0, 1)">admission
nodeSelector:
kubernetes.io</span>/<span style="color: rgba(0, 0, 0, 1)">os: linux
securityContext:
runAsNonRoot: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">
runAsUser: </span><span style="color: rgba(128, 0, 128, 1)">2000</span></pre>
</div>
<span class="cnblogs_code_collapse">View Code</span></div>
<p>开始执行</p>
<div class="cnblogs_code">
<pre><strong>$ kubectl apply -</strong><span style="color: rgba(0, 0, 0, 1)"><strong>f deploy.yaml</strong>
namespace</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
serviceaccount</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
configmap</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller created
clusterrole.rbac.authorization.k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
clusterrolebinding.rbac.authorization.k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
role.rbac.authorization.k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
rolebinding.rbac.authorization.k8s.io</span>/ingress-<span style="color: rgba(0, 0, 0, 1)">nginx created
service</span>/ingress-nginx-controller-<span style="color: rgba(0, 0, 0, 1)">admission created
service</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller created
deployment.apps</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">controller created
ingressclass.networking.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">nginx created
validatingwebhookconfiguration.admissionregistration.k8s.io</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
serviceaccount</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
clusterrole.rbac.authorization.k8s.io</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
clusterrolebinding.rbac.authorization.k8s.io</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
role.rbac.authorization.k8s.io</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
rolebinding.rbac.authorization.k8s.io</span>/ingress-nginx-<span style="color: rgba(0, 0, 0, 1)">admission created
job.batch</span>/ingress-nginx-admission-<span style="color: rgba(0, 0, 0, 1)">create created
job.batch</span>/ingress-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span><span style="color: rgba(0, 0, 0, 1)"> created</span></pre>
</div>
<p> 查看生成状态</p>
<div class="cnblogs_code">
<pre>$ kubectl get all -n ingress-<span style="color: rgba(0, 0, 0, 1)">nginx
NAME READY STATUS RESTARTS AGE
pod</span>/ingress-nginx-admission-create--<span style="color: rgba(128, 0, 128, 1)">1</span>-ncg9g <span style="color: rgba(128, 0, 128, 1)">0</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Completed <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 4h58m
pod</span>/ingress-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span>--<span style="color: rgba(128, 0, 128, 1)">1</span>-dmtp2 <span style="color: rgba(128, 0, 128, 1)">0</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Completed <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 4h58m
pod</span>/ingress-nginx-controller-7cv4l <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 4h58m
pod</span>/ingress-nginx-controller-dbz2b <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 4h58m
pod</span>/ingress-nginx-controller-ddl5c <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 4h58m
NAME TYPE CLUSTER</span>-IP EXTERNAL-<span style="color: rgba(0, 0, 0, 1)">IP PORT(S) AGE
service</span>/ingress-nginx-controller-admission ClusterIP <span style="color: rgba(128, 0, 128, 1)">10.109</span>.<span style="color: rgba(128, 0, 128, 1)">220.110</span> <none> <span style="color: rgba(128, 0, 128, 1)">443</span>/<span style="color: rgba(0, 0, 0, 1)">TCP 4h58m
NAME DESIRED CURRENT READY UP</span>-TO-<span style="color: rgba(0, 0, 0, 1)">DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps</span>/ingress-nginx-controller <span style="color: rgba(128, 0, 128, 1)">3</span> <span style="color: rgba(128, 0, 128, 1)">3</span> <span style="color: rgba(128, 0, 128, 1)">3</span> <span style="color: rgba(128, 0, 128, 1)">3</span> <span style="color: rgba(128, 0, 128, 1)">3</span> kubernetes.io/os=<span style="color: rgba(0, 0, 0, 1)">linux 4h58m
NAME COMPLETIONS DURATION AGE
job.batch</span>/ingress-nginx-admission-create <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)"> 6s 4h58m
job.batch</span>/ingress-nginx-admission-<span style="color: rgba(0, 0, 255, 1)">patch</span> <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> 6s 4h58m</pre>
</div>
<p>这个时候ingress-nginx就安装完了,在kubernets之外的机器上访问每个节点,nginx都可以访问了,先不用管404的错误</p>
<div class="cnblogs_code">
<pre><strong>$ curl http:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">kbsm</span></strong>
% Total % Received %<span style="color: rgba(0, 0, 0, 1)"> XferdAverage Speed Time Time TimeCurrent
DloadUpload Total Spent LeftSpeed
</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">7684</span> <span style="color: rgba(128, 0, 128, 1)">0</span> --:--:-- --:--:-- --:--:--<span style="color: rgba(128, 0, 128, 1)">8588</span><html>
<<span style="color: rgba(0, 0, 255, 1)">head</span>><title><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</title></<span style="color: rgba(0, 0, 255, 1)">head</span>>
<body>
<center><h1><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html><strong><span style="color: rgba(0, 0, 0, 1)">
$ curl http:</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">kbs1</span></strong>
% Total % Received %<span style="color: rgba(0, 0, 0, 1)"> XferdAverage Speed Time Time TimeCurrent
DloadUpload Total Spent LeftSpeed
</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">481</span> <span style="color: rgba(128, 0, 128, 1)">0</span> --:--:-- --:--:-- --:--:-- <span style="color: rgba(128, 0, 128, 1)">481</span><html>
<<span style="color: rgba(0, 0, 255, 1)">head</span>><title><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</title></<span style="color: rgba(0, 0, 255, 1)">head</span>>
<body>
<center><h1><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html><strong><span style="color: rgba(0, 0, 0, 1)">
$ curl http:</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">kbs2</span></strong>
% Total % Received %<span style="color: rgba(0, 0, 0, 1)"> XferdAverage Speed Time Time TimeCurrent
DloadUpload Total Spent LeftSpeed
</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">146</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">1505</span> <span style="color: rgba(128, 0, 128, 1)">0</span> --:--:-- --:--:-- --:--:--<span style="color: rgba(128, 0, 128, 1)">1536</span><html>
<<span style="color: rgba(0, 0, 255, 1)">head</span>><title><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</title></<span style="color: rgba(0, 0, 255, 1)">head</span>>
<body>
<center><h1><span style="color: rgba(128, 0, 128, 1)">404</span> Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html></pre>
</div>
<p> 下面生成一个自己写的ingress,关联到一个我自己写的叫gostarter-svc的服务上,参见本文系列的kubernets创建Service</p>
<div class="cnblogs_code">
<pre># ingress-<span style="color: rgba(0, 0, 0, 1)">gostarter.yaml
apiVersion: networking.k8s.io</span>/<span style="color: rgba(0, 0, 0, 1)">v1
kind: Ingress
metadata:
name: ingress</span>-<span style="color: rgba(0, 0, 0, 1)">gostarter
annotations:
# use the shared ingress</span>-<span style="color: rgba(0, 0, 0, 1)">nginx
kubernetes.io</span>/ingress.class: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">nginx</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">
spec:
rules:<br><span style="color: rgba(255, 0, 0, 1)"><strong># 要在kubernets的node之外的节点上,一般是你的笔记本配置,windows下是Hosts配置域名解析,192.168.0.105 gostarter,因为使用的是DamonSet所以IP使用任意一个node的ip都可以
</strong></span></span>-<span style="color: rgba(0, 0, 0, 1)"> host: <span style="color: rgba(255, 0, 0, 1)">gostarter.com</span>
http:
paths:
</span>- path: /<span style="color: rgba(0, 0, 0, 1)">
pathType: Prefix
backend:
service:
name: gostarter</span>-<span style="color: rgba(0, 0, 0, 1)">svc
port:
<span style="color: rgba(255, 0, 0, 1)"> # gostarter</span></span><span style="color: rgba(255, 0, 0, 1)">-</span><span style="color: rgba(0, 0, 0, 1)"><span style="color: rgba(255, 0, 0, 1)">svc的端口是8000</span>
number: </span><span style="color: rgba(255, 0, 0, 1)">8000 </span></pre>
</div>
<p> 根据上面红色字体配置host之后,在笔记本上访问</p>
<div class="cnblogs_code">
<pre><strong>$ curl http:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">gostarter.com/hostname</span></strong>
% Total % Received %<span style="color: rgba(0, 0, 0, 1)"> XferdAverage Speed Time Time TimeCurrent
DloadUpload Total Spent LeftSpeed
</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">30</span><span style="color: rgba(128, 0, 128, 1)">100</span> <span style="color: rgba(128, 0, 128, 1)">30</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">1111</span> <span style="color: rgba(128, 0, 128, 1)">0</span> --:--:-- --:--:-- --:--:--<span style="color: rgba(128, 0, 128, 1)">1153</span><strong><span style="color: rgba(255, 0, 0, 1)">
gostarter-dep-df898587f-wq2cz</span></strong></pre>
</div>
<p>完美,至此ingress-nginx安装完成</p>
<p>dockerhub也可以使用下面两个镜像地址</p>
<p>docker pull serenade11/ingress-nginx-controller:v1.0.0<br> docker pull serenade11/kube-webhook-certgen:v1.0</p>
<p> </p>
<p>参考资料</p>
<ol>
<li>ingress-nginx官方网站</li>
<li>k8s之ingress-nginx部署(v1.0.0)</li>
<li>nginx ingress最后的倔强: admission webhook</li>
<li>k8s ingress原理及ingress-nginx部署测试</li>
<li>K8S_1.22部署ingress (目前最新ingress-nginx-controller-v1.0.0)</li>
</ol>
</div>
<div id="MySignature" role="contentinfo">
<p>
</p><p><span>作者 :秋时 </span></p>
<p><span>本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。</span></p>
<p></p><br><br>
来源:https://www.cnblogs.com/Netsharp/p/15501138.html
頁:
[1]