特集/連載
Windowsのような“普通のOS”と「コンテナ向けOS」は何が違うのか?:「コンテナホストOS」4選【前編】
「Docker」を使用してコンテナをデプロイしたり管理したりする際、Windows のような一般的なOSではなく、“コンテナ向けOS”を使うという選択肢がある。コンテナ向けOSにはどのような特徴があるのか。
コンテナ技術を使うメリットの一つは、アプリケーションをポータブル(可搬)かつ自己完結型のパッケージとして簡単にデプロイ(実環境への配備)し、更新できる点にある。コンテナをデプロイする方法は多岐にわたるため、ニーズに合った選択をすることが肝心だ。
コンテナ管理ツール「Docker」は、「Linux」「macOS」「Windows」などさまざまなOSにインストール可能だ。ただしこうした一般的なOSだけではなく、コンテナに特化したOSもある。コンテナに特化したOSにはどのような特徴があり、一般的なOSとは何が違うのか。
“普通のOS”と「コンテナ向けOS」は何が違うのか?
併せて読みたいお薦め記事
コンテナ運用のヒント
開発したコンテナ化アプリケーションをエンドユーザーに提供する段階になると、作業はさらに複雑化する。こうした課題を解決し得るのが、コンテナのデプロイと管理を効率化する専用OSだ。
コンテナ運用に特化したOSが、一般的なOSと異なる点を以下に示す。
- 余計なものがない
- コンテナ管理用OSは、余分なライブラリ(プログラム部品群)やサービスを排除した最小構成を取っている。これによって、より多くのシステムリソースをコンテナに割り当てることが可能だ。
- カーネルの機能制限
- コンテナ管理用OSは、セキュリティ強化や操作の簡素化、コンテナの実行速度や応答性能の向上のために、カーネル(中核プログラム)の機能を制限している。
- セキュリティの強化
- コンテナ管理用OSは、コンテナおよびDocker運用に不可欠なセキュリティ機能を備える。
- 例として、セキュリティモジュール「SELinux」(Security-Enhanced Linux)の利用や、更新作業が途中で失敗することなく、完全に成功するか完全に失敗する「アトミック更新」が可能だ。たいていのDocker用OSは、コンテナの運用向けにSELinuxを調整している。
Dockerを効果的に実行するためのOSにはさまざまな選択肢がある。次回は、そうしたコンテナ管理用OSの中から4つを取り上げて紹介する。
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.