LoginSignup
0
0

More than 3 years have passed since last update.

いまさらですが、AmazonLinux2 で yum できなくて困った話

Posted at

久しぶりに AWS で VPC を構築する機会があり、コンソールを開いたが、色々変わっていた。
Multi AZ, 4Subnet(public x2, Private x2) の NAT@Public, WORKER@Private な一般的な構成で、WORKER サーバから yum 出来なくて困った。

Amazon Linux(2) の yum リポジトリは S3

とのことで、エンドポイントの設定をすれば良いと、あちこちに書いてあったので、設定。(したが、それだけではつながらなかった)

Endpoint の Policy 設定

VPC > エンドポイント > ポリシー

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "AmazonLinux2AMIRepositoryAccess",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::amazonlinux.*.amazonaws.com/*"
        }
    ]
}

こいつを作成して、Private 側の Route Table にくっつける。

Sub Route Table

しばらくすると、勝手に追加される。

Source Target Note
x.x.x.0/xx local default set
xxxx:xx....::/xx local default set
pl-xxxx.s3, ... vpce-xxxx これが追加される
0.0.0.0/0 eni-xxxx Instance of NAT
::/0 eni-xxxx Instance of NAT

yum のリポジトリのある S3 には、NAT インスタンスを通らずに、直接アクセスする。
ただし、私の環境では、これだけではつながらなかった。

Security Group(or NACL) の設定

Security Group なり Network ACL の設定で、Private Subnet にあるサーバが直接 S3 にアクセスできないと、yum できない。当たり前。S3 の IP Range は、

VPC > マネージドプレフィックスリスト

から見つけることができる。S3 と Dynamo が用意されていた。
私の場合は、NACL は緩く、SG で締める方針にしていたので、SG の Outbound に S3 のマネージドプレフィックスリストを追加したところ、yum が通るようになった。

おわりに

ネット上では、ポリシーの追加の話はたくさん見かけるが、SG の話が見当たらなかったのは、そもそも S3 に接続する設定があった上で、yum のリポジトリが変更になったからだろうか?よく分からないが、何か出来ない場合は、ネットを検索して一発解決策を探したくなるが、どういう経路でどんな通信を許可/拒否したくて、それに必要な設定がなされているかを、1つずつ潰していけば解決する。と再確認。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0