第5章 Elasticsearchのアクションログストレージの設定
デフォルトでは、過去3ヶ月分の使用ログがRed Hat Quayデータベースに保存され、組織レベルとリポジトリレベルでウェブUIを介して公開されます。ログエントリを見るには、適切な管理者権限が必要です。大量の操作ログが記録されるデプロイメントでは、Red Hat Quay データベースバックエンドの代わりに Elasticsearch に使用ログを保存できるようになりました。これを行うには、独自のElasticsearchスタックを用意する必要があります。これは、カスタマイズ可能なコンポーネントとしてRed Hat Quayに含まれていないためです。
Elasticsearch のロギングを有効にするには、Red Hat Quay の展開中、または展開後に Red Hat Quay Config Tool を使用して行うことができます。出来上がった設定は、config.yaml
ファイルに格納されます。一度設定すれば、使用ログへのアクセスは、これまでと同様に、リポジトリや組織のWeb UIを介して提供されます。
ここでは、アクションログストレージをデフォルトのRed Hat QuayデータベースからElasticsearchを使用するように変更するための設定方法を説明します。
- Elasticsearchのアカウントを取得します。
- Red Hat Quay Config Tool を開きます(Red Hat Quay の展開中または展開後)。
Action Log Storage Configuration設定までスクロールし、Databaseの代わりにElasticsearchを選択します。次の図は、表示されるElasticsearchの設定です。
使用するElasticsearchインスタンスの以下の情報を入力します。
- Elasticsearchホスト名: Elasticsearchサービスを提供するシステムのホスト名またはIPアドレス。
- Elasticsearchのポート: 先ほど入力したホストでElasticsearchサービスを提供しているポート番号です。ポートが、Red Hat Quay レジストリを実行しているすべてのシステムからアクセス可能でなければならないことに注意してください。デフォルトはTCP 9200番ポートです。
- Elasticsearchのアクセスキー: 必要に応じて、Elasticsearchサービスにアクセスするために必要なアクセスキーです。
- Elasticsearchの秘密鍵: 必要に応じて、Elasticsearchサービスにアクセスするために必要な秘密鍵。
- AWSリージョン: AWS上で運用している場合は、AWSリージョンを設定します(そうでない場合は、空欄のままです)。
- Index prefix: ログエントリに付けるプレフィックスを選択します。
Logs Producer: Elasticsearch(デフォルト)またはKinesisのいずれかを選択し、ログをAWS上の中間的なKinesisストリームに導きます。KinesisからElasticsearch(Logstashなど)にログを送るためには、独自のパイプラインを設定する必要があります。次の図は、Kinesisに必要な追加フィールドを示しています。
Logs ProducerとしてElasticsearchを選択した場合、これ以上の設定は必要ありません。Kinesisを選択した場合、以下を記入してください。
- ストリーム名: Kinesisのストリームの名前です。
- AWSのアクセスキー: Kinesisストリームへのアクセスを得るために必要なAWSアクセスキーの名前(必要な場合)。
- AWSの秘密鍵: Kinesisストリームにアクセスするために必要なAWSのシークレットキーの名前(必要な場合)。
- AWSリージョン: AWSのリージョンです。
- 完了したら、設定を保存します。Config Tool が設定内容を検証します。ElasticsearchまたはKinesisサービスへの接続に問題がある場合は、エラーが表示され、編集を続ける機会が与えられます。そうしないと、新しい設定に伴いでクラスタが再起動した後に、ロギングがあなたのElasticsearch設定に対して開始されます。