2016-04-14 7 views
0

Google CloudでKubernetes 1.2.1を使用する。私はサービスを定義して実行しています。サービスのクラスタIPアドレスを取得するポッドを開始したい。このIPを、コンテナの起動時に実行されるスクリプトに渡すことができます。ポッド定義内でKubernetesサービスIPを取得する方法

私が読んだところでは、MYSERVICE_SERVICE_HOSTという形式を使用できます。ここで、MYSERVICEはサービスの名前です。ここポッド定義は次のとおりです。

apiVersion: v1 
kind: Pod 
metadata: 
    labels: 
    name: mypod 
    name: mypod 
spec: 
    containers: 
    - name: mypod 
     image: myimage 
     env: 
     - name: VARIABLE_NAME 
      value: MYSERVICE_SERVICE_HOST 

画像のためのスクリプトは、私がkubectl logs mypodを実行したときに、私は...

Variable: MYSERVICE_SERVICE_HOST 

は私が何をやっている参照

echo "Variable: $VARIABLE_NAME" 

...これを実行します違う?

答えて

2

スクリプトが正しく動作しています。あなたのポッドyamlでは、環境変数VARIABLE_NAMEMYSERVICE_SERVICE_HOSTに設定していて、スクリプトは指定した値を出力しています。スクリプトをecho "MYSERVICE_SERVICE_HOST: $MYSERVICE_SERVICE_HOST"に変更すると、探しているIPが表示されます。