hello-k8s主要用来测试集群入口功能 即对外是否正常提供服务 所以提前部署好lb再来测试哦
vim hello-k8s.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: hellok8s-dep namespace: default spec: replicas: 1 selector: matchLabels: app: hello-kubernetes template: metadata: labels: app: hello-kubernetes spec: containers: - name: hello-kubernetes image: paulbouwer/hello-kubernetes:1.4 #image: centos:7 #args: #- sleep #- "1000000" ports: - containerPort: 8080 --- apiVersion: v1 kind: Service metadata: name: hellok8s-svc namespace: default spec: ports: - port: 80 targetPort: 8080 selector: app: hello-kubernetes --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: hellok8s-ingress annotations: ##用来绑定特定的ingress-nginx #kubernetes.io/ingress.class: ack-nginx-vpc kubernetes.io/ingress.class: nginx ##配置了ssl证书即打开此配置 #nginx.ingress.kubernetes.io/ssl-redirect: 'true' nginx.ingress.kubernetes.io/rewrite-target: / nginx.ingress.kubernetes.io/enable-cors: 'true' nginx.ingress.kubernetes.io/cors-allow-headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Access-Control-Allow-Origin nginx.ingress.kubernetes.io/cors-allow-methods: PUT, GET, POST, OPTIONS, DELETE nginx.ingress.kubernetes.io/cors-allow-origin: '*' nginx.ingress.kubernetes.io/cors-allow-credentials: 'true' spec: ##按需配置ssl证书 #tls: #- secretName: da-e.top-tls # hosts: # - "*.test.com" rules: ##按需配置域名 #- host: www.test.com - http: paths: - path: /hellok8s pathType: Prefix backend: service: name: hellok8s-svc port: number: 80 - path: / pathType: Prefix backend: service: name: hellok8s-svc port: number: 80
kubectl apply -f hello-k8s.yaml
浏览器访问nlb地址即可
例:
[root@api-server ~]# kubectl get svc -A |grep lb kube-system nginx-ingress-lb LoadBalancer 192.168.208.233 47.108.30.7 80:31724/TCP,443:31958/TCP 40m
即
http://47.108.30.7/ or http://47.108.30.7/hellok8s