

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

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

# 最適化された Bottlerocket AMI を使用してノードを作成する
<a name="eks-optimized-ami-bottlerocket"></a>

 [Bottlerocket](https://aws.amazon.com/bottlerocket/) は、AWS がスポンサーおよびサポートするオープンソースの Linux ディストリビューションです。Bottlerocket は、コンテナワークロードをホストするために専用に構築されています。Bottlerocket を使用すると、コンテナインフラストラクチャの更新を自動化することで、コンテナ化されたデプロイの可用性を向上させ、運用コストを削減できます。Bottlerocket には、コンテナの実行に不可欠なソフトウェアのみが含まれており、リソース使用率の向上、セキュリティ上の脅威の軽減、管理オーバーヘッドの軽減が実現されます。Bottlerocket AMI には、`containerd`、`kubelet`、および AWS IAM Authenticator が含まれます。Bottlerocket は、マネージド型ノードグループとセルフマネージド型ノードに加え、[Karpenter](https://karpenter.sh/) でもサポートされています。

## 利点
<a name="bottlerocket-advantages"></a>

Amazon EKS クラスターと Bottlerocket を使用すると次のようなメリットがあります。
+  **運用コストが低く、管理の複雑さが軽減されたことによるアップタイムの向上** – Bottlerocket は、他の Linux ディストリビューションよりもリソースフットプリントが小さく、ブート時間が短く、セキュリティ脅威に対する脆弱性が低くなります。Bottlerocket のフットプリントが小さいため、ストレージ、コンピューティング、ネットワークリソースの使用量が減り、コストを削減できます。
+  **OS の自動更新によるセキュリティの向上** — Bottlerocket への更新プログラムは単一のユニットとして適用され、必要に応じてロールバックできます。これにより、システムが使用不能な状態にさらす更新プログラムの破損または失敗のリスクをなくします。Bottlerocket を使用すると、セキュリティ更新プログラムが利用可能になり次第、中断を最小限に抑えながら自動的に適用され、障害が発生した場合はロールバックできます。
+  **プレミアムサポート** — Amazon EC2 で AWS が提供する Bottlerocket のビルドは、Amazon EC2、Amazon EKS、Amazon ECR などの AWS サービスも対象とする同じ AWS サポートプランの対象となります。

## 考慮事項
<a name="bottlerocket-considerations"></a>

Bottlerocket を AMI タイプに使用する際、次の事項を考慮してください。
+ Bottlerocket は、`x86_64` と `arm64` プロセッサを搭載した Amazon EC2 インスタンスをサポートします。
+ Bottlerocket は、GPU を搭載した Amazon EC2 インスタンスをサポートします。詳細については、「[GPU インスタンス向けに EKS 最適化高速 AMI を使用する](ml-eks-optimized-ami.md)」を参照してください。
+ Bottlerocket イメージには、SSH サーバーまたはシェルは含まれません。帯域外のアクセス方法を使用して SSH を許可できます。これらの手法は、管理者コンテナを有効にし、ユーザーデータでブートストラップの設定ステップの渡しを可能にします。詳細については、GitHub の「[Bottlerocket OS](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md)」内にある次のセクションを参照してください。
  +  [探査](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md#exploration) 
  +  [管理者コンテナ](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md#admin-container) 
  +  [Kubernetes 設定](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md#kubernetes-settings) 
+ Bottlerocket は以下のさまざまなコンテナタイプを使用します。
  + デフォルトで、「[コントロールコンテナ](https://github.com/bottlerocket-os/bottlerocket-control-container)」は有効になっています。このコンテナは、Amazon EC2 Bottlerocket インスタンス上でのコマンドの実行や、シェルセッションの開始に使用できる [AWS Systems Manager エージェント](https://github.com/aws/amazon-ssm-agent)を実行します。詳細については、*AWS Systems Manager ユーザーガイド*の「[Session Manager のセットアップ](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html)」を参照してください。
  + ノードグループの作成時に SSH キーが与えられる場合、管理者コンテナが有効になります。admin container は、開発とテストのシナリオにのみ使用することをお勧めします。本番環境で使用することはお勧めしません。詳細については、GitHub の [Admin container](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md#admin-container) を参照してください。

## 詳細情報
<a name="bottlerocket-more-information"></a>

Amazon EKS 最適化 Bottlerocket AMI の使用に関する詳細については、以下のセクションを参照してください。
+ Bottlerocket の詳細については、[Bottlerocket のドキュメント](https://bottlerocket.dev/en/)を参照してください。
+ バージョン情報のリソースについては、「[Bottlerocket AMI のバージョン情報を取得する](eks-ami-versions-bottlerocket.md)」を参照してください。
+ Bottlerocket をマネージド型ノードグループと使用するには、「[マネージドノードグループを使用してノードライフサイクルを簡素化する](managed-node-groups.md)」を参照してください。
+ セルフマネージド型の Bottlerocket ノードを起動するには、「[セルフマネージド Bottlerocket ノードの作成](launch-node-bottlerocket.md)」を参照してください。
+ Amazon EKS 最適化 Bottlerocket AMI の最新の ID を取得するには、「[推奨 Bottlerocket AMI ID を取得する](retrieve-ami-id-bottlerocket.md)」を参照してください。
+ コンプライアンスサポートの詳細については、「[Bottlerocket を使用してコンプライアンス要件に準拠する](bottlerocket-compliance-support.md)」を参照してください。