SlideShare a Scribd company logo
1 of 14
中井悦司
Twitter @enakai00
オープンクラウド・キャンパス
System Automation Overview
Open Cloud Campus
System Automation Overview
自己紹介
 中井悦司(なかいえつじ)
– Twitter @enakai00
 日々の仕事
– Senior Solution Architect and
Cloud Evangelist at Red Hat K.K.
企業システムでオープンソースの活用を希望される
お客様を全力でご支援させていただきます。
 昔とった杵柄
– 素粒子論の研究(超弦理論とか)
– 予備校講師(物理担当)
– インフラエンジニア(Unix/Linux専門)
好評発売中
私とSystem Automation
Open Cloud Campus
System Automation Overview
Scalable Lotus Domino on IBM RS/6000SP
ftp://ftp.software.ibm.com/rs6000/technology/notesSP.ps
HPCクラスタにLotus Domino
を入れてスケーラブルな  
グループウェア環境を作る 
富豪ソリューション
BOOTP的な自動インストール
とdsh的なパラレルコマンド
で運用
変更作業は「一般社員ノード」
で試して、「VIPノード」は後
にまわすなどの現場ノウハウ
SW RAIDなのでRAID再構成作
業はちょっとドキドキ
第三者著作物のため
配布いたしません。
第三者著作物のため
配布いたしません。
Open Cloud Campus
System Automation Overview
クラウドの自動化における問題意識
 クラウドコンピューティングの実現により、さまざまな「インフ
ラの自動化」が可能になりました。
 今後、一般企業の業務アプリケーションをクラウドで利用する場
合、どのような観点で、どのような処理を自動化することが必要
なのでしょうか?
– 既存の手作業をそのまま自動化するのでは、「自動化のための自動
化」に陥る危険性はないでしょうか?
–「アプリケーション開発、システム運用プロセスの変革/改善と一体
化した自動化の適用」を研究するべき時期がきているのではないで
しょうか?
いけてる自動化? いけてない自動化?
Open Cloud Campus
System Automation Overview
クラウドの自動化における問題意識
自主規制
自動化の管理対象とツールの例
Open Cloud Campus
System Automation Overview
自動化における管理対象
環境設定(Config)
アプリケーションプログラム
インフラ環境
データ
OS・アプリケーションの
構成管理
アプリケーションの
導入管理
物理サーバ/仮想マシン構成
OSイメージなどの管理
クラウド(仮想化)環境では
どの範囲をイメージ化するかが
1つのポイント
Open Cloud Campus
System Automation Overview
デプロイ自動化の現状
クラウド/仮想化環境での自動化3大パターン
1. 仮想アプライアンス方式
• アプリケーション導入済みの環境をマシンイメージ化して利用。
• 巨大なテンプレートファイルの保守管理、インフラ間の可搬性が
課題。
2. JEOS(Just Enough OS)方式
• 最小限のOS環境をマシンイメージ化して利用。アプリケーション
の導入・設定は、別途、ツールで自動化。
3. 自動インストール方式
• OSのインストールからアプリケーションの導入・設定まで、すべ
ての作業を自動化して適用。
個人的にはこれが
ベストと予想しています
Open Cloud Campus
System Automation Overview
OSインストール/イメージ作成の自動化ツール
Kickstart
– RHELのインストーラ(Anaconda)の一機能。
– インストール時の設定項目を書いたテキストファイル(KickStartファ
イル)を利用して、RHELのインストールを自動化
– インストール後に指定のスクリプト(Postスクリプト)を実行するこ
とができる。
Oz
– 仮想マシンイメージの作成に特化したOSインストールツール
– OpenStack用イメージ作成のデファクトツール(?)
– https://github.com/clalancette/oz/wiki
Aeolus Conductor
– Ozで作成したイメージをVMware/RHEV/AWSなど、指定環境のマシ
ンイメージに変換して配信するツール
– http://slidesha.re/13BF3LW
Open Cloud Campus
System Automation Overview
アプリケーション導入、システム設定の自動化ツール
Puppet/Chef
– パッケージ、サービス、
ファイル、ユーザ/グループ
など、規定の「リソース」
について、指定の状態に自
動構成するツール
–「希望する状態」を指定す
ると、現状からその状態に
変更するコマンドをツール
が自動判別して実行
– リソース間の依存関係を指
定することで、設定の順序
を制御可能
package { 'httpd':
ensure => latest, # 最新バージョンを導入
}
service { 'httpd':
ensure => running, # サービスを起動
enable => true, # サーバー起動時の自動起動を設定
hasrestart => true, # 「service xxxx restart」が利用可能
hasstatus => true, # 「service xxxx status」が利用可能
}
file { '/var/www/html/index.html':
owner => 'apache', # ファイルオーナー
group => 'apache', # ファイルグループ
mode => '0600', # アクセス権
content => '<h1>Hello, World!</h1>', # ファイルの内容
}
exec { 'fw-http':
path => '/usr/sbin', # コマンドのパス
command => 'lokkit -s http', # 実行するコマンド
}
Package['httpd']
-> File['/var/www/html/index.html']
-> Service['httpd']
-> Exec['fw-http']
リソースの依存関係
httpdを導入するPuppetマニフェストの例
Open Cloud Campus
System Automation Overview
参考:Puppet/Chefの本質は「ビルトインの現状確認機能」
 作業手順(コマンド)を並べたスクリプトは、前提環境が変わると利用不能
 「現在の状態」に応じて必要なコマンドを判断して「希望の状態」を実現するの
が構成管理ツールの本質(「冪等性」はあくまで結果的に得られる性質)
 リソースの種類ごとに「現状確認コマンド、設定変更コマンド」など
の”Intelligence”がビルトインされている事がPuppet/Chefの価値
希望の状態に
システムを更新
No
希望の状態 現在の状態
package { 'httpd':
ensure => latest,
}
# yum list httpd
「現在の状態=希望の状態」?
Open Cloud Campus
System Automation Overview
Puppetの課題
 複数VMの依存関係(ワークフロー)が扱えない
– サーバ間の依存関係を解決する機能がないので、「DBサー
バとWebサーバを連携させる」ような設定はできない。
– 手続き型のスクリプトで連携処理を行なうと「宣言的記
述」のメリットが半減
⇒ クラウド対応の自動化ツールでは、複数VMの依存関係の
取り扱いが必要。
 個人的には、Packstackが気になってます。
– Private notes on Packstack plugin development
– http://bit.ly/1a2GGEB
中井悦司
Twitter @enakai00
オープンクラウド・キャンパス
これからもクラウドと自動化の
未来を一緒に考えましょう!

More Related Content

More from VIOPS Virtualized Infrastructure Operators group ARCHIVES

More from VIOPS Virtualized Infrastructure Operators group ARCHIVES (20)

VIOPS10: クラウドのつぎに起こるコト
VIOPS10: クラウドのつぎに起こるコトVIOPS10: クラウドのつぎに起こるコト
VIOPS10: クラウドのつぎに起こるコト
 
VIOPS10: クラウドのつぎに起こるコト
VIOPS10: クラウドのつぎに起こるコトVIOPS10: クラウドのつぎに起こるコト
VIOPS10: クラウドのつぎに起こるコト
 
VIOPS10: いまパブリッククラウドで起きているコト
VIOPS10: いまパブリッククラウドで起きているコトVIOPS10: いまパブリッククラウドで起きているコト
VIOPS10: いまパブリッククラウドで起きているコト
 
VIOPS09: 本当に必要なのはSoftware- Defined Networking? ~今、改めて考えるデータセンタ・ネットワークの役割~
VIOPS09: 本当に必要なのはSoftware- Defined Networking? ~今、改めて考えるデータセンタ・ネットワークの役割~VIOPS09: 本当に必要なのはSoftware- Defined Networking? ~今、改めて考えるデータセンタ・ネットワークの役割~
VIOPS09: 本当に必要なのはSoftware- Defined Networking? ~今、改めて考えるデータセンタ・ネットワークの役割~
 
VIOPS09: Hadoop向けバッチアプリケーション開発フレームワーク Asakura Frameworkが目指すところ
VIOPS09: Hadoop向けバッチアプリケーション開発フレームワーク Asakura Frameworkが目指すところVIOPS09: Hadoop向けバッチアプリケーション開発フレームワーク Asakura Frameworkが目指すところ
VIOPS09: Hadoop向けバッチアプリケーション開発フレームワーク Asakura Frameworkが目指すところ
 
VIOPS09: AWSで実現する クラウドと物理製品の融合
VIOPS09: AWSで実現する クラウドと物理製品の融合VIOPS09: AWSで実現する クラウドと物理製品の融合
VIOPS09: AWSで実現する クラウドと物理製品の融合
 
VIOPS09: クラウド時代におけるFusion-ioのポジショニング
VIOPS09: クラウド時代におけるFusion-ioのポジショニングVIOPS09: クラウド時代におけるFusion-ioのポジショニング
VIOPS09: クラウド時代におけるFusion-ioのポジショニング
 
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
 
VIOPS09: その鐘を鳴らすのはあなた
VIOPS09: その鐘を鳴らすのはあなたVIOPS09: その鐘を鳴らすのはあなた
VIOPS09: その鐘を鳴らすのはあなた
 
VIOPS08: マイクロサーバー アーキテクチャトレンド
VIOPS08: マイクロサーバー アーキテクチャトレンドVIOPS08: マイクロサーバー アーキテクチャトレンド
VIOPS08: マイクロサーバー アーキテクチャトレンド
 
VIOPS08: Behavior Analysis Solution for Bigdata
VIOPS08: Behavior Analysis Solution for BigdataVIOPS08: Behavior Analysis Solution for Bigdata
VIOPS08: Behavior Analysis Solution for Bigdata
 
VIOPS08: ハードウェアオフロードの現在と今後
VIOPS08: ハードウェアオフロードの現在と今後VIOPS08: ハードウェアオフロードの現在と今後
VIOPS08: ハードウェアオフロードの現在と今後
 
VIOPS08: PaaSのメリットと課題
VIOPS08: PaaSのメリットと課題VIOPS08: PaaSのメリットと課題
VIOPS08: PaaSのメリットと課題
 
VIOPS07: “Practical” Guide to GlusterFS
VIOPS07: “Practical” Guide to GlusterFSVIOPS07: “Practical” Guide to GlusterFS
VIOPS07: “Practical” Guide to GlusterFS
 
VIOPS07: アプリケーションサービスの自動化
VIOPS07: アプリケーションサービスの自動化VIOPS07: アプリケーションサービスの自動化
VIOPS07: アプリケーションサービスの自動化
 
VIOPS07: OSMと地理空間情報
VIOPS07: OSMと地理空間情報VIOPS07: OSMと地理空間情報
VIOPS07: OSMと地理空間情報
 
VIOPS07: CDNの困ったネタ
VIOPS07: CDNの困ったネタVIOPS07: CDNの困ったネタ
VIOPS07: CDNの困ったネタ
 
VIOPS07: ETRI GLORY-FS
VIOPS07: ETRI GLORY-FSVIOPS07: ETRI GLORY-FS
VIOPS07: ETRI GLORY-FS
 
VIOPS06: マルチコア時代のコンピューティング活用術
VIOPS06: マルチコア時代のコンピューティング活用術VIOPS06: マルチコア時代のコンピューティング活用術
VIOPS06: マルチコア時代のコンピューティング活用術
 
VIOPS06: OpenFlowによるネットワーク構築と実証事件
VIOPS06: OpenFlowによるネットワーク構築と実証事件VIOPS06: OpenFlowによるネットワーク構築と実証事件
VIOPS06: OpenFlowによるネットワーク構築と実証事件
 

Recently uploaded

Recently uploaded (11)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

VIOPS08: System Automation Overview

  • 2. Open Cloud Campus System Automation Overview 自己紹介  中井悦司(なかいえつじ) – Twitter @enakai00  日々の仕事 – Senior Solution Architect and Cloud Evangelist at Red Hat K.K. 企業システムでオープンソースの活用を希望される お客様を全力でご支援させていただきます。  昔とった杵柄 – 素粒子論の研究(超弦理論とか) – 予備校講師(物理担当) – インフラエンジニア(Unix/Linux専門) 好評発売中
  • 4. Open Cloud Campus System Automation Overview Scalable Lotus Domino on IBM RS/6000SP ftp://ftp.software.ibm.com/rs6000/technology/notesSP.ps HPCクラスタにLotus Domino を入れてスケーラブルな   グループウェア環境を作る  富豪ソリューション BOOTP的な自動インストール とdsh的なパラレルコマンド で運用 変更作業は「一般社員ノード」 で試して、「VIPノード」は後 にまわすなどの現場ノウハウ SW RAIDなのでRAID再構成作 業はちょっとドキドキ 第三者著作物のため 配布いたしません。 第三者著作物のため 配布いたしません。
  • 5. Open Cloud Campus System Automation Overview クラウドの自動化における問題意識  クラウドコンピューティングの実現により、さまざまな「インフ ラの自動化」が可能になりました。  今後、一般企業の業務アプリケーションをクラウドで利用する場 合、どのような観点で、どのような処理を自動化することが必要 なのでしょうか? – 既存の手作業をそのまま自動化するのでは、「自動化のための自動 化」に陥る危険性はないでしょうか? –「アプリケーション開発、システム運用プロセスの変革/改善と一体 化した自動化の適用」を研究するべき時期がきているのではないで しょうか? いけてる自動化? いけてない自動化?
  • 6. Open Cloud Campus System Automation Overview クラウドの自動化における問題意識 自主規制
  • 8. Open Cloud Campus System Automation Overview 自動化における管理対象 環境設定(Config) アプリケーションプログラム インフラ環境 データ OS・アプリケーションの 構成管理 アプリケーションの 導入管理 物理サーバ/仮想マシン構成 OSイメージなどの管理 クラウド(仮想化)環境では どの範囲をイメージ化するかが 1つのポイント
  • 9. Open Cloud Campus System Automation Overview デプロイ自動化の現状 クラウド/仮想化環境での自動化3大パターン 1. 仮想アプライアンス方式 • アプリケーション導入済みの環境をマシンイメージ化して利用。 • 巨大なテンプレートファイルの保守管理、インフラ間の可搬性が 課題。 2. JEOS(Just Enough OS)方式 • 最小限のOS環境をマシンイメージ化して利用。アプリケーション の導入・設定は、別途、ツールで自動化。 3. 自動インストール方式 • OSのインストールからアプリケーションの導入・設定まで、すべ ての作業を自動化して適用。 個人的にはこれが ベストと予想しています
  • 10. Open Cloud Campus System Automation Overview OSインストール/イメージ作成の自動化ツール Kickstart – RHELのインストーラ(Anaconda)の一機能。 – インストール時の設定項目を書いたテキストファイル(KickStartファ イル)を利用して、RHELのインストールを自動化 – インストール後に指定のスクリプト(Postスクリプト)を実行するこ とができる。 Oz – 仮想マシンイメージの作成に特化したOSインストールツール – OpenStack用イメージ作成のデファクトツール(?) – https://github.com/clalancette/oz/wiki Aeolus Conductor – Ozで作成したイメージをVMware/RHEV/AWSなど、指定環境のマシ ンイメージに変換して配信するツール – http://slidesha.re/13BF3LW
  • 11. Open Cloud Campus System Automation Overview アプリケーション導入、システム設定の自動化ツール Puppet/Chef – パッケージ、サービス、 ファイル、ユーザ/グループ など、規定の「リソース」 について、指定の状態に自 動構成するツール –「希望する状態」を指定す ると、現状からその状態に 変更するコマンドをツール が自動判別して実行 – リソース間の依存関係を指 定することで、設定の順序 を制御可能 package { 'httpd': ensure => latest, # 最新バージョンを導入 } service { 'httpd': ensure => running, # サービスを起動 enable => true, # サーバー起動時の自動起動を設定 hasrestart => true, # 「service xxxx restart」が利用可能 hasstatus => true, # 「service xxxx status」が利用可能 } file { '/var/www/html/index.html': owner => 'apache', # ファイルオーナー group => 'apache', # ファイルグループ mode => '0600', # アクセス権 content => '<h1>Hello, World!</h1>', # ファイルの内容 } exec { 'fw-http': path => '/usr/sbin', # コマンドのパス command => 'lokkit -s http', # 実行するコマンド } Package['httpd'] -> File['/var/www/html/index.html'] -> Service['httpd'] -> Exec['fw-http'] リソースの依存関係 httpdを導入するPuppetマニフェストの例
  • 12. Open Cloud Campus System Automation Overview 参考:Puppet/Chefの本質は「ビルトインの現状確認機能」  作業手順(コマンド)を並べたスクリプトは、前提環境が変わると利用不能  「現在の状態」に応じて必要なコマンドを判断して「希望の状態」を実現するの が構成管理ツールの本質(「冪等性」はあくまで結果的に得られる性質)  リソースの種類ごとに「現状確認コマンド、設定変更コマンド」など の”Intelligence”がビルトインされている事がPuppet/Chefの価値 希望の状態に システムを更新 No 希望の状態 現在の状態 package { 'httpd': ensure => latest, } # yum list httpd 「現在の状態=希望の状態」?
  • 13. Open Cloud Campus System Automation Overview Puppetの課題  複数VMの依存関係(ワークフロー)が扱えない – サーバ間の依存関係を解決する機能がないので、「DBサー バとWebサーバを連携させる」ような設定はできない。 – 手続き型のスクリプトで連携処理を行なうと「宣言的記 述」のメリットが半減 ⇒ クラウド対応の自動化ツールでは、複数VMの依存関係の 取り扱いが必要。  個人的には、Packstackが気になってます。 – Private notes on Packstack plugin development – http://bit.ly/1a2GGEB