カスタムクックブックのインストール - AWS OpsWorks

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

カスタムクックブックのインストール

重要

AWS OpsWorks Stacks は新規顧客を受け付けなくなりました。既存のお客様は、2024 年 5 月 26 日までは OpsWorks コンソール、 API、 CLI、および CloudFormation リソースを通常どおり使用できますが、その時点でこれらのリソースは廃止されます。この移行に備えて、できるだけ早くスタックを AWS Systems Manager に移行することをおすすめします。詳細については、AWS OpsWorks Stacks サポート終了に関する FAQ および AWS Systems Manager アプリケーションマネージャへの AWS OpsWorks Stacks アプリケーションの移行 を参照してください。

スタックがカスタムクックブックをインストールおよび使用するようにするには、すでに設定されていない場合はカスタムクックブックが有効になるようにスタックを設定する必要があります。リポジトリ URL と、パスワードなどの関連情報を指定する必要があります。

重要

カスタムクックブックをサポートするようにスタックを設定すると、AWS OpsWorks スタックによって起動時にすべての新しいインスタンスにクックブックが自動的にインストールされます。ただし、既存のインスタンスに新規または更新されたクックブックをインストールするには、Update Custom Cookbooks (カスタムクックブックの更新) スタックコマンドを実行して、AWS OpsWorks スタックに明示的に指示する必要があります。詳細については、「カスタムクックブックの更新」を参照してください。スタックの [Use custom Chef cookbooks (カスタム Chef クックブックを使用する)] を有効化する前に、実行するカスタムクックブックとコミュニティクックブックが、スタックで使用する Chef のバージョンをサポートしていることを確認してください。

カスタムクックブックのスタックを設定するには
  1. スタックのページで、[Stack Settings] をクリックして [Settings] ページを表示し、[Edit] をクリックして設定を編集します。

  2. [Use custom Chef cookbooks] を [Yes] に切り替えます。

    
                    スタックの設定ページの編集
  3. カスタムクックブックを設定します。

設定が完了したら、[Save] をクリックして更新されたスタックを保存します。

カスタムクックブックリポジトリの指定

Linux スタックは、次のリポジトリタイプからカスタムクックブックをインストールできます。

  • HTTP や Amazon S3 のアーカイブ。

    これらはパブリックでもプライベートでもかまいませんが、通常プライベートアーカイブに推奨されるオプションは Amazon S3 です。

  • Git リポジトリと Subversion リポジトリは、ソース管理と複数のバージョンを設定する機能を提供します。

Windows スタックは、Amazon S3 アーカイブと Git リポジトリからカスタムクックブックをインストールできます。

すべてのリポジトリタイプに、以下の必須フィールドがあります。

  • [Repository type] (リポジトリタイプ) – リポジトリのタイプ

  • [Repository URL] (リポジトリ URL) – リポジトリの URL

AWS OpsWorks スタックは、プライベートにホストされる Git サーバーに加えて、パブリックにホストされる Git リポジトリ (GitHubBitbucket など) をサポートしています。Git リポジトリの場合、リポジトリがパブリックとプライベートのどちらであるかに応じて、次の URL 形式の 1 つを使用する必要があります。Git サブモジュールと同じ URL のガイドラインに従います。

パブリック Git リポジトリの場合は、HTTPS または Git の読み取り専用プロトコルを使用します。

  • Git 読み取り専用 – git://github.com/amazonwebservices/opsworks-example-cookbooks.git

  • HTTPS –https://github.com/amazonwebservices/opsworks-example-cookbooks.git

プライベート Git リポジトリの場合は、以下の例に示すように、SSH の読み取り/書き込み形式を使用する必要があります。

  • Github リポジトリ –git@github.com:project/repository

  • Git サーバー上のリポジトリ – user@server:project/repository

残りの設定はリポジトリのタイプによって異なり、これらについて以下のセクションで説明します。

HTTP アーカイブ

[Repository type] (リポジトリタイプ) で [Http Archive] (Http アーカイブ) を選択すると、2 つの追加設定が表示されますが、アーカイブがパスワードで保護されている場合には設定を完了する必要があります。

  • User name - ユーザーネーム。

  • [Password] — パスワード

Amazon S3 のアーカイブ

リポジトリタイプS3 アーカイブ を選択すると、以下の追加のオプション 設定 が表示されます。AWS OpsWorksスタックは、AWS OpsWorksスタックの API またはコンソールのどちらを使用しても、 Amazon EC2 ロール (ホストオペレーティングシステムのマネージャー認証) を使用してリポジトリにアクセスできます。

  • [Access key ID] (アクセスキー ID) — AWS アクセスキー ID (AKIAIOSFODNN7EXAMPLE など)。

  • [Secret access key] (シークレットアクセスキー) — 対応する AWS シークレットアクセスキー (wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY など)。

Git リポジトリ

[Source Control] (ソースコントロール) で [Git] を選択すると、以下の追加オプション設定が表示されます。

[Repository SSH key]

プライベート Git リポジトリにアクセスするには、デプロイ SSH キーを指定する必要があります。Git サブモジュールの場合、指定するキーには、それらのサブモジュールへのアクセス権が必要です。詳細については、「Git リポジトリの SSH キーの使用」を参照してください。

重要

デプロイ SSH キーでパスワードを必須にすることはできません。パスワードを渡すための仕組みが AWS OpsWorks スタックには存在しません。

[Branch/Revision]

リポジトリに複数のブランチがある場合、AWS OpsWorks スタックはデフォルトではマスターブランチをダウンロードします。特定のブランチを指定するには、ブランチ名、SHA1 ハッシュ、タグ名のいずれかを入力します。特定のコミットを指定するには、40 桁の 16 進数コミット ID を入力します。

Subversion リポジトリ

[Source Control] (ソースコントロール) で [Subversion] を選択すると、以下の追加設定が表示されます。

  • [User name] (ユーザー名) - プライベートリポジトリのユーザー名。

  • [Password] (パスワード) - プライベートリポジトリのパスワード。

  • [Revision] (リビジョン) - (オプション) 複数のリビジョンがある場合のリビジョン名。

    ブランチまたはタグを指定するには、リポジトリ URL を変更する必要があります。例えば、http://repository_domain/repos/myapp/branches/my-apps-branch または http://repository_domain_name/repos/calc/myapp/my-apps-tag のように変更します。