1. 程式人生 > >阿里雲容器服務通過LoadBalancer暴露IPv6服務

阿里雲容器服務通過LoadBalancer暴露IPv6服務

背景:

IPv4地址已接近枯竭,被譽為下一代網際網路技術的IPv6成為新的“全球網際網路門牌號”,它可以讓地球上的每一粒沙子都擁有地址。當下,各國都在加速推進下一代網際網路的部署,工信部也網際網路服務商提出了IPv6改造的要求,國內的各大網際網路廠商都在進行著IPv6的改造,IPv6的改造已迫在眉睫。

那麼部署在阿里雲容器服務上的應用如何暴露提供IPv6的服務呢?我們可以使用IPv6型別的LoadBalancer來暴露我們的服務。

使用方式:

1.建立容器服務的k8s叢集,注意建立叢集的 kube-proxy 代理模式需要是IPVS

 

2.建立LoadBalancer型別的Service,建立的模板的annotation中指定LoadBalancer型別為IPv6,例如下面的模板,宣告使用ipv6,後端關聯到一組nginx pod:

 
apiVersion: v1 kind: Service metadata: annotations: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version: ipv6 name: nginx spec: ports: - port: 80 protocol: TCP targetPort: 80 selector: run: nginx 

3.建立好後通過kubectl get svc 可以看到建立好的LoadBalancer型別的Service,大概20s後再通過kubectl get svc可以看到LoadBalancer的外網IP初始化出IPv6的IP地址:

 
/tmp kubectl get svc nginx NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE nginx LoadBalancer 172.17.2.134 2408:4001:f10::182 80:30612/TCP 18s 

4.在IPv6的環境中測試訪問外部的地址,就可以訪問到我們暴露的服務,例如我們上面建立的這個LoadBalancer,訪問 "http://[2408:4001:f10::182]"地址,就能返回後端的nginx的服務:

 

原文連結

本文為雲棲社群原創內容,未經