注意
全ノードで、Azure CLIのインストール手順の、az loginコマンドによるログインを実施しておく必要があります。
実施していない場合は、以下の手順の前に実施してください。
Firewallの無効化
全ノードでfirewalldが無効になっていることを確認してください。
# systemctl is-enabled firewalld
有効になっている場合、無効にしてください。
# systemctl stop firewalld # systemctl disable firewalld
NTPの設定
クラスタシステムを構築する各ノードの時刻を同期させるための設定です。クラスタを構築する際には必ず行ってください。
本設定はPRIMECLUSTERをインストールする前に行ってください。
サービスプリンシパルの登録および証明書の設定
サービスプリンシパルは、Azure上でプログラムを実行する際に使用する専用の認証方式です。
以下の手順で設定してください。
3-1) クラスタシステムを構成する任意の1ノードでAzureのアカウントでログインします。
# az login -u アカウント
サービスプリンシパルを登録し、証明書を作成します。
# az ad sp create-for-rbac --create-cert
{ "appId": "d5b7dac1-718f-448b-8e11-4a8cca6d9004", "displayName": "azure-cli-2019-09-13-02-57-50", "fileWithCertAndPrivateKey": "/root/tmprjbQbI.pem", "name": "http://azure-cli-2019-09-13-02-57-50", "password": null, "tenant": "8ff7ddfd-fbcb-4700-ae52-6d071ac8d1b4" }
ここで表示されたアプリケーションID(appId)とテナントID(tenant)は、“27.8.1.2 シャットダウン機構の設定”および“27.9.1.1 定義ファイルの作成”の際に使用します。メモしてください。
Azureからログアウトします。
# az logout
3-2) fileWithCertAndPrivateKeyに作成された証明書をすべてのクラスタノードで、任意の同じ場所に格納し、パーミッションを600に設定します。
例) 証明書のパスが“/root/examplecert.pem”の場合
# cp /root/tmprjbQbI.pem /root/examplecert.pem # chmod 600 /root/examplecert.pem
なお、fileWithCertAndPrivateKeyに作成された証明書は、rmコマンドで削除しておいてください。
証明書を格納するパスは、“27.8.1.2 シャットダウン機構の設定”および“27.9.1.1 定義ファイルの作成”の際に使用します。メモしてください。
3-3) すべてのクラスタノードで、登録したサービスプリンシパルでログインできることを確認します。
# az login --service-principal --username appID --tenant tenant --password 3-2)で証明書を格納したパス
3-4) すべてのクラスタノードで、Azureからログアウトします。
# az logout
注意
バージョン 2.31.0以前のAzure CLIを使用する場合、サービスプリンシパルのロールは、Contributor(共同作成者)で作成されます。
バージョン 2.32.0以降のAzure CLIを使用する場合、サービスプリンシパルのロールは作成されません。
そのため、別のロールに変更する場合、“29.1.3 サービスプリンシパルのロールの変更”を参照してください。
サービスプリンシパルの証明書には有効期限があります。
証明書の有効期限が切れる前に、“29.1.1 サービスプリンシパルで使用する証明書の更新”にしたがって、証明書を更新してください。更新を行わない場合、強制停止が行えず、業務停止することがあります。
サービスプリンシパルの登録時にスコープを指定する場合、PRIMECLUSTERを使用する仮想マシンで使用および関連するリソース(セキュリティグループやパブリックIPなど)が存在するすべてのリソースグループをスコープに入れるようにしてください。
参照
Azure CLIのサービスプリンシパルの設定方法についての詳細は、Azureの公式ドキュメントを参照してください。
デバイス名ずれ防止の設定
Azure環境では、仮想マシン配備直後のネットワークデバイス名はethXとなります。
本デバイス名を使用し続ける場合、デバイス名ずれが発生する可能性がありますので、ネットワークデバイスが複数存在する環境の場合は、OSの“Linuxユーザーズマニュアル”を参照し、デバイス名ずれ防止の手順を実施してください。