首页 / K8S / k8s部署ingress-nginx
k8s部署ingress-nginx
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了k8s部署ingress-nginx,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2739字,纯文字阅读大概需要4分钟。
内容图文
![k8s部署ingress-nginx](/upload/InfoBanner/zyjiaocheng/1240/eb86a1f04541424abaae4f7016186fbb.jpg)
ingress-nginx的部署方式有多种,本文介绍nodeport方式和hostnetwork方式:
一、nodeport方式
1、下载mandatory.yaml文件:https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml
然后修改文件中的镜像:registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:0.25.1
2、编辑service-nodeport.yaml(nodeport方式需要额外使用这个文件)
![技术分享图片](/upload/getfiles/default/2022/11/1/20221101015217939.jpg)
![技术分享图片](/img/jian.gif)
apiVersion: v1 kind: Service metadata: name: ingress-nginx namespace: ingress-nginx labels: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx spec: type: NodePort ports: - name: http port: 80 targetPort: 80 protocol: TCP nodePort: 32080 #http - name: https port: 443 targetPort: 443 protocol: TCP nodePort: 32443 #https selector: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx
3、运行部署上面这两个文件:
$ kubectl apply -f mandatory.yaml
$ kubectl apply -f node-port.yaml
4、部署后端程序
![技术分享图片](/upload/getfiles/default/2022/11/1/20221101015217939.jpg)
![技术分享图片](/img/jian.gif)
apiVersion: v1 kind: Service metadata: name: myapp namespace: default spec: selector: app: myapp release: canary ports: - name: http port: 80 targetPort: 80 --- apiVersion: apps/v1 kind: Deployment metadata: name: myapp-deploy spec: replicas: 5 selector: matchLabels: app: myapp release: canary template: metadata: labels: app: myapp release: canary spec: containers: - name: myapp image: ikubernetes/myapp:v2 ports: - name: httpd containerPort: 80
5、配置后端程序的ingress:
$ vim ingress-myapp.yaml
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress-myapp namespace: default annotations: kubernetes.io/ingress.class: "nginx" spec: rules: - host: myapp.cabel.com http: paths: - path: backend: serviceName: myapp servicePort: 80
6、然后访问:myapp.cabel.com:NodePort(32080)
7、增加后端服务:
![技术分享图片](/upload/getfiles/default/2022/11/1/20221101015217939.jpg)
![技术分享图片](/img/jian.gif)
$ vim deploy-tomcat.yaml apiVersion: v1 kind: Service metadata: name: tomcat namespace: default spec: selector: app: tomcat release: canary ports: - name: http port: 8080 targetPort: 8080 - name: ajp port: 8009 targetPort: 8009 --- apiVersion: apps/v1 kind: Deployment metadata: name: tomcat-deploy spec: replicas: 3 selector: matchLabels: app: tomcat release: canary template: metadata: labels: app: tomcat release: canary spec: containers: - name: tomcat image: tomcat:7-alpine ports: - name: httpd containerPort: 8080 - name: ajp containerPort: 8009
![技术分享图片](/upload/getfiles/default/2022/11/1/20221101015217939.jpg)
![技术分享图片](/img/jian.gif)
$ vim ingress-tomcat.yaml apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress-tomcat namespace: default annotations: kubernets.io/ingress.class: "nginx" spec: rules: - host: tomcat.cabel.com http: paths: - path: backend: serviceName: tomcat servicePort: 8080
8、然后访问:tomcat.cabel.com:NodePort(32080)
二、deamonset方式,deamonset方式与上一种方式只有一处不同,只修改mandatory.yaml,而且,service-nodeport.yaml也不用配置,其他不用修改,访问的时候,直接域名访问,不用加nodeport。
原文:https://www.cnblogs.com/caibao666/p/11600224.html
内容总结
以上是互联网集市为您收集整理的k8s部署ingress-nginx全部内容,希望文章能够帮你解决k8s部署ingress-nginx所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。