MOテクノロジー

技術をメモしていくブログ

【AWS】amazon linuxのyumリポジトリはS3にある??

AmazonLinux2にPython3を入れたいなと思い、yum install python3でインストールした。
次にライブラリをインストールしようとpip installをしたところ、NWエラーが出た。

[aurumAdmin@ip-10-116-0-32 ~]$ pip3 install fabric
Collecting fabric
  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.VerifiedHTTPSConnection object at 0x7ff73c879250>: Failed to establish a new connection: [Errno 101] Network is unreachable')': /simple/fabric/

そういえば、このEC2って外部NWに繋がってないじゃんと思い納得。
あれ?じゃあなんでyum install python3はできたんだ?というところが謎に思ったので調べた。

yumリポジトリへの通信経路の違い

python3をyum installした時のリポジトリAmazon Linux 2 core repositoryを見にいっている。
じゃあEPELとかのリポジトリにも繋がるのかと思い試してみたが、こちらは繋がらなかった!
ということは、AWSリポジトリと、EPELとかのリポジトリは通信経路が違うことになる。

amzn-coreのある場所

調べたところ、AWSyumリポジトリはS3に存在しているらしい。
そのため、外部ネットワークに繋がらなくても、VPCエンドポイントの設定を入れることで通信ができるとのこと。
VPCエンドポイントを確認したところ、確かにその設定が入っていた。

参考

よくある質問 - Amazon Linux AMI | AWS
-> Q: VPC エンドポイントを設定して Amazon Linux AMI リポジトリへの接続を許可するにはどうすればよいですか?

VPC閉塞網からyumリポジトリにアクセスする(Amazon Linux & RHEL) - のぴぴのメモ