このトピックでは、Elastic Compute Service (ECS) のO&Mとモニタリングに関するよくある質問に対する回答を提供します。
クラウドアシスタントに関するFAQ
Cloud Assistantはどのオペレーティングシステムをサポートしていますか?
Alibaba Cloud Linux
CentOS 6、CentOS 7、およびCentOS 8以降
CoreOS
Debian 8、Debian 9、およびDebian 10以降
OpenSUSE
レッドハット5、レッドハット6、レッドハット7以降
説明Red Hatインスタンスの場合、Red Hat Package Manager (RPM) パッケージをダウンロードしてCloud Assistant Agentをインストールする必要があります。 詳細については、「Cloud Assistant Agentのインストール」をご参照ください。
SUSE Linux Enterprise Server (SLES) 11、SLES 12、およびSLES 15以降
Ubuntu 12、Ubuntu 14、Ubuntu 16、およびUbuntu 18以降
Windows Server 2012、Windows Server 2016、およびWindows Server 2019以降
デフォルトでは、Cloud Assistant Agentはパブリックイメージから作成されたECSインスタンスにインストールされます。
カスタムイメージまたはAlibaba Cloud Marketplaceイメージから作成されたECSインスタンスの場合、Cloud Assistant Agentをインストールする前に、オペレーティングシステムがCloud Assistantをサポートしているかどうかを確認する必要があります。 詳細については、「Cloud Assistant Agentのインストール」をご参照ください。
Cloud Assistantコマンドはいくつ保持できますか?
Alibaba Cloudリージョンで保持できるCloud Assistantコマンドの最大数は、ECSリソースの使用状況によって異なります。 数は100から10,000まで及ぶことができます。
作成したCloud Assistantコマンドを変更できますか?
作成したCloud Assistantコマンドの名前と説明は変更できますが、コマンドの内容、タイムアウト時間、実行パスなど、コマンドに関する他の情報は変更できません。 コマンドの内容や実行パスを変更する場合は、コマンドを複製して新しいコマンドバージョンを作成できます。 詳細については、「コマンドの複製」をご参照ください。
ECSインスタンスでCloud Assistantコマンドを実行するには、特定の権限が必要ですか。
はい。Cloud Assistant Agentを管理者またはrootユーザーとしてインストールして使用する必要があります。
Windows Serverオペレーティングシステムを実行するECSインスタンスでCloud Assistantコマンドを実行するには、管理者権限を取得する必要があります。
LinuxインスタンスでCloud Assistantコマンドを実行するには、rootユーザー権限を取得する必要があります。
一度に複数のECSインスタンスでCloud Assistantコマンドを実行できますか。
はい、一度に複数のECSインスタンスでCloud Assistantコマンドを実行できます。
方法1: ECSコンソールで、コマンドを実行するときに最大50個のインスタンスを選択できます。 Alibaba Cloudリージョンでは、Cloud Assistantコマンドを1日あたり最大5,000回実行できます。
方法2: 一度に多数のECSインスタンスでCloud Assistantコマンドを実行する場合は、CloudOps Orchestration Service (OOS) のOOSACS-ECS-BulkyRunCommandテンプレートを使用することを推奨します。 Tagパラメーターを使用して複数のECSインスタンスを指定し、各インスタンスのInstanceId値を入力しなくてもCloud Assistantコマンドを実行できます。 1つのOOSループタスクで、Cloud Assistantコマンドを最大1,000回実行できます。 実行をバッチに分割し、同時実行を制御できます。
Cloud Assistantコマンドが期待どおりに実行されているかどうかを確認するにはどうすればよいですか?
コマンドは、Cloud Assistantを使用してコマンドを実行するか、ECSインスタンスにログインした後に実行するかに関係なく、必要な条件がすべて満たされている場合にのみ実行できます。 実行結果を確認するには、次のいずれかの方法を使用できます。
ECSコンソールで実行結果を確認します。
DescribeInvocationResults操作を呼び出します。
ECSインスタンスに接続し、実行結果をログファイルに表示します。 詳細については、「」をご参照ください。Cloud Assistantの操作ログを表示するにはどうすればよいですか? このトピックのセクション。
Cloud Assistantのトラブルシューティングに関するFAQ
LinuxインスタンスへのCloud Assistant Agentのインストールに失敗し、"No such file or directory" というエラーメッセージが表示されたのはなぜですか? 問題を解決するにはどうすればよいですか?
Cloud Assistant AgentがLinuxインスタンスに既にインストールされているため、Cloud Assistant Agentのインストールに失敗しました。 Cloud Assistant Agentを再インストールするには、次の操作を実行します。 詳細については、「Cloud Assistant Agentのインストール」をご参照ください。
RPMパッケージを使用してCloud Assistant Agentを再インストールするには、次のコマンドを実行して、既存のCloud Assistant Agentを強制的に上書きします。
sudo rpm -i --force aliyun_x.x.x.rpm
Debianパッケージを使用してCloud Assistant Agentを再インストールするには、次の手順を実行します。
次のコマンドを実行して、既存のCloud Assistant Agentをアンインストールします。
sudo dpkg -r aliyun-assist
次のコマンドを実行して、Cloud Assistant Agentを再インストールします。
sudo dpkg -i aliyun_x.x.x.deb
Cloud Assistantの操作ログを表示するにはどうすればよいですか?
ECSインスタンスでCloud Assistantの操作ログを表示するには、インスタンスに接続する必要があります。 Cloud Assistantの操作ログは、次のファイルに保存されます。
${install_dir}/${version}/log/aliyun_assist_main.log
${install_dir}/${version}/log/aliyun_assist_update.log
${version} 変数は、Cloud Assistant Agentのバージョン番号 (1.0.1.368など) を示します。 ${install_dir} 変数は、インスタンスオペレーティングシステムでのCloud Assistant Agentのインストールパスを示します。
異なるオペレーティングシステムでのCloud Assistant Agentのデフォルトのインストールパスは何ですか?
デフォルトでは、Cloud Assistant Agentは次のパスにインストールされます。
Windowsサーバー: C:\ProgramData\aliyun\assist
CoreOS: /opt/local/share/aliyun-assist /
Alibaba Cloud Linux、CentOS、Debian、openSUSE、SLES、Ubuntuなどのその他のLinuxオペレーティングシステム: /usr/local/share/aliyun-assist /
ECSインスタンスのCloud Assistantのステータスを確認するにはどうすればよいですか。
ECS インスタンスに接続します。
Cloud Assistantのステータスを表示して、Cloud Assistantが有効かどうかを確認します。
Linux:
方法 1
sudo systemctl status aliyun
方法 2
ps aux | grep aliyun
Windows Server:
[コンピューター管理 (ローカル)]> [サービスとアプリケーション]> [サービス] を選択し、Aliyun Serviceを見つけます。
ログファイルが格納されているディレクトリでログファイルを検索します。 例:
tail -n 100 /usr/local/share/aliyun-assist/$(/usr/sbin/aliyun-service -v)/log/aliyun_assist_main.log
ログファイルが格納されているディレクトリで、ハートビートまたは更新ログファイルを検索します。 例:
tail -n 100 /usr/local/share/aliyun-assist/$(/usr/sbin/aliyun-service -v)/log/aliyun_assist_update.log
なぜシェルコマンドはCentOSで実行できますが、Ubuntuでは実行できませんか?
これ以降のバージョンのUbuntuのデフォルトのシェル環境はbashではなくdashであるため、CentOSでシェルコマンドを実行するときにUbuntuでシェルコマンドを実行することはできません。 dashのシェル構文はbashと完全に互換性がありません。 上記の問題を解決するには、Ubuntuのデフォルトのシェル環境を変更します。
次のコマンドを実行して、シェル環境がダッシュであるかどうかを確認します。
ls /bin/sh
シェル環境がdashの場合は、次のコマンドを実行してデフォルトのシェル環境に切り替えます。
dpkg-reconfigure dash
プロンプトに従って、デフォルトのシェル環境としてダッシュを指定しないことを選択します。
クラシックネットワークのECSインスタンスはCloud Assistantを使用できますか?
はい、クラシックネットワークのECSインスタンスはCloud Assistantを使用できます。 ECSインスタンスに最新バージョンのCloud Assistant Agentをインストールすることを推奨します。 最新バージョンのCloud Assistant AgentのURLについては、「Cloud Assistant Agentのインストール」をご参照ください。 以前のバージョンのCloud Assistant AgentをECSインスタンスにインストールした場合、Cloud Assistant Agentのインストールパスにregion-idという名前のファイルを作成し、そのファイルにECSインスタンスのリージョンIDを入力する必要があります。 リージョンIDについては、「リージョンとゾーン」をご参照ください。 たとえば、中国 (杭州) リージョンのCentOSインスタンスに対して次の手順を実行します。
リージョンIDを入力します。
echo 'cn-hangzhou' > /usr/local/share/aliyun-assist/region-id
クラウドアシスタントを再起動します。
ECSコンソールでCloud Assistantを使用してインスタンスでコマンドを実行すると、Cloud Assistant AgentがECSインスタンスにインストールされていないことを示すメッセージが表示されるのはなぜですか。
Cloud AssistantがECSインスタンスのCloud Assistant Agentからハートビート情報を受信しないため、メッセージが表示されます。 上記の問題を解決するには、次の方法を使用できます。
Cloud Assistantプロセスが無効になっている場合は、Cloud Assistantを再起動できます。 Windows Serverインスタンスのソリューションの詳細については、Cloud Assistantのステータスを表示するにはどうすればよいですか? このトピックのセクション。 Linuxインスタンスの場合は、次の手順を実行します。
次のコマンドを実行して、Cloud Assistantを再起動します。
sudo systemctl restart aliyun
次のコマンドを実行して、システム起動時にCloud Assistantが起動するかどうかを確認します。
sudo systemctl status aliyun
Cloud Assistantがシステム起動時に起動しない場合は、次のコマンドを実行して、Cloud Assistantがシステム起動時に起動できるようにします。
sudo systemctl enable aliyun
ECSインスタンスがクラシックネットワークにあり、Cloud Assistant Agentの初期バージョンがインストールされている場合、インスタンスのリージョンを指定するための設定ファイルを作成する必要があります。 詳細については、「」をご参照ください。クラシックネットワークのECSインスタンスはCloud Assistantを使用できますか? このトピックのセクション。
操作ログに "Failed to open gshell: Device or resource busy" というメッセージが含まれている場合はどうすればよいですか?
問題の説明: Cloud Assistantの操作ログには、次の情報が含まれています。
2019-11-06 03:10:15,993 INFO [default] /dev/virtio-ports/org.qemu.guest_agent.0:-1 2019-11-06 03:10:15,993 ERROR [default] Failed to open gshell: Device or resource busy
解決策:
方法 1
次のコマンドを実行して、Cloud Assistant Agentで複数のプロセスが実行されているかどうかを確認します。 複数のプロセスが実行されている場合は、すべてのプロセスを停止してから、Cloud Assistant Agentを再起動します。
ps aux | grep aliyun
方法 2
次のコマンドを実行して、org.qemu.guest_agent.0ファイルを占有しているプロセスを表示します。 すべてのCloud Assistantプロセスには、名前にaliyun-**が含まれています。 Cloud Assistant以外のすべてのプロセスを停止します。
lsof /dev/virtio-ports/org.qemu.guest_agent.0
ECSインスタンスで特定のコマンドを実行できるが、Cloud Assistantを使用してコマンドを実行すると「command not found」というエラーメッセージが表示される場合はどうすればよいですか?
Cloud Assistantセッションの環境変数にコマンドが含まれているかどうかを確認します。
Linux インスタンス
次のコマンドを実行して環境変数を表示します。
export
次のコマンドを実行して、環境変数を設定します。 環境変数はECSインスタンスによって異なる場合があります。
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
Windows インスタンス
次のコマンドを実行して環境変数を表示します。
set
次のコマンドを実行して、環境変数を設定します。 環境変数はECSインスタンスによって異なる場合があります。
set PATH=%PATH%;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Users\Administrator\A
タスクの実行後にタスクがFailed状態になるのはなぜですか。
問題をトラブルシューティングするには、次の項目を確認します。
Windowsインスタンスを使用する場合は、インスタンスでPowerShellが期待どおりに実行されるかどうかを確認します。
タスクがタイムアウトしたかどうかを確認します。
Cloud Assistantがインスタンスで期待どおりに実行されるかどうかを確認します。 DescribeCloudAssistantStatus操作を呼び出して、Cloud Assistantのステータスを照会できます。
Cloud Assistantログを確認します。 デフォルトでは、Cloud Assistantログは次のパスに保存されます。
Linuxインスタンス: /usr/local/share/aliyun-assist/<Cloud Assistant Agentのバージョン番号>/log /
Windowsインスタンス: C:\ProgramData\aliyun\assist\<Cloud Assistant Agentのバージョン番号>\log
タスクを実行した後、タスクが中止状態になるのはなぜですか。
Abort状態は、タスクが1分以内に宛先インスタンスに送信されなかったことを示します。 タスクを再送信することを推奨します。
[中止] 状態が続く場合は、Cloud Assistantログを確認します。
Cloud Assistantコマンドに漢字が含まれている場合、コマンド出力がぎこちなく表示されるのはなぜですか?
標準エンコード方法: デフォルトでは、LinuxインスタンスのコマンドはUTF-8エンコードされ、WindowsインスタンスのコマンドはGBKエンコードされます。
Cloud Assistantコマンドに漢字が含まれている場合は、ECSインスタンスでサポートされているエンコード方法を使用してコマンドがエンコードされていることを確認してください。
Cloud Assistantの一般的なエラーコード
InstanceNotRunning: ECSインスタンスが起動されていません。 インスタンスを起動します。
ClientNotRunning: Cloud Assistantエージェントは起動していません。 Cloud Assistantのログをチェックして、Cloud Assistantが期待どおりに実行されるかどうかを確認します。
DeliveryTimeout: Cloud Assistantタスクの送信に失敗しました。 Cloud Assistantのログを確認するか、Cloud Assistant Agentを最新バージョンに更新してから再試行してください。
アプリケーションO&Mに関するFAQ
ECSインスタンスでホストされている小さなWebサイトの日常的なO&Mタスクについて、どのような提案を得ることができますか?
以下のウェブサイトO&Mの提案が利用可能です。
ディスクデータを定期的にバックアップします。 詳細については、「スナップショットの作成」または「自動スナップショットポリシーの有効化または無効化」をご参照ください。
SSL Certificate Serviceを使用して、Webサイトへの訪問者を認証し、Webサイト経由で転送されるデータを暗号化します。 詳細については、「」をご参照ください。証明書管理サービスとは
マルウェアスキャンプラグインとAnti-DDoSサービスをインストールするか、Security Centerを有効にします。 ECSは無料のセキュリティサービスを提供します。 詳細については、「Basicセキュリティサービス」または「Anti-DDoS Basic」をご参照ください。
Webサイトのインバウンドトラフィックとアウトバウンドトラフィックを監視して、疑わしいトラフィックを特定します。 特定のポイントからの疑わしいリクエストを一時的に制御するためのDenyセキュリティグループルールを追加します。 詳細については、「ECSインスタンスのモニタリング情報の表示」および「セキュリティグループルールの追加」をご参照ください。
ECSインスタンスとディスクのパフォーマンスを監視し、ピークトラフィック期間を特定します。 構成のアップグレードとダウングレード、自動スケーリング、ディスクのサイズ変更などの操作に精通していることを確認してください。 詳細については、「インスタンス設定の変更の概要」、「Auto Scalingとは」、または「ディスクのサイズ変更の概要」をご参照ください。
rootアカウントと管理者アカウント、および対応するパスワードを資格情報として使用してECSインスタンスにログインする場合は、パスワードを定期的に変更します。 詳細については、「インスタンスのログインパスワードのリセット」をご参照ください。
ソフトウェアパッチを定期的に更新します。 Alibaba Cloudは、パブリックイメージのセキュリティパッチを定期的に提供しています。 パブリックイメージからカスタムイメージを定期的に派生させることをお勧めします。 詳細については、「カスタムイメージの更新」をご参照ください。