Kickstart, Puppet, Docker

11
Kickstart, Puppet, Docker

Transcript of Kickstart, Puppet, Docker

Page 1: Kickstart, Puppet, Docker

Kickstart, Puppet, Docker

Page 2: Kickstart, Puppet, Docker

内容● サーバー構築の自動化の基礎知識をまとめる● Solaris 10とRHEL 7で比較● Linux Kickstart/Solaris Jumpstart● 仮想サーバー● Docker● Puppet● Docker/Puppetで変わる● Docker or Puppet?● 参考

Page 3: Kickstart, Puppet, Docker

Kickstart/Jumpstart

● Kickstart/Jumpstartファイルで指定した設定に従ってOSを自動的にインストールする方法

● 設定項目の一部Kickstart Jumpstartインストール インストール元 言語/キーボード rootパスワード パーティション ユーザー/Group ネットワークパッケージ後処理スクリプト

インストール元パーティションswapサイズマウントするリモートデバイスミラーリングLocaleインストールパッケージSUNWname終了スクリプト(Bourne shell)

Page 4: Kickstart, Puppet, Docker

仮想サーバー 1/2

● ハイパーバイザー型はホストOSを経由しない分性能が高い

● ホスト型 : Virtualbox, Windows XPモード● ハイパーバイザー型 : VMWare ESXi, Xenなど

アプリ

ホスト型物理サーバーハイパーバイザーゲストOSアプリアプリ

ゲストOSアプリ

ハイパーバイザー型物理サーバー

仮想化ソフトゲストOSアプリアプリ

ホストOS

Page 5: Kickstart, Puppet, Docker

仮想サーバー 2/2

● ハイパーバイザー型 : VMWare ESXi, Xenなど● コンテナ型 : LXC, Docker, Zoneなど

– 起動が早い– ファイルシステム、プロセステーブル、ネットワーク設定などを隔離

– メモリやCPUのリソース配分もコンテナ単位

コンテナ型物理サーバーハイパーバイザーゲストOSアプリアプリ

ゲストOSアプリ

ハイパーバイザー型物理サーバーホストOS

環境アプリ

環境アプリ

環境アプリ

Page 6: Kickstart, Puppet, Docker

Docker

● OSイメージからライブラリ、環境変数などのパッケージングするものを定義ファイル化

● 本番と同じコンテナをローカルで動かせる● 親イメージからの差分のみ保存 → 小容量

物理サーバーホストOS環境アプリ

定義ファイル

読み込み専用

OS

Java

Apache

書き込み可

Page 7: Kickstart, Puppet, Docker

Puppet

● サーバーやDocker/Zoneの設定を自動化– ユーザー/グループの作成– ネットワーク関連の設定– パッケージのインストール、最新版への更新– サービスの実行– ファイル作成– 任意のコマンド実行– などなど

Page 8: Kickstart, Puppet, Docker

Puppet Master/Client

● 良くある運用形態● ソースコード管理システムで管理する事が主流

Page 9: Kickstart, Puppet, Docker

Docker/Puppetで変わる● 手順書が正しくない、勘違い、従わなかったなどで動作しない事を防ぐ

● 手順書は設定ファイルに置き換え● 変更はサーバーで行わず、設定ファイルを変更

変更 手順書書き換え

ファイル変更 設定適用

今まで

これから

Page 10: Kickstart, Puppet, Docker

Docker or Puppet?

● Puppetで出来る事はDockerでも出来る● 何も知らなければDockerだけ覚えれば良い● 既にPuppetの知識、経験、ファイルがあるなら

Docker + Puppetを組み合わせても良い● DockerのインストールなどホストOSはPuppetで管理

Page 11: Kickstart, Puppet, Docker

参考● RHEL 7でkickstart● Puppetを使ったLinuxシステムの設定自動管理● PuppetとDockerで構成管理してみる● https://www.docker.com/● Dockerイメージの理解とコンテナのライフサイクル

● 体育会系 Docker Compose ハンズオン資料