Kevin_306

38 k8s-19.1.1Ingress安装

1.1  Ingress安装

首先安装helm管理工具:https://helm.sh/docs/intro/install/
使用helm安装ingress:https://kubernetes.github.io/ingress-nginx/deploy/#using-helm
1.	添加ingress的helm仓库
01.# helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
02.# helm search repo ingress-nginx
#要使用APP VERSION大于0.4.2的版本
2.	下载ingress的helm包至本地
# helm pull ingress-nginx/ingress-nginx --version 3.6.0
3.	更改对应的配置
tar xvf ingress-nginx-3.6.0.tgz
cd ingress-nginx
vim values.yaml
4.	需要修改的位置
a)	Controller和admissionWebhook的镜像地址,需要将公网镜像同步至公司内网镜像仓库(和文档不一致的版本,需要自行同步gcr镜像的,可以百度查一下使用阿里云同步gcr的镜像,也可以参考这个链接https://blog.csdn.net/weixin_39961559/article/details/80739352,
或者参考这个链接: https://blog.csdn.net/sinat_35543900/article/details/103290782)
修改repository为地址registry.cn-beijing.aliyuncs.com/dotbalo/controller,并注释掉哈希值;
    ////Controller和admissionWebhook的镜像备选的地址
image:
    registry: registry.aliyuncs.com  #修改镜像仓库地址
    image: google_containers/nginx-ingress-controller #修改镜像仓库和镜像名 ////
    
b)	镜像的hash值注释;
c)	hostNetwork设置为true; 
d)	dnsPolicy设置为 ClusterFirstWithHostNet;
e)	nodeSelector添加ingress: "true"部署至指定节点; 
f)	默认的类型是Deployment,更改为kind: DaemonSet; 
g)	type: 默认是LoadBalancer(云环境使用这个) ,修改为ClusterIP; 
h)	建议根据生产实际环境修改requests; 
i)	建议根据生产实际环境修改admissionWebhooks;
要使用APP VERSION大于0.4.2的版本,大于这个版本,这个enabled不需要修改 
j)	image修改镜像地址为registry.cn-beijing.aliyuncs.com/dotbalo/kube-webhook-certgen
    //此项的备用地址参考a项目的备用地址//

5.	部署ingress
给需要部署ingress的节点上打标签
  01.//创建命名空间叫ingress-nginx
# kubectl create ns ingress-nginx
  02.//获取所有namespace;
# kubectl get ns
  //查看到ingress-nginx创建完成;//
  03.//取所有工作节点
# kubectl get node
  04.//比如我们给部署在master03上ingress的节点上打标签
# kubectl label node k8s-master03 ingress=true
node/k8s-master03 labeled
  05.//注意末尾的 . (点)
# helm install ingress-nginx -n ingress-nginx .
  06.//镜像拉取快慢取决于镜像地址,国内的阿里云比较快(多次刷新看到结果Ready 1/1,STATUS:Running为止)
[root@k8s-master01 ingress-nginx]# kubectl get pod -n ingress-nginx 

6.	将ingress controller部署至Node节点(ingress controller不能部署在master节点,需要安装视频中的步骤将ingress controller部署至Node节点,生产环境最少三个ingress controller,并且最好是独立的节点)
kubectl label node k8s-node01 ingress=true
kubectl label node k8s-master03 ingress-

  

posted on 2022-05-18 18:03  熊猫小虾  阅读(265)  评论(0编辑  收藏  举报

导航