首页 > 编程知识 正文

ingress k8s原理,ingress timeout streamID=8什么意思

时间:2023-05-05 09:34:57 阅读:209985 作者:2913

ingress 简介

ingress-nginx 官方网站 ingress-nginx-github

部署ingress控制器

从官网上获取ingress-nginx 的安装yaml 清单

wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.2.0/deploy/static/provider/cloud/deploy.yaml

查看清单中需要的镜像提前通过特殊手段获取相应的版本的镜像文件然后加载的集群中各个节点中利用阿里云的容器构建服务

cat deploy.yaml |grep image

执行yaml 清单 kubectl apply -f deploy.yaml 查看ingress 状况 kubectl get all -n ingress-nginx 可以看到有两个job 类型的pod 处于completed 状态缘故还没有搞明白后续待跟进 ingress 控制器有多种方案这只是一个简单让ingress实现的部署。

ingress 的使用

deployment——service——ingress

第一步: deployment-----service yaml 资源清单

(两个deployment 搭配两个service )

cat >> dev_deployment_service.yaml << EOFapiVersion: apps/v1kind: Deploymentmetadata: name: nginx-dev namespace: devspec: replicas: 2 selector: matchLabels: app: nginx-dev template: metadata: labels: app: nginx-dev spec: containers: - name: nginx-dev image: nginx:1.20.2 ports: - containerPort: 80---apiVersion: apps/v1kind: Deploymentmetadata: labels: app: nginx-old name: nginx-old namespace: devspec: replicas: 2 selector: matchLabels: app: nginx-old template: metadata: labels: app: nginx-old spec: containers: - name: nginx-old image: nginx:1.18.0---apiVersion: v1kind: Servicemetadata: labels: app: nginx-dev name: nginx-dev namespace: devspec: selector: app: nginx-dev ports: - port: 8000 protocol: TCP targetPort: 80---apiVersion: v1kind: Servicemetadata: labels: app: nginx-old name: nginx-old namespace: devspec: selector: app: nginx-old ports: - port: 8000 protocol: TCP targetPort: 80EOF 第二步 简单的基于域名访问的ingress 资源清单 cat >> ingress.yaml << EOFapiVersion: networking.k8s.io/v1kind: Ingress metadata: name: ingress-nginx-dev namespace: devspec: ingressClassName: nginx rules: - host: dev.etiantian.org http: paths: - pathType: Prefix path: / backend: service: name: nginx-dev port: number: 8000 - host: old.etiantian.org http: paths: - pathType: Prefix path: / backend: service: name: nginx-old port: number: 8000EOF 第三步执行资源清单

kubectl apply -f dev_deployment_service.yaml kubectl apply -f ingress.yaml kubectl get all -n dev -o wide kubec get ingress -n dev

第四步验证域名访问是否正常

win10 C:WindowsSystem32driversetc 目录下修改hosts文件 192.168.6.112 dev.etiantian.org 192.168.6.112 old.etiantian.org 自带负载均衡

参考来源 ingress多个模式 ingress-nginx部署 相当不错的博客 同上

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。