Amazon S3 Access PointsをCloudFormationで利用してみた #reinvent
こんにちは。AWS事業本部のShirotaです。
GAが発表されたばかりの新サービス「Amazon S3 Access Points」を早速触ってみました。
今日は、その「触ってみた」をお話ししたいと思います。
Amazon S3 Access PointsのGAが発表されましたね
re:Invent2019の基調講演にて、Amazon S3 Access PointsのGAが発表されました!
その時の速報ブログはこちらになります。
簡単なAccess Pointsの作成方法も記載してあり、参考になります。
[速報]アクセスポリシーを持ったS3のアクセスポイント「Amazon S3 Access Points」がGAになりました! #reinvent
公式の発表を見ていると、以下のような記載がありました。
You can use S3 Access Points with AWS CloudFormation.
引用元: Easily Manage Shared Data Sets with Amazon S3 Access Points
どうやら、S3 Access PointsをCloudFormationで利用できる模様です。
気になったので、早速試してみました。
S3 Access Pointsを作成してCloudFormationで利用してみた
まずは、S3 Access Pointsを作成しました。
コンソール上での手順は、上記の速報ブログを参考にしました。
今回は、「s3-test-access-points-from-cfn」というアクセスポイントを作成しました。ネットワークアクセスタイプは「インターネット」で作っています。
▲ S3バケット名とアクセスポイント名が被ってしまったのに気付いた時は、後の祭りだった
また、アクセスポイントを設けたバケットの配下には「test-access-points-vpc.yaml」という、CloudFormationで使うとVPCやサブネットを作れるCloudFormation用のオブジェクトを配置しました。
中身は、こんな感じになっています。
AWSTemplateFormatVersion: "2010-09-09" Description: VPC Network Template Parameters: NameTagPrefix: Type: String Default: test Description: Prefix of Name tags. VPCCIDR: Description: First and Second Octet of VPC, For example (10.0/172.16/192.168) Type: String Default: "10.0" AllowedPattern: "^(10\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])|172\\.(1[6-9]|2[0-9]|3[0-1])|192\\.168)$" ConstraintDescription: xxx.xxx Mappings: StackConfig: VPC: CIDR: ".0.0/16" AppSubnet1: CIDR: ".1.0/24" AppSubnet2: CIDR: ".2.0/24" DBSubnet1: CIDR: ".3.0/24" DBSubnet2: CIDR: ".4.0/24" Resources: VPC: Type: AWS::EC2::VPC Properties: CidrBlock: !Sub ["${VPCCIDR}${Param1}",{ Param1: !FindInMap [StackConfig, VPC, CIDR] },] EnableDnsSupport: "true" EnableDnsHostnames: "true" InstanceTenancy: default Tags: - Key: Name Value: !Sub ${NameTagPrefix}-VPC 〜以下略〜
アクセスポイントを作ると、以下のURLでのアクセスが可能になります。
https://s3-test-access-points-from-cfn-XXXXXXXXXXXX.s3-accesspoint.ap-northeast-1.amazonaws.com/test-access-points-vpc.yaml
このURLを、CloudFormationで使ってみます。
今回は、コンソールからCloudFormationのスタック作成をやってみます。
「Amazon S3 URL」の欄に、S3 Access PointsのURLを入力します。
▲ CloudFormationのdesignerは対応してなかった
すると、次のステップに進めました!
▲ 後はいつも通り
ちなみに、「アクセスポイントを使用」を実行していなくても利用できました。
▲ 無事、スタックが作成できリソースも作成された!
使ってみて思った事
元々のS3のURLと同じように使える為、AWS CLIやSDKでの利用が捗るなと感じました。
今回は試さなかったのですが、指定したVPC内でのみの利用もできるようなのでアクセスポイントのURLの利用方法はまだまだいっぱい広がっていそうです。
S3 Access Pointsが気になったら……
既にGAされたサービスなので、いっぱい触りましょう!
また、情報はこれからアップデートが進んでいくと思うので、検証の際には AWS CLIを最新バージョンにする 等の、環境のアップデートを忘れないようにしましょう。
弊社ブログにも、早速役立つブログやレポートが集まってきています。
S3アクセスポイントのうれしい点を自分なりの理解で解説してみる #reinvent
ぜひ、お時間のある際にこちらも読んで頂けますとより理解が深まるかと思われます。