Cloud Assistantを使用して、設定の変更やアプリケーションのインストールに使用するコマンドをコンパイルし、複数のECS (Elastic Compute Service) インスタンスでコマンドを同時に実行できます。 これにより、インスタンスに1つずつログオンする必要がなくなり、時間を節約できます。 このトピックでは、Linux用のシェルコマンドを使用して、インスタンス設定を変更する方法について説明します。
背景情報
ECSインスタンスのシステム構成を表示する前に、Cloud AssistantとCloud Assistantの使用方法に精通していることを確認してください。 詳細については、「概要」および「クラウドアシスタントの使用」をご参照ください。
ECSインスタンスのオペレーティングシステムとシステム構成により、このトピックで説明するサンプルコマンドをインスタンスで実行できるかどうかが決まります。 ビジネス要件に基づいてコマンドの内容を変更することを推奨します。 コマンドにカスタムパラメーター {{key}} を含めて、コマンドの適用性を高めることができます。
説明Cloud Assistantコマンドの実行ステータスと結果は、ECSインスタンスのオペレーティングシステムとシステム構成によって異なる場合があります。 実行結果のエラーメッセージを表示し、ECSコンソールまたはAPI操作を呼び出すことで問題をトラブルシューティングできます。 詳細については、「実行結果の確認と一般的な問題のトラブルシューティング」をご参照ください。
インスタンス設定の変更
シナリオ: クラウドアシスタントを使用してECSインスタンスの設定を変更します。
手順
Cloud Assistantコマンドを作成し、ECSインスタンスでコマンドを実行します。
詳細については、「コマンドの作成」および「コマンドの実行」をご参照ください。
次のサンプルCloud Assistantコマンドを実行して、ユーザー情報を追加、削除、および変更できます。 この例では、
useradd -m -p test **student
コマンドを実行してユーザーを追加します。# Add a user and configure a password for the user. {{password}} is the key of a custom parameter. You must specify a value for the key before you run the command. useradd -m -p {{password}} {{newUser}} # Change the password. passwd {{password}} # Delete the user. userdel {{newUser}} # Modify the username. usermod -l {{newUser}} -d /home/{{newUser}} -m {{previousUser}}
インスタンスに接続します。
詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。
インスタンスのログインページで、追加されたユーザーを表示します。
[root@EcsHost ~]# su - student -c pwd /home/student
アプリケーションのインストール
シナリオ: Cloud Assistantを使用して、複数のECSインスタンスに同時にアプリケーションをインストールします。 これにより、繰り返しの設置および展開作業が削減される。
手順
Cloud Assistantコマンドを作成し、ECSインスタンスでコマンドを実行します。
詳細については、「コマンドの作成」および「コマンドの実行」をご参照ください。
次のサンプルCloud Assistantコマンドを実行して、Python 3をインストールできます。 Python 3は、CentOSなどのYUMを使用するオペレーティングシステムに適しています。
yum install zlib zlib-devel readline-devel sqlite-devel bzip2-devel openssl-devel gdbm-devel libdbi-devel ncurses-libs kernel-devel libxslt-devel libffi-devel python-devel zlib-devel openldap-devel sshpass gcc git -y wget -c https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz tar -xzvf Python-3.6.6.tgz cd Python-3.6.6 ./configure --prefix=/usr/local/python3 make all make install make clean make distclean ln -s /usr/local/python3/bin/python3 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
インスタンスに接続します。
詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。
インスタンスのログインページで、python3コマンドを実行して、Python 3がインストールされているかどうかを確認します。
次のコマンド出力は、Python 3がインストールされていることを示します。
[root@EcsHost ~]# python3 Python 3.6.6 (default, Jan 10 20**, 14:09:05) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux Type "help", "copyright", "credits" or "license" for more information. >>>
command not found
エラーメッセージが返された場合、Python 3はインストールされていません。
アプリケーションのアップグレード
シナリオ: Cloud Assistantを使用してECSインスタンスのアプリケーションをアップグレードします。
手順
Cloud Assistantコマンドを作成し、ECSインスタンスでコマンドを実行します。
詳細については、「コマンドの作成」および「コマンドの実行」をご参照ください。
次のサンプルCloud Assistantコマンドを実行して、Pythonを3.6.0から3.7.0にアップグレードできます。
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz && rm -rf /usr/bin/python3 tar -xzvf Python-3.7.0.tgz cd Python-3.7.0 ./configure && make && make install ln -s /usr/local/bin/python3.7 /usr/bin/python3 ln -s /usr/local/bin/python3.7-config /usr/bin/python-config python3 -V
インスタンスに接続します。
詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。
インスタンスのログインページで、python3 -Vコマンドを実行して、アプリケーションがアップグレードされているかどうかを確認します。
[root @ EcsHost ~]# python3 -V Python 3.7.0