Node.js 库伯内特在哪里';s kubelet是否创建服务环境变量?

Node.js 库伯内特在哪里';s kubelet是否创建服务环境变量?,node.js,docker,service-discovery,kubernetes,Node.js,Docker,Service Discovery,Kubernetes,我正在创建一个kubernetes集群,其中有几个服务。我知道基于我有两个选择 使用kubelet设置的环境变量 使用skydns 在向混合中添加另一个依赖项之前,我想先尝试使用环境变量。但是,我不确定每个服务的环境变量在哪里。在kubelet上执行env或sudo env时,我没有找到它们。它们是否在某个容器和/或吊舱内?如果是这样,我是否必须将其他pod链接到该pod以获取其服务的环境变量 我在容器中有几个NodeJS服务,因此我想知道与每个服务交谈是否需要这样才能获得ip: process

我正在创建一个kubernetes集群,其中有几个服务。我知道基于我有两个选择

  • 使用kubelet设置的环境变量

  • 使用skydns

  • 在向混合中添加另一个依赖项之前,我想先尝试使用环境变量。但是,我不确定每个服务的环境变量在哪里。在kubelet上执行
    env
    sudo env
    时,我没有找到它们。它们是否在某个容器和/或吊舱内?如果是这样,我是否必须将其他pod链接到该pod以获取其服务的环境变量

    我在容器中有几个NodeJS服务,因此我想知道与每个服务交谈是否需要这样才能获得ip:
    process.env('SERVICE\X\u PUBLIC\u IPV4')
    一旦我整理好了环境变量的事情


    不太重要,但相关的是,这些如何在多个节点上工作?

    给定服务的环境变量放在创建服务后启动的每个容器中

    例如,如果您创建一个pod
    foo
    ,然后创建一个服务
    bar
    ,则pod的容器中不会有任何用于
    bar
    的环境变量

    如果您改为创建服务
    ,然后创建一个pod
    foo
    ,则pod的容器应该具有如下环境变量:
    
    巴鲁港=tcp://10.167.240.1:80
    吧台服务主机=10.167.240.1
    


    如前所述,您可以通过在其中一个容器上附加一个终端来测试这一点。

    您是否尝试过在其中一个容器中执行?这就是我希望设置变量的地方,因为应用程序将在那里使用这些变量。(我个人建议使用DNS选项,但那是另一回事。)