クラウドインテグレーション部 SRE1課の沓名(くつな)です。 2021年12月入社で、前職ではLinuxサーバの構築・保守などをしていました。 クラウドの業務をしたくてサーバーワークスに入社しました。よろしくお願いします。
さて、今回は2021年11月に公開されたAWSに最適化されたLinuxディストリビューションの次世代バージョン「Amazon Linux 2022」のプレビュー版を、数時間使っただけですが、他の方が踏んでない視点でレビューしてみましょう。
Amazon Linux 2022とは
AWSを利用している方にはご存じだと思いますが、現在主流の「Amazon Linux 2」はRHEL7をベースに、AWS向けにカスタマイズされたLinuxディストリビューションです。 2023年6月30日までサポートされます。
Amazon Linux 2022は、RedHatがサポートするコミュニティ版Linuxディストリビューションの「Fedora」をベースにAWS向けにカスタマイズしたディストリビューションとしています。
Amazon Linux 2022のサポート予定期間
上記のアナウンスによると、「AL2022 以降、新しい Amazon Linux メジャーバージョンが 2 年ごとに利用可能になり、各バージョンは 5 年間サポートされます。また、マイナーリリースを介して四半期ごとの更新を利用し、アプリケーションに最新のソフトウェアを使用することもできます。」とあります。
Amazon Linux 2022以降は、次に2024、その次に2026がリリースされる。 各バージョンは4か月毎にマイナーアップデート、4月に2022.1、7月に2022.2などがリリースされるということだと思われます。 それが5年間利用できるそうです。
アップストリームにFedoraを使うとありましたが、Fedoraは半年ごとに新バージョンがリリースされ、2バージョン先がリリースされるとサポートが終わります。つまり13か月程度でアップストリームのメンテナンスが終了するわけですが...どうやってAmazon Linux 2022以降のアップデートが行われるか興味深いですね。
ちょっと使ってみた感想
検証環境に「Amazon Linux 2022」のEC2を作ってみました。
EC2の用意
利用したバージョンは「al2022-ami-2022.0.20211118.0-kernel-5.10-x86_64」です。
Amazon Linux 2022は、EC2インスタンス作成の際にAMIとして「カスタムAMI」から「al2022」をキーワードに検索すると利用できるイメージ候補が一覧されます。
この先は、いつものEC2インスタンスを作るようにネットワークやストレージを選択して起動できます。
SSHログイン
私はリモートログイン・ターミナルに「rlogin」を利用しています。
12月入社後、いくつかAmazon Linux 2のEC2インスタンスを作成してSSHログインしていましたが、Amazon Linux 2022にSSHログインしようとしたらログインできませんでした。
ログインできなかった理由は、Amazon Linux 2022ではOpenSSH 8.6p1が利用されているからです。 OpenSSH 8.5から RSA/SHA1 署名が廃止されています。 rloginではプロトコルでの署名設定変更でログインできるようになりました。 ほかのターミナルソフトウェアによっては、同じように署名の設定変更が必要かもしれません。
SELinux
Amazon Linux 2ではSELinuxが無効になっていたそうですが、Amazon Linux 2022では有効になりました。 昨今のセキュリティインシデントを見ても、SELinuxの有効性はあると思うので積極的に利用していきたいですね。
EPEL
Amazon Linux 2では、Fedora Projectが提供するEPEL(Extras package for Enterprise Linux)リポジトリのような、amazon-extrasリポジトリが利用できていました。
Amazon Linux 2022では現状、そのような外部パッケージリポジトリは用意されていないようです。 正式リリースと同時にアナウンスされるかもしれませんので期待して注視していきましょう。
(個人的には lv パッケージがとりあえず欲しいです...。)
内包されているパッケージで見るAmazon Linux 2022
リリースノートにAmazon Linux 2とのパッケージ比較が載っています。
このリストからパッケージについても見てみましょう。
削除されたパッケージ
Amazon Linux 2では利用できたが2022では削除されたパッケージの中から、気になったパッケージをピックアップします。
dovecot (Fedora 35には含まれています)
POP3/IMAP4サーバとしておなじみのメールスプールですが、廃止されています。AWSでは利用しないものなのでしょうか?
ftp (Fedora 35には含まれています)
古のftpコマンドが削除されています。 今時、ftpサーバを建ててファイルをやり取りするよりはSFTPやSCPとか使いますし、AWSならS3ですよね。
iotop, iperf3 (Fedora 35には含まれています)
I/O計測、ネットワーク速度計測ツールです。 AWSには速度計測機能がついてるので不要と考えられたのでしょうか。
mailman(Fedora 35には含まれています)
メーリングリストマネージャです。 メーリングリストを使うとしてもGoogleグループなどを代用するので不要と考えられたのでしょうか。
mc(Fedora 35には含まれています)
古のコマンドラインファイラーです。 まぁ、今時は使いませんよね。
mutt(Fedora 35には含まれています)
古のコマンドラインメールクライアントです。 ええ、使いませんよね...。
squid(Fedora 35には含まれています)
プロキシサーバですが、AWSではほかのツールを利用するのでしょうか?
なかなか趣深い削除リストだと思ったのは私だけでしょうか。
追加されたパッケージ
Amazon Linux 2では存在しなかったがAmazon Linux 2022で利用可能になったパッケージの中から、気になったパッケージをピックアップします。
nfk
文字コード変換フィルタですが、「今採用なの?」という印象です。 iconvコマンドで代用は可能です。
w3m
テキストベースのWebブラウザです。 VPC内での動作確認にピッタリかもですね。「telnet 22」とか「openssl s_client」より手軽に実行できますし。
xemacs
emacsじゃなくてxemacsというのが...もしかして流行ってるのでしょうか?
アップグレードされたパッケージ
Amazon Linux 2からAmazon Linux 2022のアップグレードでバージョンが変わるパッケージもあります。 こちらも、私の思いからピックアップしました。
bash 4から5に
変数EPOCHSECONDSでUNIX時間が取得できるようになりました。やったね。
Ruby 2から3に
Ruby on Railsなどを動かしている環境では影響があるかもです。
OpenSSH 7.4から8.6に
先述しましたが、RSA/SHA1が廃止されるなど、若干の変更があります。 OpenSSHの変更か失念しましたが、デフォルトでrootのパスワードによるSSHリモートログインが無効になっています。 今時rootでリモートログインする人なんて...いませんよね?
Amazon Linux 2022へのフィードバック
アナウンスによるとフォーラムへの投稿を求めています。
https://forums.aws.amazon.com/forum.jspa?forumID=30
そんなに活発に見えませんが、利用者の皆さんは様子見なんでしょうか。
まとめ
数時間触った程度、資料を読んだ程度ですがAmazon Linux 2からはそれほど大きな変更があったようには思えませんでした。 ツールのバージョンの差異程度での使い勝手変更になるように思います。
一番気になるのは、RHELからFedoraへのアップストリーム変更です。 今後、Amazon Linuxディストリビューションを、どのように5年サポートするかは気になります。
また、Amazon Linux 2022はソースリポジトリやSRPMの取得方法を見つけることができませんでした。 Fedoraベースなのはよいですが、どのような変更がAWSに加えられたのかは事例によっては調査する場合があります。 正式リリース時には、これらの情報にアクセスできる手段が今後提供されるといいですね。
沓名 亮典(執筆記事の一覧)
クラウドインテグレーション部 SRE1課
Linuxでのサーバ構築・保守業務をしてましたがクラウド業務をしたくて2021年12月に入社したネットワークエンジニア。 趣味でマラソン、トレラン、トライアスロン、ロードバイクやってる変態。