この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
目次
AWS で作成するサーバーの OS のおすすめは?
AWS 環境の EC2 では新規のサーバーの OS としてたくさんのソフトウェアが選択できます。
Windows サーバーでは「Windows Server 2019」と「Windows Server 2016」。 Linux サーバーである「Debian」と「Ubuntu」、「CentOS」あたりが有名で、次点として「Amazon Linux」や有償の「Redhat」あたりが有名ではないでしょうか。
その中でも今回は、AWS 環境で選ばれることが多い OS である「Centos」と「Ubuntu」、「Amazon Linux」のどれを選択すればよいか考えてみます。
Linux サーバーのシェアを確認する
引用元:w3techs
上記は2018年07月11日時点の世界における LinuxOS のシェアを表したものです。
- Ubuntu:34.5%
- Debian:25.6%
- Centos:16.7%
世界で最も使われているOSが「Ubuntu」で、次に「Debian」「CentOS」と続き、3つの OS で LinuxOS の全シェアの76.8%を占めます。
日本の LinuxOS シェアは、CentOS > Ubuntu >>> Debian です。日本のみの LinuxOS のシェアを表す出典元を提示できないため、詳細な数字は記載することができません。ただインフラの作業に携わっていれば、体感的にも日本で CentOS が一番多いことは、ほとんどの方が気づいているのではないでしょうか。
OS の特徴
AWS 上で日本向けのサービスで構築するサーバーとして候補に挙がってくるのが、
- Amazon Linux
- CentOS
- Ubuntu
の3つになりますので、それぞれの特徴を確認しましょう。
Amazon Linux
AWS を運用する Amazon が提供する LinuxOS です。
最大の特徴は、RDS や S3 など AWS 内の他サービスに接続するモジュールが事前に入っており、AWS でサービスを運用するために必要な環境が整えてあることです。
ただos自体のサポート期間は明示されておらず、実質は次期 Amazon Linux がリリースされるまでの期間である3カ月~6カ月程度と言われています。
Amazon Linux は Amazon Linux 2 への移行を促進するために「2020年06月30日」までは、Amazon Linux の最新バージョンに対するセキュリティパッチの更新とコンテナイメージの提供を継続することを記述しています。
Amazon Linux 2 より LinuxOS の長期サポート対応、及びサポート期間が明示されるようになりました。Amazon Linux 2のサポート期間は、「2023年06月30日」とされています。
Amazon Linux 2に関するよくある質問
https://aws.amazon.com/jp/amazon-linux-2/faqs/
※セキュリティの観点から今から新しくサーバーを構築するときは、「Amazon Linux」ではなく「Amazon Linux2」を使用しましょう。
CentOS
CentOS のロゴは「Red Hat Inc.」の登録商標です。ロゴは公式ページの利用規約を沿って使用しています。
日本で最大のシェアを握る LinuxOS です。
CentOS は「Red Hat Enterprise Linux」からレッドハット社が所有する商標を含むデータを取り除いたバージョンです。システム自体は同じため、Centos = Redhat と考えると分かり易いかもしれません。
LTS 版のメンテナンス更新期限は10年程度と非常に長いのが特徴です。セキュリティパッチ配布は、RedHat のセキュリティパッチの配布から1,2カ月後に配布されることが多く、年2~4回くらいの間隔で提供されています。その後は重要なセキュリティパッチのみは継続されることが多いです。
個人的に調査した限りでは、長期運用が必要な国内レンタルサーバー会社の多くは CentOS を利用していることが分かっており、抜群の安定性を誇ります。
Ubuntu
Ubuntuは、Canonical Group, Ltd.の登録商標です。
「Debian gnu/linux」をベースとした OS で、世界最大のシェアを誇ります。
「誰にでも使いやすい最新かつ安定した OS」を提供することを目的して掲げて作成されています。CUI(キャラクターユーザーインタフェース)が使われることが多い Linux の中では珍しく、GUI(グラフィカルユーザーインタフェース)のデスクトップ OS として利用される事も多い Linux として有名です。
Ubuntu も長期運用するための LTS 版を提供しており、メンテナンス更新期限は5年程度です。
パッケージ管理の違い
Linux のパッケージを統括するシステムは、サーバー管理者にとって利用頻度の高いコマンドです。
ソフトウェアのインストールにアップデート、削除を依存関係を含めて迅速に対応してくれる心強いシステムです。安全にサーバーの環境を整えてくれるシステムで、サーバーのOSにより実装されているパッケージ管理ソフトが異なります。
Amazon Linux と CentOS は yum コマンド
Amazon Linux と CentOS はパッケージとしてRPM(RPM Package Manager)を採用して、yum コマンドでパッケージを管理しています。
Ubuntu は apt コマンド
Ubuntu はバイナリのパッケージとして、deb 形式を採用しており、apt コマンドでパッケージの統合管理を行っています。
CentOS と Ubuntu のどちらを選ぶべきか?
CentOS と Ubuntu のどちらを選べば良いかを、最近よく相談を受けます。
答えることは常に同じ内容で、「正直どちらでも良いですので、会社で運用し易い方を選びましょう」という回答です。CentOS と Ubuntu は共にサポート期間が長く実績があるOSで、多少のコマンドや設定方法に差異はあるものの実現できることに差はほぼありません。
そのため実際の現場では得意なエンジニアが多いOSを選ぶ傾向にあります。つまり CentOS が得意なエンジニアが多い会社は CentOS を選び、Ubuntu が得意なエンジニアが多い会社は Ubuntu を選びます。
私が各会社にてインフラを行うとき、事前に依頼者に確認を行いますが、国内を主力とする会社は CentOS を、外資系の会社や外国人のエンジニアが多い会社は Ubuntu を選ぶ傾向が強く見受けられます。
まとめ
個人用や手軽に検証したいときは、利便性を考えて「Amazon Linux 2」を利用する。
仕事用サーバー、特に長期運用を想定する必要があるサーバーは「Centos」か「Ubuntu」の LTS 版を利用することをおすすめします。
サービス運用するサーバーは、脆弱性の入る余地を少なくするため、必要最低限のソフトで運用するべき!という考え方があります。仮に今回示した以外の OS を利用するときも管理者が必要最低限のソフトウェアを選んでインストールできるサーバーにしましょう。