Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Copyright © 2016 NTT DATA Corporation
○○○○年○○月○○日
株式会社NTTデータ
○○ ○○ ○○ ○○
今からはじめるPuppet 2016
~ インフラエンジニアのたしなみ ~
2016年4月20日
株式会社NTTデータ
佐々木 優太朗
第3回 Puppetユーザ会
発表資料
1Copyright © 2016 NTT DATA Corporation
アジェンダ
 はじめに
 IT業界の自動化の流れ
 Puppetについて
 システム開発編
 システム運用編
 連携するとうれしいツール
 その他
2Copyright © 2016 NTT DATA Corporation
はじめに
 自己紹介
 名 前:佐々木 優太朗
 経 験:金融系、公共系案件の基盤開発・維持運用
 その他:PuppetConf2015(Portland)に参加!
プライベートでPuppetオリジナルTシャツを愛用
 本日のゴール
 IT自動化の初心者 ⇒ 趣味でPuppetを触ってみようかな!
 Puppetの初心者 ⇒ 仕事で使ってみようかな!
# IT自動化技術の普及に少しだけ貢献できれば幸甚です。
Copyright © 2016 NTT DATA Corporation 3
IT業界の自動化の流れ
4Copyright © 2016 NTT DATA Corporation
一般の自動化技術の流れ
蒸気機関
自動車
自動車の自動運転技術
(個人的に興味あります)
ITの自動化技術
★本日のテーマ★
ITの自動化技術はOSSで
個人が自由に試せる!
人間の作業を自動化
コンピュータ
近年の高度な自動化
5Copyright © 2016 NTT DATA Corporation
ITの自動化技術の流れ
古典的自動化
(Windowsバッチ、
シェルスクリプト)
ビルド自動化
CI
(継続的インテグレーション)
DevOps
★本日のテーマ★
自動化技術のポイントは
各種技術を組み合わせて
何を達成するか
コモディティ化した技術
構築自動化
近年定着しつつある技術
テスト自動化
 GNU make、ant
 Kickstart、
サイレントインストール
 JUnit、RSpec、Serverspec
 Selenium、JMeter
 Jenkins
 Puppet、Chef、Ansible
6Copyright © 2016 NTT DATA Corporation
Puppetはどんなこと
ができるのか?
7Copyright © 2016 NTT DATA Corporation
Puppetができること/特徴について
Puppetはあるべき状態を記述したマニフェストによる基盤構築ツール
大規模システム、特にセキュアなシステムに有効
 エージェント型(Master/Agent)
 外部DSL型(設定ファイル風に記述可能)
 幅広いハードウェアベンダとの連携
 日本語情報が徐々に充実してきた
 Puppet公式情報
 Qiitaなどの技術サイト情報
構築ターゲットのサーバ
Agent
自動化
資材
自動化
資材
自動化
資材*
Agent
Master
* 自動化資材:マニフェストや必要なファイル等の総称
自動化サーバ
file { "/etc/hosts":
owner => 'root',
group => 'root',
mode => '644',
}
8Copyright © 2016 NTT DATA Corporation
Puppetをつかうと
なにがうれしいか?
9Copyright © 2016 NTT DATA Corporation
システム開発でうれしいこと
システム開発のフェーズで発生しがちな問題を
自動化ツールを利用することにより未然に防ぐことができる
提供リードタイムの短縮
事前に自動化資材の品質を担保しておくことで、構築時の作業時間を
大幅に短縮できる
構築品質の向上
変更対象が多い構築時において、作業者に依存していた構築品質の
ばらつきがなくなり、品質を一律に向上できる
開発環境の管理性向上
意図しない一時的な変更が多発する環境において、変更内容を機械
的に検出し、必要なフィードバックを把握することができる
構築時は、突発の仕様変更が起こりやすい
外部委託作業は日程変更が難しい
実機のみの設定変更は把握が難しい
10Copyright © 2016 NTT DATA Corporation
でも自動化すると
準備が大変でしょう?
11Copyright © 2016 NTT DATA Corporation
自動化のスモールスタート
仮想化基盤では、自動化構築ツールのスモールスタートが可能
(例:負荷分散APサーバ等の構成・役割が同じサーバの大量デプロイ)
VM
#1
VM
#2
VM
(マスタ)
・・・VM
#3
①VMクローン
(同一設定の複製)
②自動化構築
(個別カスタマイズ)
結果として、環境再構築に
必要な手順がコード化される
仮想環境における、ほぼ同一設定のVM構築例
ID情報・性能情報
自動化範囲を絞ることで
準備が必要な資材は
かなり少なくなる
12Copyright © 2016 NTT DATA Corporation
システム運用でうれしいこと
システム運用における維持作業に求められる、高品質で
スピーディな作業を実施することができる
作業時間の短縮
限られたメンテナンス時間の中で、作業時間を短縮できる
ロールバックもマニフェストで対応し、作業時間を短縮できる
作業品質の向上
手順書、および作業者に依存する作業ミスがなくなり、作業品質を一
律に向上できる
大規模環境に対応
多くの対象に同じ手順の実施が必要な場合、限られた人数で確実に
実施できる
手順が多くなれば、必ずミスは発生する
重要なシステムほどメンテナンス時間は短い
脆弱性によっては作業対象台数が多い
Copyright © 2016 NTT DATA Corporation 13
連携するとうれしいツール
14Copyright © 2016 NTT DATA Corporation
連携するとうれしいツール
Serverspec
動作ノード 試験対象ノード
構築の正しさを確認する単体試験をServerspecで自動化
実施するのは "パラメータ確認試験" と "振舞い試験"
describe file('/etc/XXX.conf') do
its(:content) { should match /YYY:80/ }
end
describe port(80) do
it { should be_listening }
end
自動試験の実行(エージェントレスSSH接
続)
ノンデグレード試験として
使いまわすとさらに有効
15Copyright © 2016 NTT DATA Corporation
連携するとうれしいその他のツール
 Serverspec
振る舞い試験、設定値試験
 Jenkins
定期的な試験実施
 Git/Subversion
自動化資材開発時のバージョン管理
 Vagrant/Docker
自動化資材自体の試験
 並列SSHツール
非定型作業の実施
 その他
16Copyright © 2016 NTT DATA Corporation
ありがとうございました
ご清聴いただき、誠にありがとうございました。
ご質問がありましたら、ご遠慮なくいただければ幸いです。
Copyright © 2011 NTT DATA Corporation
Copyright © 2016 NTT DATA Corporation

More Related Content

今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~

  • 1. Copyright © 2016 NTT DATA Corporation ○○○○年○○月○○日 株式会社NTTデータ ○○ ○○ ○○ ○○ 今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~ 2016年4月20日 株式会社NTTデータ 佐々木 優太朗 第3回 Puppetユーザ会 発表資料
  • 2. 1Copyright © 2016 NTT DATA Corporation アジェンダ  はじめに  IT業界の自動化の流れ  Puppetについて  システム開発編  システム運用編  連携するとうれしいツール  その他
  • 3. 2Copyright © 2016 NTT DATA Corporation はじめに  自己紹介  名 前:佐々木 優太朗  経 験:金融系、公共系案件の基盤開発・維持運用  その他:PuppetConf2015(Portland)に参加! プライベートでPuppetオリジナルTシャツを愛用  本日のゴール  IT自動化の初心者 ⇒ 趣味でPuppetを触ってみようかな!  Puppetの初心者 ⇒ 仕事で使ってみようかな! # IT自動化技術の普及に少しだけ貢献できれば幸甚です。
  • 4. Copyright © 2016 NTT DATA Corporation 3 IT業界の自動化の流れ
  • 5. 4Copyright © 2016 NTT DATA Corporation 一般の自動化技術の流れ 蒸気機関 自動車 自動車の自動運転技術 (個人的に興味あります) ITの自動化技術 ★本日のテーマ★ ITの自動化技術はOSSで 個人が自由に試せる! 人間の作業を自動化 コンピュータ 近年の高度な自動化
  • 6. 5Copyright © 2016 NTT DATA Corporation ITの自動化技術の流れ 古典的自動化 (Windowsバッチ、 シェルスクリプト) ビルド自動化 CI (継続的インテグレーション) DevOps ★本日のテーマ★ 自動化技術のポイントは 各種技術を組み合わせて 何を達成するか コモディティ化した技術 構築自動化 近年定着しつつある技術 テスト自動化  GNU make、ant  Kickstart、 サイレントインストール  JUnit、RSpec、Serverspec  Selenium、JMeter  Jenkins  Puppet、Chef、Ansible
  • 7. 6Copyright © 2016 NTT DATA Corporation Puppetはどんなこと ができるのか?
  • 8. 7Copyright © 2016 NTT DATA Corporation Puppetができること/特徴について Puppetはあるべき状態を記述したマニフェストによる基盤構築ツール 大規模システム、特にセキュアなシステムに有効  エージェント型(Master/Agent)  外部DSL型(設定ファイル風に記述可能)  幅広いハードウェアベンダとの連携  日本語情報が徐々に充実してきた  Puppet公式情報  Qiitaなどの技術サイト情報 構築ターゲットのサーバ Agent 自動化 資材 自動化 資材 自動化 資材* Agent Master * 自動化資材:マニフェストや必要なファイル等の総称 自動化サーバ file { "/etc/hosts": owner => 'root', group => 'root', mode => '644', }
  • 9. 8Copyright © 2016 NTT DATA Corporation Puppetをつかうと なにがうれしいか?
  • 10. 9Copyright © 2016 NTT DATA Corporation システム開発でうれしいこと システム開発のフェーズで発生しがちな問題を 自動化ツールを利用することにより未然に防ぐことができる 提供リードタイムの短縮 事前に自動化資材の品質を担保しておくことで、構築時の作業時間を 大幅に短縮できる 構築品質の向上 変更対象が多い構築時において、作業者に依存していた構築品質の ばらつきがなくなり、品質を一律に向上できる 開発環境の管理性向上 意図しない一時的な変更が多発する環境において、変更内容を機械 的に検出し、必要なフィードバックを把握することができる 構築時は、突発の仕様変更が起こりやすい 外部委託作業は日程変更が難しい 実機のみの設定変更は把握が難しい
  • 11. 10Copyright © 2016 NTT DATA Corporation でも自動化すると 準備が大変でしょう?
  • 12. 11Copyright © 2016 NTT DATA Corporation 自動化のスモールスタート 仮想化基盤では、自動化構築ツールのスモールスタートが可能 (例:負荷分散APサーバ等の構成・役割が同じサーバの大量デプロイ) VM #1 VM #2 VM (マスタ) ・・・VM #3 ①VMクローン (同一設定の複製) ②自動化構築 (個別カスタマイズ) 結果として、環境再構築に 必要な手順がコード化される 仮想環境における、ほぼ同一設定のVM構築例 ID情報・性能情報 自動化範囲を絞ることで 準備が必要な資材は かなり少なくなる
  • 13. 12Copyright © 2016 NTT DATA Corporation システム運用でうれしいこと システム運用における維持作業に求められる、高品質で スピーディな作業を実施することができる 作業時間の短縮 限られたメンテナンス時間の中で、作業時間を短縮できる ロールバックもマニフェストで対応し、作業時間を短縮できる 作業品質の向上 手順書、および作業者に依存する作業ミスがなくなり、作業品質を一 律に向上できる 大規模環境に対応 多くの対象に同じ手順の実施が必要な場合、限られた人数で確実に 実施できる 手順が多くなれば、必ずミスは発生する 重要なシステムほどメンテナンス時間は短い 脆弱性によっては作業対象台数が多い
  • 14. Copyright © 2016 NTT DATA Corporation 13 連携するとうれしいツール
  • 15. 14Copyright © 2016 NTT DATA Corporation 連携するとうれしいツール Serverspec 動作ノード 試験対象ノード 構築の正しさを確認する単体試験をServerspecで自動化 実施するのは "パラメータ確認試験" と "振舞い試験" describe file('/etc/XXX.conf') do its(:content) { should match /YYY:80/ } end describe port(80) do it { should be_listening } end 自動試験の実行(エージェントレスSSH接 続) ノンデグレード試験として 使いまわすとさらに有効
  • 16. 15Copyright © 2016 NTT DATA Corporation 連携するとうれしいその他のツール  Serverspec 振る舞い試験、設定値試験  Jenkins 定期的な試験実施  Git/Subversion 自動化資材開発時のバージョン管理  Vagrant/Docker 自動化資材自体の試験  並列SSHツール 非定型作業の実施  その他
  • 17. 16Copyright © 2016 NTT DATA Corporation ありがとうございました ご清聴いただき、誠にありがとうございました。 ご質問がありましたら、ご遠慮なくいただければ幸いです。
  • 18. Copyright © 2011 NTT DATA Corporation Copyright © 2016 NTT DATA Corporation