

 **このページの改善にご協力ください** 

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「**GitHub でこのページを編集する**」リンクを選択してください。

# コミュニティアドオン
<a name="community-addons"></a>

AWS API を使用して、Kubernetes Metrics Server などのコミュニティ アドオンをインストールできます。複数のクラスターでソフトウェアを保守する際の複雑さを軽減するために、コミュニティアドオンを Amazon EKS アドオンとしてインストールすることもできます。

例えば、AWS API、CLI、または管理コンソールを使用してコミュニティ アドオンをインストールできます。クラスターの作成時にコミュニティアドオンをインストールできます。

コミュニティアドオンは既存の Amazon EKS アドオンと同様に管理します。コミュニティアドオンは独自のサポート範囲があるという点で、既存のアドオンとは異なります。

**注記**  
コミュニティアドオンの使用はユーザーが自由に決定できます。お客様と AWS 間の[責任共有モデル](security.md)の一環として、これらのサードパーティープラグインに関して、何をクラスターにインストールするかを理解しておく必要があります。また、お客様はクラスターのセキュリティニーズを満たすコミュニティアドオンについても責任を負います。詳細については、「[EKS にデプロイされたソフトウェアのサポート](related-projects.md#oss-scope)」を参照してください。

コミュニティアドオンは AWS によって構築されるものではありません。AWS は、バージョンの互換性に関するコミュニティアドオンの検証のみ行います。例えば、クラスターにコミュニティアドオンをインストールすると、AWS はクラスターの Kubernetes バージョンと互換性があるかどうかを確認します。

重要なのは AWS はコミュニティアドオンを完全にサポートしていないことです。AWS はアドオンのインストールやアドオンの削除など、AWS API を使用して行われたライフサイクルオペレーションのみをサポートします。

Sコミュニティアドオンのサポートが必要な場合は、既存のプロジェクトリソースを使用します。例えば、プロジェクトのリポジトリに GitHub の問題を作成できます。

## アドオンタイプを決定する
<a name="_determine_add_on_type"></a>

AWS CLI を使用して、Amazon EKS アドオンのタイプを判断できます。

アドオンに関する情報を取得するには、次の CLI コマンドを使用します。`metrics-server` を任意のアドオンの名前に置き換えることができます。

```
aws eks describe-addon-versions --addon-name metrics-server
```

`owner` フィールドの CLI 出力を確認します。

```
{
    "addons": [
        {
            "addonName": "metrics-server",
            "type": "observability",
            "owner": "community",
            "addonVersions": [
```

`owner` の値が `community` の場合、アドオンはコミュニティ アドオンです。AWS は、アドオンのインストール、更新、および削除のサポートのみを提供します。アドオン自体の機能とオペレーションについて質問がある場合は、GitHub の問題などのコミュニティリソースを使用してください。

## コミュニティアドオンをインストールまたは更新する
<a name="_install_or_update_community_add_on"></a>

コミュニティアドオンは他の Amazon EKS アドオンと同じ方法でインストールまたは更新します。
+  [Amazon EKS アドオンを作成する](creating-an-add-on.md) 
+  [Amazon EKS アドオンを更新する](updating-an-add-on.md) 
+  [クラスターから Amazon EKS アドオンを削除する](removing-an-add-on.md) 

## 利用可能なコミュニティアドオン
<a name="_available_community_add_ons"></a>

Amazon EKS で利用できるコミュニティアドオンは次のとおりです。
+  [Kubernetes メトリクスサーバー](#kubernetes-metrics-server) 
+  [kube-state-metrics](#kube-state-metrics) 
+  [Prometheus Node Exporter](#prometheus-node-exporter) 
+  [Cert Manager](#addon-cert-manager) 
+  [外部 DNS](#external-dns) 
+  [Fluent Bit](#fluent-bit) 

### Kubernetes メトリクスサーバー
<a name="kubernetes-metrics-server"></a>

Kubernetes Metrics Server は、Kubernetes の組み込み自動スケーリングパイプラインのコンテナリソースメトリクスのスケーラブルで効率的なソースです。Kubelets からリソースメトリクスを収集し、Horizontal Pod Autoscaler と Vertical Pod Autoscaler で使用するメトリクス API を通じて Kubernetes apiserver で公開します。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `metrics-server`   | 
|  名前空間  |   `kube-system`   | 
|  ドキュメント  |   [GitHub Readme](https://github.com/kubernetes-sigs/metrics-server)   | 
|  サービスアカウント名  |  なし  | 
|  マネージド IAM ポリシー  |  なし  | 
|  カスタム IAM 許可  |  なし  | 

### kube-state-metrics
<a name="kube-state-metrics"></a>

クラスターレベルのメトリクスを生成して公開するアドオンエージェント。

Kubernetes API の Kubernetes オブジェクトの状態は、メトリクスとして公開できます。kube-state-metrics というアドオンエージェントは、Kubernetes API サーバーに接続し、クラスター内の個々のオブジェクトの状態から生成されたメトリクスを使用して HTTP エンドポイントを公開することができます。ラベルと注釈、起動時間と終了時間、オブジェクトの現在のステータスまたはフェーズなど、オブジェクトの状態に関するさまざまな情報が公開されます。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `kube-state-metrics`   | 
|  名前空間  |   `kube-state-metrics`   | 
|  ドキュメント  |   Kubernetes ドキュメントの「[Metrics for Kubernetes Object States](https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/)」  | 
|  サービスアカウント名  |  なし  | 
|  マネージド IAM ポリシー  |  なし  | 
|  カスタム IAM 許可  |  なし  | 

### Prometheus Node Exporter
<a name="prometheus-node-exporter"></a>

プラガブルメトリクスコレクターを使用して Go で記述された \$1NIX カーネルによって公開される、ハードウェアおよび OS メトリクス用の Prometheus エクスポーター。Prometheus Node Exporter は、さまざまなハードウェアおよびカーネル関連のメトリクスを公開します。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `prometheus-node-exporter`   | 
|  名前空間  |   `prometheus-node-exporter`   | 
|  ドキュメント  |   Prometheus ドキュメントの「[Monitoring Linux host metrics with the Node Exporter](https://prometheus.io/docs/guides/node-exporter/#monitoring-linux-host-metrics-with-the-node-exporter)」  | 
|  サービスアカウント名  |  なし  | 
|  マネージド IAM ポリシー  |  なし  | 
|  カスタム IAM 許可  |  なし  | 

### Cert Manager
<a name="addon-cert-manager"></a>

Cert Manager を使用すると、証明書の作成と更新を管理できます。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `cert-manager`   | 
|  名前空間  |   `cert-manager`   | 
|  ドキュメント  |   [Cert Manager のドキュメント](https://cert-manager.io/docs/)   | 
|  サービスアカウント名  |  なし  | 
|  マネージド IAM ポリシー  |  なし  | 
|  カスタム IAM 許可  |  なし  | 

### 外部 DNS
<a name="external-dns"></a>

外部 DNS EKS アドオンを使用すると、Kubernetes リソースを介して Route53 DNS レコードを管理できます。

外部 DNS アクセス許可を、管理対象とするホストゾーンの `route53:ChangeResourceRecordSets`、`route53:ListHostedZones`、`route53:ListResourceRecordSets` に縮小できます。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `external-dns`   | 
|  名前空間  |   `external-dns`   | 
|  ドキュメント  |   [GitHub Readme](https://github.com/kubernetes-sigs/external-dns)   | 
|  サービスアカウント名  |   `external-dns`   | 
|  マネージド IAM ポリシー  |   ` arn:aws:iam::aws:policy/AmazonRoute53FullAccess`   | 
|  カスタム IAM 許可  |  なし  | 

### Fluent Bit
<a name="fluent-bit"></a>

Fluent Bit は、軽量で高性能なログプロセッサおよびフォワーダーです。さまざまなソースからデータやログを収集して統合し、Amazon CloudWatch Logs、Amazon S3、Amazon Kinesis Data Firehose などの複数の送信先に送信できるようにします。Fluent Bit はパフォーマンスおよびリソースの効率を配慮して設計され、Kubernetes 環境に最適です。

このアドオンには、デフォルト設定で IAM アクセス許可は必要ありません。ただし、AWS 出力ロケーションを設定する場合、このアドオンに IAM アクセス許可を付与する必要がある場合があります。詳細については、「[Pod Identity を使用して Amazon EKS アドオンに IAM 役割を割り当てる](update-addon-role.md)」を参照してください。


| プロパティ | 値 | 
| --- | --- | 
|  アドオン名  |   `fluent-bit`   | 
|  名前空間  |   `fluent-bit`   | 
|  ドキュメント  |   [Fluent Bit のドキュメント](https://docs.fluentbit.io/manual/)   | 
|  サービスアカウント名  |   `fluent-bit`   | 
|  マネージド IAM ポリシー  |  なし  | 
|  カスタム IAM 許可  |  なし  | 

## 属性を表示する
<a name="_view_attributions"></a>

コミュニティアドオンのオープンソース属性とライセンス情報をダウンロードできます。

1. 属性をダウンロードするアドオンの名前とバージョンを決定します。

1. その名前とバージョンで次のコマンドを更新します。

   ```
   curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions/<add-on-name>/<add-on-version>/attributions.zip
   ```

   例えば、次のようになります。

   ```
   curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions/kube-state-metrics/v2.14.0-eksbuild.1/attributions.zip
   ```

1. コマンドを使用して、ファイルをダウンロードします。

この zip ファイルを使用して、ライセンス属性に関する情報を表示します。