注意:
--watch-namespace将范围限制为特定命名空间。ingress-controller将合并定义。kubectl create clusterrolebinding cluster-admin-binding \
--clusterrole cluster-admin \
--user $(gcloud config get-value account)所有部署都需要强制执行以下命令。
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml不同的云平台部署过程不同,可以参考这里。
Ingress-controller访问端口。kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/baremetal/service-nodeport.yaml检查ingress-controller是否已启动,请运行以下命令:
kubectl get pods --all-namespaces -l app.kubernetes.io/name=ingress-nginx --watch要检查处于运行状态的ingress-controller是哪个版本的,进入这个pod然后执行nginx-ingress-controller version命令。
POD_NAMESPACE=ingress-nginx
POD_NAME=$(kubectl get pods -n $POD_NAMESPACE -l app.kubernetes.io/name=ingress-nginx -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it $POD_NAME -n $POD_NAMESPACE -- /nginx-ingress-controller --version从charts官方的仓库中使用这个chart,来安装ingress-controller以my-nginx作为实例名字。
helm install stable/nginx-ingress --name my-nginx
# 如果kubernetes集群开启了RBAC,执行如下命令
helm install stable/nginx-ingress --name my-nginx --set rbac.create=true
# 检查安装的版本
POD_NAME=$(kubectl get pods -l app.kubernetes.io/name=ingress-nginx -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it $POD_NAME -- /nginx-ingress-controller --version