Azure Mooncake 搭建 AKS-Engine (三) - 出口流量走静态IP
默认情况下出口流量走随机mask 地址,是动态分配的。如果希望出口流量通过固定的IP地址,需要做以下设置
Step1: 参考 Azure Mooncake 搭建 AKS-Engine (一) 的Step3.1(Optional)
如果需要通过固定IP出入站,需要设置AKS-Engine 的load balance 为Standard Load Balance
Step2:新建Standard Load Balance
Step3 : 添加backend pool
click Backend Pool -> click add
Name: backend , Virtual Network : K8S-vnet , virtual machine: k8s nodes , ip address: ipconfig1
Step4 : 查看load balance frondend IP
Click Frondend Configuration IP
名字为:LoadBalancerFrontEnd ,IP 为40.73.107.174
Step5 :设置对外访问的 rule
az network lb outbound-rule create \ --resource-group yute-dji \ --lb-name testloadbalance \ --name outboundrule \ --frontend-ip-configs LoadBalancerFrontEnd \ --protocol All \ --idle-timeout 15 \ --outbound-ports 10000 \ --address-pool backend
Step6 : 验证Pod 是否通过设置的IP进行访问
azureuser@k8s-master-19596946-0:~$ kubectl get pod NAME READY STATUS RESTARTS AGE nginx-server-67ff766b9d-rbl7d 1/1 Running 0 6d azureuser@k8s-master-19596946-0:~$ kubectl exec -it nginx-server-67ff766b9d-rbl7d -- /bin/sh / # apk add curl fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz OK: 31 MiB in 37 packages / # curl ifconfig.me 40.73.107.174
Complete ! 出口IP 即为设置的静态IP