ks8集群外访问dubbo provider

需求

开发在本地也可以连接集群中的dubbo provider

分析

provider以nodeport方式部署,把nodeip 和 nodeport注册到zk,consumer从zk拿到的地址就是可以访问的k8s服务地址,搞定。
关键是获取nodeport,因为我们的yaml都是先创建service,所以pod启动的时候能获取到

实施步骤

1.服务以nodeport方式部署, 并暴露20880端口

- name: '20880'
    port: 20880

2.deployment的yaml中设置环境变量DUBBO_IP_TO_REGISTRY为节点ip

- name: DUBBO_IP_TO_REGISTRY
            valueFrom:
              fieldRef:
                fieldPath: status.hostIP

3.修改镜像的entrypoint脚本

... 通过k8s api获取服务的nodeport
echo "export DUBBO_PORT_TO_REGISTRY=$dubboPort" >>  ~/.bashrc

4.查看zk的信息
确认provider是nodeip和nodeport,done

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容