ノードを個別に追加します - AWS OpsWorks

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ノードを個別に追加します

重要

なぜなら、AWS OpsWorks Chef Automate はもはや新規顧客を受け入れていないからです。2024 年 5 月 5 日までは、既存のお客様には影響はありません。その時点でサービスは利用できなくなります。既存のお客様は、 Chef SaaS または代替ソリューションに移行することをお勧めします。詳細については、「AWS OpsWorks Chef Automate のサポート終了に関するよくある質問」を参照してください。

このチュートリアルでは、Chef サーバが管理できるように、EC2 インスタンスを追加またはブートストラップする knife コマンドを実行する方法を説明します。

AWS OpsWorks for Chef Automate サーバーに関連付けられているノードでサポートされている chef-client の最小バージョンは 13.x です。安定した現行の chef-client バージョンの実行をお勧めします。

(オプション) Chef Automate サーバールート CA の URL を指定します。

サーバーがカスタムドメインと証明書を使用している場合は、ユーザーデータスクリプトの ROOT_CA_URL 変数を編集して、サーバーのルート CA 証明書 (PEM 形式) を取得するために使用できるパブリック URL にする必要があります。次の AWS CLI コマンドは、ルート CA を Amazon S3 バケットにアップロードし、1 時間使用できる署名付き URL を生成します。

  1. ルート CA 証明書 (PEM 形式) を S3 にアップロードします。

    aws s3 cp ROOT_CA_PEM_FILE_PATH s3://bucket_name/
  2. ルート CA をダウンロードするために 1 時間 (この例では 3600 秒) 使用できる署名付き URL を生成します。

    aws s3 presign s3://bucket_name/ROOT_CA_PEM_FILE_NAME --expires-in 3600
  3. 署名付き URL の値を使用してユーザーデータスクリプトの ROOT_CA_URL 変数を編集します。

サポートされるオペレーティングシステム

ノードでサポートされているオペレーティングシステムの最新の一覧については、[Chef website] (Chef のウェブサイト) を参照してください。

knife を使用してノードを追加する

knife-ec2 プラグインは Chef Workstation に含まれています。knife-ec2 に慣れている場合は、knife bootstrap ではなくそれを使用して、新しい EC2 インスタンスをプロビジョニングおよびブートストラップできます。慣れていない場合は、新しい EC2 インスタンスを起動した後に、このセクションの手順に従います。

管理するノードを追加するには
  1. 次の knife bootstrap コマンドを実行します。このコマンドは、Chef サーバーで管理されるノードに EC2 インスタンスをブートストラップします。「Policyfile.rb を使用してリモートソースからクックブックを取得する」でインストールした nginx クックブックからレシピを実行するように、Chef サーバーに指示していることに注意してください。knife bootstrap コマンドを使用したノードの追加に関する詳細については、Chef ドキュメントの「Bootstrap a Node」(ノードのブートストラップ) を参照してください。

    このステップの knife コマンドでノードのオペレーティングシステムに対して有効なユーザー名を次の表に示します。rootec2-user のどちらでも動作しない場合は、AMI プロバイダーに確認してください。Linux ベースのインスタンスへの接続の詳細については、AWS ドキュメントの「Connecting to Your Linux Instance Using SSH」(SSH を使用した Linux インスタンスへの接続) を参照してください。

    ノードのオペレーティングシステムで有効なユーザー名の値
    オペレーティングシステム 有効なユーザー名
    Amazon Linux ec2-user
    Red Hat Enterprise Linux 5 root、または ec2-user
    Ubuntu ubuntu
    Fedora fedora、または ec2-user
    SUSE Linux root、または ec2-user
    knife bootstrap INSTANCE_IP_ADDRESS -N INSTANCE_NAME -x USER_NAME --sudo --run-list "recipe[nginx]"
  2. 次のコマンド ([INSTANCE_NAME] (インスタンス名) は追加したインスタンスの名前に置き換えます) を実行して、新しいノードが追加されていることを確認します。

    knife client show INSTANCE_NAME knife node show INSTANCE_NAME