Auroraのカスタムエンドポイントを検証しました。

## はじめに
業務で読み込み用カスタムエンドポイントを作成して動作を検証する際のメモですがどなたかの参考になれば幸いです

## 動作環境
- Cluster名: test-cluster
- write: test-a
- read: test-b

## エンドポイントの作成
```
$ aws rds create-db-cluster-endpoint --db-cluster-identifier test-cluster --db-cluster-endpoint-identifier test --endpoint-type reader
{
    "DBClusterEndpointIdentifier": "test",
    "DBClusterIdentifier": "test-cluster",
    "DBClusterEndpointResourceIdentifier": "cluster-endpoint-xxxxxxx",
    "Endpoint": "test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com",
    "Status": "creating",
    "EndpointType": "CUSTOM",
    "CustomEndpointType": "READER",
    "StaticMembers": [],
    "ExcludedMembers": [],
    "DBClusterEndpointArn": "arn:aws:rds:ap-northeast-1:xxx:cluster-endpoint:test"
}
```

## エンドポイントの確認
```
$ aws rds describe-db-cluster-endpoints --db-cluster-identifier test-cluster --db-cluster-endpoint-identifier test
{
    "DBClusterEndpoints": [
        {
            "DBClusterEndpointIdentifier": "test",
            "DBClusterIdentifier": "test-cluster",
            "DBClusterEndpointResourceIdentifier": "cluster-endpoint-xxxxxxx",
            "Endpoint": "test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com",
            "Status": "available",
            "EndpointType": "CUSTOM",
            "CustomEndpointType": "READER",
            "StaticMembers": [],
            "ExcludedMembers": [],
            "DBClusterEndpointArn": "arn:aws:rds:ap-northeast-1:xxx:cluster-endpoint:test"
        }
    ]
}
```
## 出来上がったカスタムエンドポイントでDNS確認
```
$ dig test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com +short
test-b.xxx.ap-northeast-1.rds.amazonaws.com.
172.31.18.184
```

## フェイルオーバーをしてみる
ここでtest-clusterをフェイルオーバーします。
test-a ⇔ test-b が入れ替わったのを確認

## ファイルオーバー後に確認
```
$ dig test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com +short
test-a.xxx.ap-northeast-1.rds.amazonaws.com.
172.31.9.243
```

## 読み込み用インスタンスの追加
ここでtest-cというインスタンスを追加します

## digで確認
test-cという読み込みインスタンスを追加するとIP引けるようになってしまった

```
$ dig test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com +short
test-c.xxx.ap-northeast-1.rds.amazonaws.com.
172.31.18.222
$ dig test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com +short
test-a.xxx.ap-northeast-1.rds.amazonaws.com.
172.31.9.243
```

## test-cを除外する
```
$ aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier test --excluded-members test-c
```
```
$ aws rds describe-db-cluster-endpoints --db-cluster-identifier test-cluster --db-cluster-endpoint-identifier test
{
    "DBClusterEndpoints": [
        {
            "DBClusterEndpointIdentifier": "test",
            "DBClusterIdentifier": "test-cluster",
            "DBClusterEndpointResourceIdentifier": "cluster-endpoint-xxx",
            "Endpoint": "test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com",
            "Status": "available",
            "EndpointType": "CUSTOM",
            "CustomEndpointType": "READER",
            "StaticMembers": [],
            "ExcludedMembers": [
                "test-c"
            ],
            "DBClusterEndpointArn": "arn:aws:rds:ap-northeast-1:xxx:cluster-endpoint:test"
        }
    ]
}
```

## digで確認
```
$ dig test.cluster-custom-xxx.ap-northeast-1.rds.amazonaws.com +short
test-a.xxx.ap-northeast-1.rds.amazonaws.com.
172.31.9.243
```