下载Ingress-Nginx-0.30.0

https://github.com/kubernetes/ingress-nginx

docker pull registry.cn-beijing.aliyuncs.com/google_registry/nginx-ingress-controller:0.30.0docker tag 89ccad40ce8e quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0docker rmi  registry.cn-beijing.aliyuncs.com/google_registry/nginx-ingress-controller:0.30.0

创建文件夹下载nginx-ingress包

mkdir ingress-nginx-0.30cd ingress-nginx-0.30wget https://github.com/kubernetes/ingress-nginx/archive/nginx-0.30.0.tar.gztar xf nginx-0.30.0.tar.gzcp -a ingress-nginx-nginx-0.30.0/deploy/static/mandatory.yaml ./
vim mandatory.yaml 修改ingress的yaml:#191行apiVersion: apps/v1kind: DaemonSet   # 从Deployment改为DaemonSetmetadata:  name: nginx-ingress-controller  namespace: ingress-nginx  labels:    app.kubernetes.io/name: ingress-nginx    app.kubernetes.io/part-of: ingress-nginxspec:  #replicas: 1   # 注释#218行      nodeSelector:        kubernetes.io/hostname: k8s-master   # 修改处      # 如下几行为新加行  作用【允许在master节点运行】      tolerations:      - key: node-role.kubernetes.io/master        effect: NoSchedule#251行          ports:            - name: http              containerPort: 80              hostPort: 80    # 添加处【可在宿主机通过该端口访问Pod】              protocol: TCP            - name: https              containerPort: 443              hostPort: 443   # 添加处【可在宿主机通过该端口访问Pod】              protocol: TCP
kubectl apply -f mandatory.yamlkubectl get pod -n ingress-nginx -o wide

创建第一个服务

vim deply_service1.yamlapiVersion: apps/v1kind: Deploymentmetadata:  name: myapp-deploy1  namespace: defaultspec:  replicas: 3  selector:    matchLabels:      app: myapp      release: v1  template:    metadata:      labels:        app: myapp        release: v1        env: test    spec:      containers:      - name: myapp        image: registry.cn-beijing.aliyuncs.com/google_registry/myapp:v1        imagePullPolicy: IfNotPresent        ports:        - name: http          containerPort: 80---apiVersion: v1kind: Servicemetadata:  name: myapp-clusterip1  namespace: defaultspec:  type: ClusterIP  # 默认类型  selector:    app: myapp    release: v1  ports:  - name: http    port: 80    targetPort: 80
kubectl apply -f deply_service1.yaml 
kubectl get deploy -o widekubectl get rs -o widekubectl get pod -o wide --show-labelskubectl get svc -o wide curl 10.244.2.***/hostname.html

创建第二个服务

vim deply_service2.yaml apiVersion: apps/v1kind: Deploymentmetadata:  name: myapp-deploy2  namespace: defaultspec:  replicas: 3  selector:    matchLabels:      app: myapp      release: v2  template:    metadata:      labels:        app: myapp        release: v2        env: test    spec:      containers:      - name: myapp        image: registry.cn-beijing.aliyuncs.com/google_registry/myapp:v2        imagePullPolicy: IfNotPresent        ports:        - name: http          containerPort: 80---apiVersion: v1kind: Servicemetadata:  name: myapp-clusterip2  namespace: defaultspec:  type: ClusterIP  # 默认类型  selector:    app: myapp    release: v2  ports:  - name: http    port: 80    targetPort: 80  
kubectl apply -f deply_service2.yaml kubectl get pod -o wide --show-labels -l "release=v2"kubectl get svc -o wide

创建ingress外部访问yaml

vim ingress-http.yamlapiVersion: networking.k8s.io/v1beta1kind: Ingressmetadata:  name: nginx-http  namespace: defaultspec:  rules:    - host: test.demo1.com      http:        paths:        - path: /          backend:            serviceName: myapp-clusterip1            servicePort: 80    - host: test.demo2.com      http:        paths:        - path: /          backend:            serviceName: myapp-clusterip2            servicePort: 80 
kubectl apply -f ingress-http.yaml kubectl get ingress -o wide

修改windos

C:\WINDOWS\System32\drivers\etc\hosts           (k8s-master的ip)  test.demo1.com  test.demo2.com

浏览器访问test.demo1.com
浏览器访问test.demo2.com

©著作权归作者所有:来自51CTO博客作者李佳良的原创作品,如需转载,请注明出处,否则将追究法律责任

你的鼓励让我更有动力

赞赏

0人进行了赞赏支持

更多相关文章

  1. 服务主数据的创建和特性的维护
  2. BADI Copy PR item text to PO when ME21N
  3. BAPI_GOODSMVT_CREATE物料凭证创建与部分冲销
  4. PO text copy rules :copy PR item text to PO
  5. 创建采购申请(BAPI_REQUISITION_CREATE / BAPI_PR_CREATE)
  6. SAP盘点:创建盘点凭证BAPI_MATPHYSINV_CREATE_MULT
  7. SE75 采购申请创建抬头文本
  8. NUMA架构下的内存访问延迟区别!
  9. 实际测试内存在顺序IO和随机IO时的访问延时差异

随机推荐

  1. Android——按钮类控件
  2. 【Android Demo】让Android支持自定义的t
  3. android 程序启动界面的短暂黑屏
  4. cocos creator android studio多渠道打包
  5. Android开发之获取常用android设备参数信
  6. Android 开发中的一些小技巧
  7. 如何让EditText不自动获取焦点
  8. Android开机自动启动程序设置
  9. error: Error retrieving parent for ite
  10. android中UI相关样式控制