プロキシ環境下でのTungsten Fabricインストール

プロキシ環境で、Tungsten Fabric (以下、TF) をインストール出来るか、について確認した際のまとめとなる。
※ 確認時には、k8s との組み合わせで試したので、openstack インストールの場合には、また別の設定が必要になるかもしれない。
※ ベースの手順としては、以下のリンクの k8s の部分を使用している。
http://aaabbb-200904.hatenablog.jp/entry/2018/04/28/215922

TF のインストーラーは docker コンテナのダウンロード以外に、パッケージインストール等を実施している。
※ こちらで試した際には、yum, pip で実施されていた

基本的には、上記のツールがproxy を使用するように設定していけばよい (export http_proxy=x.x.x.x:3128 など) のだが、
これ以外に、kubeadm init, kubeadm join も上記環境変数の影響を受けるようなので、no_proxy 等の設定も必要となった。

以下に、必要となった設定をまとめていく。
※ proxy の ip, port は 172.31.12.136, 3128 として記載

(configure_instances.yml 前に必要な設定)
1. /etc/yum.conf の最後尾に以下を追記(全ノード)
proxy=http://172.31.12.136:3128

2. /root/.bashrc の最後尾に以下を追記(全ノード)
export http_proxy=http://172.31.12.136:3128
export https_proxy=http://172.31.12.136:3128
export no_proxy=localhost,127.0.0.1,172.31.1.193,172.31.15.21
※ 172.31.1.193,172.31.15.21 は、それぞれ masterノード, slaveノードのip

3. config/instance.yaml内で、contrail_configuration 内に、以下の2行を追記(playbook実行ノード)
 contrail_configuration:
  HTTPS_PROXY: 172.31.12.136:3128
  HTTP_PROXY: 172.31.12.136:3128

x. git でインストーラーを取得する場合、以下も実施(playbook実行ノード)
$ git config --global http.proxy http://172.31.12.136:3128
$ git config --global https.proxy http://172.31.12.136:3128

上記設定により、configure_instance.yml のplaybook が通るようになるはずである。

(install_contrail.yml前に必要な設定)
1. config/instance.yaml内で、以下の2行を削除(playbook実行ノード)
 contrail_configuration:
  HTTPS_PROXY: 172.31.12.136:3128
  HTTP_PROXY: 172.31.12.136:3128
※ こちらが残ったままだと、TF内の各 api 通信がproxy経由になる事象が発生し、一部のプロセスが上がらなくなった

2. docker サービスにプロキシを設定(全ノード)
# cp -i /usr/lib/systemd/system/docker.service /etc/systemd/system/
# vi /etc/systemd/system/docker.service
(ExecStart の行の前に以下を追記)
Environment="HTTP_PROXY=http://172.31.12.136:3128"
# systemctl daemon-reload
# systemctl restart docker

上記設定後、install_contrail.yml の playbook を流すことで、インストールが完了することを確認できた。
f:id:aaabbb_200904:20180609194804p:plain