

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

# VPC Lattice サービスのカスタムドメイン名を設定する
<a name="service-custom-domain-name"></a>

新しいサービスを作成すると、VPC Lattice は次の構文でサービスの一意の完全修飾ドメイン名 (FQDN) を生成します。

```
service_name-service_id.partition_id.vpc-lattice-svcs.region.on.aws
```

ただし、VPC Lattice が提供するドメイン名は、ユーザーが覚えやすいものではありません。カスタムドメイン名は、ユーザーに提供できるシンプルで直感的な URLs です。VPC Lattice が生成した DNS 名ではなく、`www.parking.example.com` のようなカスタムドメイン名をサービスに使用する場合は、VPC Lattice サービスを作成するときに設定できます。クライアントがカスタムドメイン名を使用してリクエストを行うと、DNS サーバーが VPC Lattice が生成したドメイン名に解決します。

**前提条件**
+ サービス用に登録されたドメイン名が必要です。ドメイン名をまだ登録していない場合は、Amazon Route 53 やその他の商用レジストラから登録できます。
+ HTTPS リクエストを受信するには、 AWS Certificate Managerで独自の証明書を提供する必要があります。VPC Lattice はフォールバックとしてデフォルト証明書をサポートしていません。そのため、カスタムドメイン名に対応する SSL/TLS 証明書を提供しない場合、カスタムドメイン名への HTTPS 接続はすべて失敗します。詳細については、「[VPC Lattice の独自の証明書を使用する (BYOC)](service-byoc.md)」を参照してください。

**制約事項と考慮事項**
+ 1 つのサービスに複数のカスタムドメイン名を設定することはできません。
+ サービスの作成後にカスタムドメイン名を変更することはできません。
+ カスタムドメイン名は、サービスネットワークごとに一意である必要があります。つまり、同じサービスネットワーク内に (別のサービス用の) 既存のカスタムドメイン名を使用してサービスを作成することはできません。

次の手順は、サービスのカスタムドメイン名を設定する方法を示しています。

------
#### [ AWS マネジメントコンソール ]

**サービスのカスタムドメイン名を設定するには**

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

1. ナビゲーションペインの **[VPC Lattice]** で、**[サービス]** を選択します。

1. **[サービスを作成]** を選択します。**[ステップ 1: サービスを作成する]** に移動します。

1. **[カスタムドメイン設定]** セクションで、**[カスタムドメイン設定を指定]** を選択します。

1. カスタムドメイン名を入力します。

1. HTTPS リクエストを処理するには、**[カスタム SSL/TLS 証明書]** でカスタムドメイン名と一致する SSL/TLS 証明書を選択します。証明書がまだない場合、または今すぐ追加しない場合は、HTTPS リスナーの作成時に証明書を追加できます。ただし、証明書がないと、カスタムドメイン名は HTTPS リクエストを処理できません。詳細については、「[HTTPS リスナーの追加](https-listeners.md#add-https-listener)」を参照してください。

1. サービスを作成するためのその他の情報をすべて追加し終えたら、**[作成]** を選択します。

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

**サービスのカスタムドメイン名を設定するには**  
[create-service](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/create-service.html) コマンドを使用します。

```
aws vpc-lattice create-service --name service_name --custom-domain-name your_custom_domain_name --type https --certificate-arn arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012
```

上記のコマンドの `--name` にサービスの名前を入力します。`--custom-domain-name` には、`parking.example.com` などのサービスのドメイン名を入力します。`--certificate-arn` には、ACM の証明書の ARN を入力します。証明書 ARN は、 AWS Certificate Managerのアカウントで利用できます。

------

## カスタムドメイン名をサービスに関連付ける
<a name="dns-associate-custom"></a>

まず、カスタムドメイン名をまだ登録していない場合は、登録します。インターネットのドメイン名は、Internet Corporation for Assigned Names and Numbers (ICANN) によって管理されています。ドメイン名は、ドメイン名のレジストリを管理する ICANN 認定機関である*ドメイン名レジストラ*を使用して登録します。レジストラのウェブサイトで、ドメイン名の登録に関する詳細な手順と料金情報を確認します。詳細については、以下のリソースを参照してください。
+ Amazon Route 53 を使用してドメイン名を登録するには、*Amazon Route 53 開発者ガイド*の「[Route 53 を使用したドメイン名の登録](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html)」を参照してください。
+ 認定されているレジストラのリストについては、「[認定レジストラディレクトリ](http://www.internic.net/regist.html)」を参照してください。

次に、ドメインレジストラなどの DNS サービスを使用して、クエリをサービスにルーティングするレコードを作成します。詳細については、DNS サービスのドキュメントを参照してください。前出と別に、DNS サービスとして Route 53 を使用する方法もあります。

Route 53 を使用している場合は、エイリアスレコードまたは CNAME レコードを使用して、クエリをサービスにルーティングできます。ゾーン頂点とも呼ばれる DNS 名前空間の上部ノードにエイリアスレコードを作成できるため、エイリアスレコードを使用することをお勧めします。

Route 53 を使用している場合は、まずホストゾーンを作成する必要があります。ホストゾーンには、ドメインのインターネット上のトラフィックをルーティングする方法に関する情報が含まれています。プライベートホストゾーンまたはパブリックホストゾーンを作成したら、 などのカスタムドメイン名が `parking.example.com`などの VPC Lattice 自動生成されたドメイン名にマッピングされるようにレコードを作成します`my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws`。このマッピングがないと、カスタムドメイン名は VPC Lattice で機能しません。

次の手順は、Route 53 を使用してプライベートホストゾーンまたはパブリックホストゾーンを作成する方法を示しています。

------
#### [ AWS マネジメントコンソール ]

Route 53 を使用してサービスにクエリをルーティングするエイリアスレコードを作成するには、[「Amazon VPC Lattice サービスドメインエンドポイントへのトラフィックのルーティング](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-vpc-lattice-service.html)」を参照してください。

サービスに VPC Lattice が生成したドメイン名を使用します。たとえば、 **値**`my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws`に使用します。この自動生成されたドメイン名は、サービスページの VPC Lattice コンソールにあります。

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

**ホストゾーンにエイリアスレコードを作成するには**

1. サービスの VPC Lattice 生成ドメイン名を取得します (例: `my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws`)。

1. エイリアスを設定するには、以下のコマンドを使用します。

   ```
   aws route53 change-resource-record-sets --hosted-zone-id your-hosted-zone-ID --change-batch file://~/Desktop/change-set.json
   ```

   `change-set.json` ファイルは、次の JSON 例の内容で JSON ファイルを作成し、ローカルマシンに保存します。上記のコマンドの *file://\$1/Desktop/change-set.json* を、ローカルマシンに保存されている JSON ファイルのパスに置き換えます。次の JSON の "Type" は A または AAAA レコードタイプであることに注意してください。

   ```
   {
       "Comment": "my-custom-domain-name.com alias",
       "Changes": [
           {
               "Action": "CREATE",
               "ResourceRecordSet": {
                   "Name": "my-custom-domain-name.com",
                   "Type": "alias-record-type",
                   "AliasTarget": {
                       "HostedZoneId": "your-hosted-zone-ID",
                       "DNSName": "lattice-generated-domain-name",
                       "EvaluateTargetHealth": true
                   }
               }   
           }
       ] 
   }
   ```

------