您的位置:首页 > 其它

k8s-15-ingress

2018-10-14 12:13 477 查看

1.ingress部署 master节点部署即可

   kubectl create  -f  namespace.yaml
   kubectl create  -f  default-backend.yaml
   kubectl create  -f  tcp-services-configmap.yaml
   kubectl create  -f udp-services-configmap.yaml
   kubectl create  -f  rbac.yaml
   kubectl create  -f   deployment.yaml
   
   deployment.yaml 这个yaml里面的份数和要node节点数量保持一致,不然域名解析到没有的node无法访问
     replicas: 2  我这是两个node 所以为2  所有node节点都要有一个
链接:https://pan.baidu.com/s/1O6RbJ4Ci-y9IyuzSfSjcOw 
提取码:uc8t

2. 创建 deployment和service


kubectl run --image=nginx nginx 
 kubectl expose deployment nginx --port=80 
kubectl run --image=httpd httpd 
 kubectl expose deployment httpd --port=80
进入容器内部吧默认首页修改下  http的pod的index.html修改为  index httpd index httpd
进入容器内部吧默认首页修改下  nginx的pod的index.html修改为  index nginx index nginx

3.创建ingress    kubectl create -f  ingress.yaml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: http-test
spec:
  rules:
  - host: nginx.test.com
    http:
      paths:
      - backend:
          serviceName: nginx
          servicePort: 80
  - host: httpd.test.com
    http:
      paths:
      - backend:
          serviceName: httpd
          servicePort: 80

4.查看ingress controller信息,进入nginx  controller 了,里面去 /etc/nginx/    nginx.conf里面就有域名信息了 域名和pod的对应信息

[root@k8s-master ingress]# kubectl   get  pod -o wide   -n  ingress-nginx
NAME                                        READY     STATUS    RESTARTS   AGE       IP              NODE
default-http-backend-7ddd8d57f4-ll9fk       1/1       Running   0          1h        172.17.52.6     192.168.56.12
nginx-ingress-controller-7494c4c66d-4hkp8   1/1       Running   0          51m       192.168.56.11   192.168.56.11
nginx-ingress-controller-7494c4c66d-lcqt9   1/1       Running   0          51m       192.168.56.12   192.168.56.12
[root@k8s-master ingress]# kubectl exec  -it  nginx-ingress-controller-7494c4c66d-4hkp8  -n   ingress-nginx   bash 
root@k8s-node1:/# cd /etc/nginx/
root@k8s-node1:/etc/nginx#

5.浏览器测试

本机PC配置 hosts解析  host解析换成 192.168.56.12(和192.168.56.11 一样都是node节点)依然是可以的

192.168.56.11  httpd.test.com  nginx.test.com

6.https:

上传域名sl.liuhx.site的证书

 kubectl create secret tls ingress-secret --key 214971717200134.key --cert 214971717200134.pem
[root@k8s-master tls]# kubectl  get  secret 
NAME                  TYPE                                  DATA      AGE
default-token-jjkz6   kubernetes.io/service-account-token   3         7d
ingress-secret        kubernetes.io/tls                     2         5m
[root@k8s-master tls]#

kubectl create -f  nginx.yaml  创建ingress

[root@k8s-master tls]# cat  nginx.yaml 
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: https-test
spec:
  tls:
  - hosts:
    - sl.liuhx.site
    secretName: ingress-secret
  rules:
  - host: sl.liuhx.site
    http:
      paths:
      - backend:
          serviceName: nginx
          servicePort: 80
[root@k8s-master tls]#

浏览器配置域名解析 192.168.56.11  sl.liuhx.site

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  k8s 15 ingres