对外提供服务
以下为您演示如何通过LoadBalancer方式公网访问您的服务。需通过登录集群后台操作,用kubectl命令来操作允许公网访问。
操作步骤
💡 对外提供服务需要您登录集群,通过后台操作。集群连接请参考:连接集群
编辑需要提供公网访问的服务。下述演示通过LoadBalancer,为
demo1
分配公网ip访问服务 。demo@demoMacBook-Pro % kubectl get containerservers.apps.ebcloud.com NAME STATUS AGE ENABLE-DOCKER demo1 Running 20h false
编辑服务
demo1
的yaml文件,命令如下。文件内容很多,找到network
字段,以下是yaml文件的部分截取demo@demoMacBook-Pro % kubectl edit containerservers.apps.ebcloud.com demo1 # 原yaml部分截取,需要修改network部分 jupyterAccess: enable: true port: 8888 token: neFroeabn9nVHFMD1lSoGINYdKitnmFCfTWHMHChxUYyAFOS network: {} #这块内容是需要修改的 power: "ON" resources: cpu: count: "10" #---------------------network字段改为如下内容---------------# # 原文件内容省略无需修改 network: public: true tcp: ports: - 88 # 这个端口是服务的target port端口。可添加多个 - 77 # 多个端口的演示,如果不需要则不用加这一行。 # 原文件内容省略
保存上述文件后,查看可用的外网IP
demo@demoMacBook-Pro % kubectl get containerservers.apps.ebcloud.com -o wide NAME STATUS AGE ENABLE-DOCKER SERVER-POD SSH-ACCESS EXTERNAL-IP SERVER-CLUSTER-IP DIND-CLUSTER-IP demo1 Running 13m false cs-f3076-6cee4-server ssh -p 35321 root@ssh-cn-huabei1.ebcloud.com 117.78.61.74 10.233.73.169
访问
# 浏览器访问 117.78.61.74:88
取消对外提供服务
操作步骤:
- 编辑服务
demo1
的yaml文件,在之前修改的network字段中,修改public得true改为false
demo@demoMacBook-Pro % kubectl edit containerservers.apps.ebcloud.com demo1
# network字段部分改为如下部分
原文件内容省略无需修改
network:
public: false #修改为false
tcp:
ports:
- 88
- 77
- 检查,EXTERNAL-IP字段,IP消失则成功。
demo@demoMacBook-Pro % kubectl get containerservers.apps.ebcloud.com -o wide
NAME STATUS AGE ENABLE-DOCKER SERVER-POD SSH-ACCESS EXTERNAL-IP SERVER-CLUSTER-IP DIND-CLUSTER-IP
demo1 Running 13m false cs-f3076-6cee4-server ssh -p 35321 root@ssh-cn-huabei1.ebcloud.com 10.233.73.169