

# Amazon EC2 マネージドインスタンス
<a name="amazon-ec2-managed-instances"></a>

*Amazon EC2 マネージドインスタンス*はEKS [自動モード](https://docs.aws.amazon.com/eks/latest/userguide/automode.html)による Amazon EKS などの指定されたサービスプロバイダーによってプロビジョニングおよび管理される EC2 インスタンスです。マネージドインスタンスはAmazon EC2 でコンピューティングワークロードを実行するための簡単な方法を提供します。これにより、インスタンスの運用管理をサービスプロバイダーに委任できます。

管理されたインスタンスに導入される唯一の変更は委任コントロールです。技術仕様と請求は非管理された EC2 インスタンスと同じです。管理されたインスタンスを使用すると、サービスプロバイダーに制御を委任できるため、サービスプロバイダーの運用上の専門知識とベストプラクティスを活用できます。インスタンスが管理されている場合、サービスプロバイダーはインスタンスのプロビジョニング、ソフトウェアの設定、容量のスケーリング、インスタンスの障害と置換の処理、インスタンスの終了などのタスクを担当します。

マネージドインスタンスの設定を直接変更したり、終了したりすることはできません。サービスと特定のオペレーションはお客様とサービスプロバイダーの間の契約によって決まります。ただし、管理されたインスタンスのタグを追加、変更、または削除して、AWS環境内で分類できます。

**Topics**
+ [管理されたインスタンスの請求](#billing-for-ec2-managed-instances)
+ [管理されたインスタンスを特定する](#identify-ec2-managed-instances)
+ [マネージドリソースの可視性設定](#managed-resource-visibility-settings)
+ [インスタンスの使用を開始する](#get-started-with-ec2-managed-instances)

## 管理されたインスタンスの請求
<a name="billing-for-ec2-managed-instances"></a>

Amazon EC2 マネージドインスタンスには非マネージド Amazon EC2 インスタンスと同じ基本料金と、サービスプロバイダーの別の料金が発生します。この追加料金はインスタンスを管理するサービスプロバイダーによって課金され、個別に請求されます。管理されたインスタンスの運用と保守のために提供されるサービスのコストをカバーします。

オンデマンドインスタンス、リザーブドインスタンス、スポットインスタンス、Savings Plans など、すべての [Amazon EC2 購入オプション](instance-purchasing-options.md)がマネージドインスタンスで使用できます。コンピューティングを EC2 から直接調達し、サービスプロバイダーに提供することで、アカウントに適用されている既存のリザーブドインスタンスまたは Savings Plans のメリットを享受できるため、利用可能な最も費用対効果の高いコンピューティングキャパシティーを使用できます。

例えば、Amazon EKS Auto Mode を使用する場合、基盤となるインスタンスの標準の EC2 インスタンス料金に加えて、ユーザーに代わってインスタンスを管理するための Amazon EKS からの追加料金を支払います。その後、[Savings Plans](https://docs.aws.amazon.com/savingsplans/latest/userguide/what-is-savings-plans.html) にサインアップすると、EC2 インスタンス料金は Savings Plans によって削減されますが、Amazon EKS からの追加料金は変更されません。

## 管理されたインスタンスを特定する
<a name="identify-ec2-managed-instances"></a>

管理されたインスタンスは**管理された** フィールドの **正** 値によって識別されます。サービスプロバイダーは**オペレータ**フィールド (コンソール) または `Principal`フィールド (CLI) で識別されます。

管理されたインスタンスを識別するには次の手順に従います。

------
#### [ Console ]

**管理されたインスタンスを識別するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインで、[**インスタンス**] を選択してください。

1. 削除するインスタンスを選択してください。

1. **詳細**タブ (チェックボックスを選択した場合) または概要エリア (インスタンス ID を選択した場合) で、**管理**対象フィールドを見つけます。
   + **正** の値は管理されたインスタンスを示します。
   + **誤** の値は非管理されたインスタンスを示します。

1. **管理された** が **正** に設定されている場合、**オペレータ**フィールドにはインスタンスの管理を担当するサービスプロバイダーを識別する値が表示されます。例えば、**eks.amazonaws.com** の値は Amazon EKS をサービスプロバイダーとして識別します。

------
#### [ AWS CLI ]

**管理されたインスタンスを識別するには**  
[describe-instances ](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) コマンドを使用して、インスタンス ID を指定します。

```
aws ec2 describe-instances \
    --instance-ids {{i-1234567890abcdef0}} \
    --query Reservations[].Instances[].Operator
```

以下は出力の例です。`Managed` が `true` である場合、インスタンスはマネージドインスタンスであり、`Principal` が含まれています。プリンシパルはインスタンスを管理するサービスプロバイダーです。例えば、 の値は Amazon EKS をサービスプロバイダーとして`eks.amazonaws.com`識別します。

```
[
    {
        "Managed": true,
        "Principal": "eks.amazonaws.com"
    }
]
```

**マネージドインスタンスを見つけるには**  
[describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) コマンドを使用して、`operator.managed` および フィルターを持つパラメータを指定します `true`。`--query` オプションには、マネージドインスタンスの ID のみが表示されます。

```
aws ec2 describe-instances \
    --filters "Name=operator.managed,Values=true" \
    --query Reservations[*].Instances[].InstanceId
```

------
#### [ PowerShell ]

**管理されたインスタンスを識別するには**  
[Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) コマンドレットを使用します。

```
(Get-EC2Instance -InstanceId {{i-1234567890abcdef0}}).Instances.Operator
```

以下は出力の例です。

```
Managed Principal
------- ---------
True    eks.amazonaws.com
```

**マネージドインスタンスを見つけるには**  
[Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) コマンドレットを使用します。この例では、マネージドインスタンスの ID のみが表示されます。

```
(Get-EC2Instance -Filter @{Name="operator.managed"; Values="true"}).Instances.InstanceId
```

------

## マネージドリソースの可視性設定
<a name="managed-resource-visibility-settings"></a>

AWS サービスがユーザーに代わってプロビジョニングするリソースが Amazon EC2 コンソールビューおよび API リストオペレーションに表示されるかどうかを制御できます。

### マネージドリソースの可視性とは
<a name="what-is-managed-resource-visibility"></a>

Amazon EKS、Amazon ECS、WorkSpaces Core、AWS Lambda などの AWS サービスは、アカウント内で Amazon EC2 インスタンスを直接プロビジョニングおよび運用します。これらのサービスは、スケーリング、OS パッチ、セキュリティ更新、ライフサイクル管理の責任を負います。結果として得られる Amazon EC2 インスタンス、Amazon EC2 起動テンプレート、Amazon EBS ボリューム、ネットワークインターフェイス (ENI) は、Amazon EC2 コンソールと API のカスタマーマネージドリソースとともに表示されます。マネージドリソースの可視性設定により、これらのマネージドリソースがリソースビューに表示されるかどうかを制御できます。

### 影響を受けるリソースタイプ
<a name="managed-resource-visibility-affected-resource-types"></a>


| リソースタイプ | これらのリソースをプロビジョニングするサービス | 説明 | 
| --- | --- | --- | 
| Amazon EC2 インスタンス | Amazon EKS ワーカーノード、Amazon ECS コンテナインスタンス、AWS Lambda 実行環境、Amazon WorkSpaces Core | 可視性設定の影響を受けるプライマリリソースタイプ | 
| Amazon EC2 起動テンプレート | Amazon EKS、Amazon ECS、Amazon WorkSpaces Core | マネージドサービスによって作成された起動テンプレート | 
| Amazon EBS ボリューム | Amazon EKS、Amazon ECS、Amazon WorkSpaces Core | マネージドインスタンスにアタッチされたボリューム | 
| ネットワークインターフェイス (ENI) | Amazon EKS、Amazon ECS、AWSLambda、Amazon WorkSpaces Core | マネージドワークロード用にプロビジョニングされたネットワークインターフェイス | 

**注記**  
デフォルトでは、Amazon EC2 は、可視性設定が利用可能になる前にマネージドリソースを保有していなかったアカウントについて、それらのリソースを非表示にします。すでにマネージドリソースが存在するアカウントについては、Amazon EC2 は既存のワークフローを維持するため、可視性設定を **表示** に設定します。可視性設定は、作成時期にかかわらず、リージョン内のすべてのマネージドリソースに適用されます。可視性設定はいつでも変更できます。

### 可視性設定を構成する理由
<a name="managed-resource-visibility-why-configure"></a>

可視性設定を構成すると、運用ツール全体でマネージドリソースがどのように表示されるかを調整できます。一般的ユースケースには以下が含まれます。
+ コンプライアンスダッシュボードのリソース数をカスタマーマネージドリソースのみに減らすことで、ガバナンスを簡素化します。
+ アカウント内のすべてのインスタンスで Amazon EC2 メトリクスを集約するオブザーバビリティツールのノイズを減らします。
+ マネージドリソースを顧客の設定ミスとしてフラグ付けするクラウドセキュリティ体制管理 (CSPM) スキャナー (Qualys など) の誤検出を防止します。
+ マネージドインスタンスでは、AWS が Amazon EC2 インスタンスの設定、パッチ適用、正常性に責任を持ちます。可視性を制御することで、エンドユーザーに責任共有モデルをより明確に表現できます。

**注記**  
可視性設定は、AWS コンソールビューと API リストオペレーションでのリソースの表示を制御します。請求、リソースオペレーション、実際のアクセス許可には影響しません。非表示のリソースは完全に動作し、請求可能です。

### マネージドリソースの可視性を設定
<a name="configuring-managed-resource-visibility"></a>

Amazon EC2 コンソールまたは AWS CLI を使用して、マネージドリソースの表示設定を行うことができます。

------
#### [ Console ]

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインで、**ダッシュボード**を選択してください。

1. **アカウント属性**カードの**設定**で、**マネージドリソース**を選択します。

1. **[Modify]** (変更) を選択します。

1. **デフォルトの可視性**で、次のいずれかのオプションを選択します。
   + **非表示 (デフォルト)** – すべてのマネージドリソースを非表示にします。
   + **表示** – すべてのマネージドリソースを表示します。

1. **可視性の変更**を選択します。

------
#### [ AWS CLI ]

**現在の可視性設定を取得**  
[get-managed-resource-visibility](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-managed-resource-visibility.html) コマンドを使用して、現在の可視性設定を取得します。

```
aws ec2 get-managed-resource-visibility
```

レスポンスの例:

```
{
    "visibility": {
        "defaultVisibility": "hidden"
    }
}
```

**すべてのマネージドリソースを非表示にする**  
[modify-managed-resource-visibility](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-managed-resource-visibility.html) コマンドを使用して、演算子に関係なくすべてのマネージドリソースを非表示にします。

```
aws ec2 modify-managed-resource-visibility \
    --default-visibility "hidden"
```

------

### 非表示のマネージドリソースを検出
<a name="discovering-hidden-managed-resources"></a>

可視性をオフにしても、マネージドリソースにアクセスできます。次のメソッドは、オンデマンドでそれらを表示します。

1. **サービス固有のコンソール**: それぞれの AWS サービスコンソール (Amazon EKS コンソールなど) に移動して、そのサービス用にプロビジョニングされたインスタンスを表示します。サービスコンソールには、サービスがアカウントで管理するすべてのリソースの詳細が表示されます。

1. **直接 API クエリ**: 特定の `instance-id` パラメータで `describe-instances` API を使用します。既知のインスタンス ID を持つ直接クエリは、可視性設定に関係なく結果を返します。可視性設定は、リストオペレーションとフィルターオペレーションにのみ影響します。`include-managed-resources` パラメータで `describe-instances` を使用して、マネージドインスタンスを検出することもできます。

**注記**  
同一の direct-query-by-ID 動作は、影響を受けるすべてのリソースタイプに適用されます。`describe-volumes`、`describe-launch-templates`、`describe-network-interfaces` を特定のリソース ID とともに使用して、それらのタイプの非表示のマネージドリソースにアクセスできます。

### 請求に関する考慮事項
<a name="managed-resource-visibility-billing"></a>

マネージドリソースの可視性設定は、請求には影響しません。非表示のマネージドインスタンスは、アカウント内で実行され、ユーザーに代わってプロビジョニングされ、可視性設定に関係なく完全に請求可能なリソースであるため、引き続き請求データに表示されます。

非表示のリソースは、次の場所に表示されます。
+ AWS の請求書
+ AWS コストと使用状況レポート

**重要**  
マネージドインスタンスはアカウントにプロビジョニングされ、コンピューティングリソースを消費します。コンソールビューから非表示にしても、コストは削減されません。マネージドインスタンスの料金の詳細については、サービス固有の請求ドキュメント ([Amazon EKS 料金表](https://aws.amazon.com/eks/pricing/)、[Amazon ECS 料金表](https://aws.amazon.com/ecs/pricing/)など) を参照してください。

### 制限事項
<a name="managed-resource-visibility-limitations"></a>
+ 可視性設定はアカウント全体に適用され、すべての IAM プリンシパルに均一に影響します。
+ リソースタイプまたはリソースを作成したサービスによって、マネージドリソースを選択的に表示または非表示にすることはできません。たとえば、Lambda、Amazon ECS、Amazon WorkSpaces によって作成されたマネージドインスタンスを非表示にしながら、Amazon EKS によって作成されたマネージドインスタンスを表示するように選択することはできません。

## インスタンスの使用を開始する
<a name="get-started-with-ec2-managed-instances"></a>

マネージドインスタンスの使用に関するガイダンスについては*「Amazon EKS*[ ユーザーガイド」の「EKS 自動モードでクラスターインフラストラクチャを自動化](https://docs.aws.amazon.com/eks/latest/userguide/automode.html)する」を参照してください。