version | |
---|---|
OS | macOS Mojave 10.14.6 Ubuntu 16.04 |
pyenv | 1.2.16 |
pipenv | 2018.11.26 |
kubectl | 1.17.3 |
helm | 3.1.1 |
openssl | 2.6.5 |
azure cli | 2.1.0 |
pyenvとpipenvのインストール
$ brew install pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
$ brew install pipenv
$ sudo apt install -y build-essential libffi-dev libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev git python3-pip
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
$ pip3 install pipenv
kubectlのインストール
$ curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.17.3/bin/darwin/amd64/kubectl"
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
$ curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.17.3/bin/linux/amd64/kubectl"
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
helmのインストール
$ curl -LO "https://get.helm.sh/helm-v3.1.1-darwin-amd64.tar.gz"
$ tar xvfz helm-v3.1.1-darwin-amd64.tar.gz
$ sudo mv darwin-amd64/helm /usr/local/bin/helm
$ curl -LO "https://get.helm.sh/helm-v3.1.1-linux-amd64.tar.gz"
$ tar xvfz helm-v3.1.1-linux-amd64.tar.gz
$ sudo mv linux-amd64/helm /usr/local/bin/helm
Azure CLIのインストール
$ brew install azure-cli
$ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
RoboticBase/coreをclone
$ git clone https://github.com/RoboticBase/core.git
$ cd core
ansibleと関連するPythonライブラリのインストール
$ cd ansible
$ pipenv install
- 次のYAMLファイルに定義されているMQTTユーザー(
iotagent
)のパスワードを変更する- group_vars/all.yml
- 対象:
mqtt.users[?name==`iotagent`].password
- 対象:
- group_vars/all.yml
- 次のYAMLファイルに定義されているドメイン名を自身が所有するドメインに変更する
- inventories/aks/group_vars/aks.yml
- 対象:
dns.domain
- 対象:
- inventories/aks/group_vars/aks.yml
- 次のYAMLファイルに定義されているEmailアドレスを自身のEmailアドレスに変更する
- inventories/aks/group_vars/aks.yml
- 対象:
dns.email
- 対象:
- inventories/aks/group_vars/aks.yml
- 次のYAMLファイルに定義されているSSHキーパスを自身の公開鍵のパスに変更する
- inventories/aks/host_vars/azure.yml
- 対象:
resources.ssh_key_file_path
- 対象:
- inventories/aks/host_vars/azure.yml
- Azureに起動するworker nodeの数やVM SIZE等を変更したい場合には、次のYAMLファイルに定義されている値を変更する
- 起動する各コンテナのレプリカ数等を変更したい場合には、次のYAMLファイルに定義されている値を変更する
-
次のシェルスクリプトを実行し、ansibleからazureを操作する際に用いるcredentialsを生成する
$ ./tools/generate_azure_credentials.sh
-
pipenv shellを起動する
$ pipenv shell
-
ansibleを用いてRoboticBase/coreをAzure AKS上に起動する
$ ansible-playbook -i inventories/aks --extra-vars="ansible_python_interpreter=$(which python)" aks.yml
- ブラウザでgrafana (
https://grafana.{{ your domain }}
)にアクセスする - email or usernameに"admin"、passwordに"prom-operator"を入力しLog Inする
- 左下のPreferencesよりChange Passwordを選択し、adminのパスワードを変更する
- ホーム画面より、Azure AKSの各種リソースを監視するダッシュボードがインストールされていることを確認する