Amazon Linux 2 からインターネットアクセスなしで Yum でパッケージをインストールできることを確認した。
- Private Subnet に EC2 インスタンス(Amazon Linux 2)を作成する
- S3 の VPC エンドポイント(Gateway型)を作成する
- Yum で PostgreSQL と jq をインストールする
$ sudo yum -y install postgresql postgresql-contrib postgresql-devel jq (中略) running transaction check Running transaction test Transaction test succeeded Running transaction Installing : postgresql-libs-9.2.24-6.amzn2.x86_64 1/8 Installing : postgresql-9.2.24-6.amzn2.x86_64 2/8 Installing : oniguruma-5.9.6-1.amzn2.0.4.x86_64 3/8 Installing : uuid-1.6.2-26.amzn2.0.1.x86_64 4/8 Installing : libxslt-1.1.28-6.amzn2.x86_64 5/8 Installing : postgresql-contrib-9.2.24-6.amzn2.x86_64 6/8 Installing : jq-1.5-1.amzn2.0.2.x86_64 7/8 Installing : postgresql-devel-9.2.24-6.amzn2.x86_64 8/8 Verifying : postgresql-contrib-9.2.24-6.amzn2.x86_64 1/8 Verifying : libxslt-1.1.28-6.amzn2.x86_64 2/8 Verifying : postgresql-libs-9.2.24-6.amzn2.x86_64 3/8 Verifying : jq-1.5-1.amzn2.0.2.x86_64 4/8 Verifying : uuid-1.6.2-26.amzn2.0.1.x86_64 5/8 Verifying : postgresql-9.2.24-6.amzn2.x86_64 6/8 Verifying : postgresql-devel-9.2.24-6.amzn2.x86_64 7/8 Verifying : oniguruma-5.9.6-1.amzn2.0.4.x86_64 8/8 Installed: jq.x86_64 0:1.5-1.amzn2.0.2 postgresql.x86_64 0:9.2.24-6.amzn2 postgresql-contrib.x86_64 0:9.2.24-6.amzn2 postgresql-devel.x86_64 0:9.2.24-6.amzn2 Dependency Installed: libxslt.x86_64 0:1.1.28-6.amzn2 oniguruma.x86_64 0:5.9.6-1.amzn2.0.4 postgresql-libs.x86_64 0:9.2.24-6.amzn2 uuid.x86_64 0:1.6.2-26.amzn2.0.1 Complete!
- VPCエンドポイントポリシーで絞るときは以下のように記述する
{ "Version": "2012-10-17", "Id": "Access-to-specific-S3-bucket-only", "Statement": [ { "Sid": "Access-to-specific-S3-bucket-only", "Effect": "Allow", "Principal": "*", "Action": "s3:*", "Resource": [ "arn:aws:s3:::amazonlinux.ap-northeast-1.amazonaws.com/*", "arn:aws:s3:::amazonlinux-2-repos-ap-northeast-1/*" ] } ] }