使用容器化方式, 建立Ansible 與三大雲端平台工具 azure-cli , awscli 與 gcloud with openSUSE Leap 小記
OS: openSUSE Leap 15
上次整理了 ansible 與 azure-cli with openSUSE Leap 15 in container.
因為後面又有開始實驗 awscli 以及 gcloud (Google Cloud SDK) 工具
就想要把這三個雲端平台的工具整進容器內.
接下來整理三個雲端平台工具設定檔相關位置與資訊
Microsoft Azure:
- 工具為 azure-cli
- 設定檔擺放位置 ~/.azure
- 可以用非互動方式進行安裝
Amazon AWS:
- 工具為 awscli
- 設定檔擺放位置 ~/.aws
- 可以用非互動方式進行安裝
Google Cloud Platform
- 工具為 Google Cloud SDK ( gcloud )
- 設定檔擺放位置 ~/.config/gcloud
- 要使用非互動方式進行安裝
- 使用版本化封存檔的 Google SDK 來進行安裝 https://cloud.google.com/sdk/docs/downloads-versioned-archives
- 要調整容器內的環境變數 CLOUDSDK_CORE_DISABLE_PROMPTS 1 來避免互動
- 將 /google-cloud-sdk/path.bash.inc 與 /google-cloud-sdk/completion.bash.inc 放入 ~/.bashrc
已經製作好 container image 在 docker hub 上
- 已經安裝 ansible, azure-cli, awscli, gcloud
- /root 目錄下已經建立 ~/.azure , ~/.aws , ~/.config/gcloud , ansible.cfg , hosts 以及 playbook目錄.
使用方式 ( 須先具備容器環境, 例如 docker 或是 podman, 以下範例使用 docker )
如果之前完全沒有使用過三大平台工具, 只是想要快速有 ansible 與相關工具( azure-cli, awscli, gcloud )
> docker run -it sakana/ansible_opensuse15 /bin/bash
- 進到容器之後就可以開始使用, 接下來就是進行各平台的登入驗證, 將取得相關驗證並開始作業
如果已經有在平台進行驗證, 可以在 docker run 的時候配合 -v 的選項, 將本機的設定檔掛載
> docker run -v ~/.aws:/root/.aws -v ~/.azure:/root/.azure -v ~/.config/gcloud:/root/.config/gcloud -it sakana/ansible_opensuse15:2019050402 /bin/bash
- 各個設定檔請參考上面的資訊
- 我個人是還有 -v 掛載 playbook 目錄 :)
這樣以後使用各個平台的工具就方便多了 :)
~ enjoy it
Reference:
沒有留言:
張貼留言