Skip to content
This repository has been archived by the owner on Sep 26, 2023. It is now read-only.

Latest commit

 

History

History
226 lines (178 loc) · 6.8 KB

install_guide_aks.ja.md

File metadata and controls

226 lines (178 loc) · 6.8 KB

RoboticBase Coreインストールガイド(Microsoft Azure AKS)

構築環境

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

準備

ツールのインストール

pyenvpipenvのインストール

macOS

$ 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

ubuntu

$ 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のインストール

macOS

$ 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

ubuntu

$ 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のインストール

macOS

$ 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

ubuntu

$ 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

opensslのインストール

macOS

$ brew install openssl

ubuntu

$ sudo apt install -y openssl

Azure CLIのインストール

macOS

$ brew install azure-cli

ubuntu

$ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

ansibleの準備

RoboticBase/coreをclone

$ git clone https://github.com/RoboticBase/core.git
$ cd core

ansibleと関連するPythonライブラリのインストール

$ cd ansible
$ pipenv install

RoboticBase/coreのインストール

変数の設定(必須)

  1. 次のYAMLファイルに定義されているMQTTユーザー(iotagent)のパスワードを変更する
  2. 次のYAMLファイルに定義されているドメイン名を自身が所有するドメインに変更する
  3. 次のYAMLファイルに定義されているEmailアドレスを自身のEmailアドレスに変更する
  4. 次のYAMLファイルに定義されているSSHキーパスを自身の公開鍵のパスに変更する

変数の更新(任意)

  1. Azureに起動するworker nodeの数やVM SIZE等を変更したい場合には、次のYAMLファイルに定義されている値を変更する
  2. 起動する各コンテナのレプリカ数等を変更したい場合には、次のYAMLファイルに定義されている値を変更する

Azure Credentialsを生成

  1. 次のシェルスクリプトを実行し、ansibleからazureを操作する際に用いるcredentialsを生成する

    $ ./tools/generate_azure_credentials.sh
    

RoboticBase/coreを起動

  1. pipenv shellを起動する

    $ pipenv shell
    
  2. ansibleを用いてRoboticBase/coreをAzure AKS上に起動する

    $ ansible-playbook -i inventories/aks --extra-vars="ansible_python_interpreter=$(which python)" aks.yml
    
  3. ansible-playbookを起動するとAzureへのログインを促される azure_login_01.png

grafanaの設定

  1. ブラウザでgrafana (https://grafana.{{ your domain }})にアクセスする grafana_01.png
  2. email or usernameに"admin"、passwordに"prom-operator"を入力しLog Inする grafana_02.png
  3. 左下のPreferencesよりChange Passwordを選択し、adminのパスワードを変更する grafana_03.png
  4. ホーム画面より、Azure AKSの各種リソースを監視するダッシュボードがインストールされていることを確認する grafana_04.png

kibanaの設定

  1. kibanaのユーザー名とパスワードを確認する

    $ ./tools/show_kibana_credentials.py
    
  2. ブラウザでkibana (https://kibana.{{ your domain }})にアクセスする kibana_00.png

  3. kibanaのユーザー名とパスワードを入力してログインする kibana_01.png

  4. Explore on my ownをクリックしてホーム画面を表示する kibana_02.png

  5. Managementをクリックして管理画面を表示する kibana_03.png

  6. Index Patternsをクリックする kibana_04.png

  7. Create Index Patternsをクリックする kibana_05.png

  8. Index patternに"logstash-*"と入力し、Next Stepをクリックする kibana_06.png

  9. Time Filter field nameとして"@timestamp"を選択し、Create Index patternをクリックする kibana_07.png

  10. ログメッセージ用のIndexが作成される kibana_08.png

  11. Discoverをクリックし、Podのログメッセージが収集されていることを確認する kibana_09.png