『フルスタックエンジニアを目指す』ためのOpenStack勉強術
日本仮想化技術株式会社
VitrualTech.jp
玉置伸行
自己紹介
• 玉置伸行(たまおきのぶゆき)– [email protected]
– twitter.com/ntamaoki
– facebook.com/ntamaoki
• 日本仮想化技術株式会社 2013/8 -
– エンタープライズクラウド事業部
• OpenStackの価値を伝える
– @ITで「たまおきのクラウドウオッチ」連載中
• エンタープライズクラスのクラウド基盤構築の検討支援
• 日本オラクル株式会社 1998/4 – 2013/7
– ミドルウェア製品のプリセールエンジニア
– 知識管理・コンテンツ管理製品の製品マーケティング
– 知識管理製品ビジネスの社内ベンチャーでの立ち上げ2
本セッションの目的
• OpenStack環境構築に成功した筆者が『フルスタックエンジニアを目指す』ための半年間の試行錯誤を話します
• 道程半ばですので、温かく見守っていただければ幸いです。
3
アジェンダ
• OpenStack習得の3つのステップ
• ステップ1をマスターするには「やってみる・学んでみる・教えてみる」
– 日本HP 研修コースのご紹介
• ステップ2に進むためには「インプット・アウトプットを意識する」
– フィックスポイント 運用自動化PFのご紹介
• まとめ
4
OpenStack環境構築の後に
5
時間
能力
Before
自分
After
自分
実は入り口でしかなかった。。。
6
時間
能力
Before
自分
After
自分
To-Be
自分
To-Be自分とは
• OpenStackの大規模Deployment環境をコンサルし、構築し、開発・修正できる、フルスタックエンジニアと呼ばれる上級エンジニア
7
インフラ
OpenStackを構成する要素
8
サーバ ネットワーク ストレージ
O/S、仮想化
ミドルウェア
データベース フレームワーク
アプリケーション
業務アプリケーション
Webアプリケーション
SaaSアプリケーション
プロビジョニング、自動化
セキュリティ、保守運用
フルスタックエンジニア
• Full Stack Developer
– Server, Network, and Hosting Environment
– Data Modeling
– Business Logic
– API layer / Action Layer / MVC
– User Interface
– User Experience
– Understanding what the customer and the business need.
参考URL: What is a Full Stack developer?
http://www.laurencegellert.com/2012/08/what-is-a-full-stack-developer/
9
フルスタックエンジニアへの道程
10
時間
能力
Before
自分
After
自分
To-Be
自分頑張れ自分
ステップ1
ステップ2
ステップ3
OpenStack習得の3つのステップ
• OpenStack概要の理解
• OpenStack環境の構築
• デモンストレーションの実施
ステップ1
• コンポーネント詳細の理解
• 追加機能検討
• Deployment環境の構築
ステップ2
• 追加機能開発、バグ修正
• コンサルティングの実施
• 大規模Deployment環境の構築
ステップ3
11
OpenStack習得の3つのステップ
• OpenStack概要の理解
• OpenStack環境の構築
• デモンストレーションの実施
ステップ1
• コンポーネント詳細の理解
• 追加機能検討
• Deployment環境の構築
ステップ2
• 追加機能開発、バグ修正
• コンサルティングの実施
• 大規模Deployment環境の構築
ステップ3
12
ステップ1をマスターするために
• OpenStack概要の理解
• OpenStack環境の構築
• デモンストレーションの実施
ステップ1
• コンポーネント詳細の理解
• 追加機能検討
• Deployment環境の構築
ステップ2
• 追加機能開発、バグ修正
• コンサルティングの実施
• 大規模Deployment環境の構築
ステップ3
13
『やってみる』&『学んでみる』&『教えてみる』を実践してみるのがいい!
ステップ1:「やってみる」
• OpenStack環境の構築
– DevStack
• http://devstack.org
– Red Hat RDO
• http://openstack.redhat.com
– Mirantis社
• http://software.mirantis.com/quick-start/
• OpenStack環境の利用
– TryStack
• https://trystack.org 14
ステップ1:「学んでみる」①
• コミュニティに参加
– 日本:日本OpenStackユーザ会
http://openstack.jp
– OpenStack.org
http://www.openstack.org/community/
• 一般向けメーリングリスト
https://launchpad.net/~openstack
• 運用者向けメーリングリスト
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
• 開発者向けメーリングリスト
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev15
ステップ1:「学んでみる」②
• 研修コースを受講
– 日本HP
• OpenStack Foundation
– OpenStackの概要を理解し、OpenStackの主要機能をハンズオン形式で学べる
– 教材は日本語に翻訳済み
http://h50146.www5.hp.com/services/education/teiki/seihin/H6C
68S.html
– モーフラボ
• 初級/中級/上級のOpenStackトレーニングを実施http://www.morphlabs.co.jp/openstacktraining/
16
ステップ1:「教えてみる」
レッドハットの中井さんの作成したハンズオンマテリアルを使って社内勉強会はいかがでしょうか。
OpenStackクラウド基盤構築ハンズオンセミナー
第1日:OpenStack機能概要
http://www.slideshare.net/enakai/open-stack-seminarday1lecture120140106
第1日:サーバ構築自動化について
http://www.slideshare.net/enakai/openstackno2
第2日:主要コンポーネントの解説
http://www.slideshare.net/enakai/open-stack-seminarday2lecture120140108
第2日:Neutron編
http://www.slideshare.net/enakai/openstackno2-29994826
17
日本HP社OPENSTACKトレーニングのご紹介
18
ステップ2に進めるために
• OpenStack概要の理解
• OpenStack環境の構築
• デモンストレーションの実施
ステップ1
• コンポーネント詳細の理解
• 追加機能検討
• Deployment環境の構築
ステップ2
• 追加機能開発、バグ修正
• コンサルティングの実施
• 大規模Deployment環境の構築
ステップ3
19
『インプット』『アウトプット』を意識するのが近道だと思う
『インプット』『アウトプット』を意識する
• 10の『インプット』を得て、1の『アウトプット』
を出せる人なので、『インプット』の量と質にこだわっています
– 端から見ると、情報ジャンキーにしか見えませんが。。。
20
『インプット』情報収集 RSS ①
• ニュースサイト(国内)– クラウド - ZDNet Japan http://feed.japan.zdnet.com/rss/index.rdf
– 日経BP ITpro http://itpro.nikkeibp.co.jp/rss/system.rdf
– エンタープライズニュース | RBB TODAY http://www.rbbtoday.com/rss/enterprise.rdf
– CloudZine http://cloudzine.jp/feed/
– クラウドWatch http://cloud.watch.impress.co.jp/cda/rss/cloud.rdf
– EnterpriseZine:新着一覧 http://enterprisezine.jp/rss/new
– クラウドニュース http://www.cloudnews.jp/feed
– ASCII.jp-アスキークラウド http://www.ascii.jp/cate/246/rss.xml
21
『インプット』情報収集 RSS ②
• ニュースサイト(海外)– Data Centre » Cloud Infrastructure • The Register
http://www.theregister.co.uk/data_centre/headlines.atom
– The Enterprise Cloud Site http://www.theenterprisecloudsite.com/rss_simple.asp
– Talkin' Cloud http://feeds.feedburner.com/TalkinCloud
– All Things Distributed http://www.allthingsdistributed.com/atom.xml
22
『インプット』情報収集 RSS ③
• OpenStack Foundation
– The OpenStack Blog — Open Source Cloud Computing Software
http://www.openstack.org/blog/feed/
– Planet OpenStack
http://planet.openstack.org/atom.xml
– Ask OpenStack: Q&A Site for OpenStack Users and Developers
https://ask.openstack.org/en/feeds/rss/
23
『インプット』情報収集 RSS ④
• 個人ブログ– Agile Cat --- in the cloud http://agilecatcloud.com/feed/
– Publickey Enterprise IT / Cloud Computing / Web Technology / Blog
http://www.publickey1.jp/atom.xml
– めもめも http://d.hatena.ne.jp/enakai00/rss
– jedipunkz http://jedipunkz.github.io/atom.xml
– OSSはアルミニウムの翼で飛ぶ http://aikotobaha.blogspot.com/feeds/posts/default
– Cloud Architect Musings | Musings On Cloud Computing and IT-as-a-Service
http://cloudarchitectmusings.com/feed/
– Kyle Hilgendorf — A Member of The Gartner Blog Network
http://blogs.gartner.com/kyle-hilgendorf/feed/
24
『インプット』情報収集 Google Alert
• 現在設定しているキーワード
–クラウド
– Cloud
– OpenStack
– OpenStack Foundation
– Software Defined
– SDN Network
– NFV
– OpenFlow
– Chef cookbook
– Puppet
– Zabbix
– Red Hat
– VMware
– AWS
– Azure
– CloudStack
25
Google Alertも活用。情報量が多いので、“1日1回“”最上位の結果のみ“を取得。http://www.google.com/alerts
『インプット』OpenStackを詳しく知る①
• ブループリントを読もう– ブループリントとは
• Blueprints : OpenStack wiki
https://wiki.openstack.org/wiki/
– Icehouseリリースのリリースステータス
• OpenStack roadmap for icehouse
http://status.openstack.org/release/
– OpenStackのブループリント一覧
• Blueprints for OpenStack
https://blueprints.launchpad.net/openstack
27
『インプット』OpenStackを詳しく知る②
• OpenStackのソースコードを読もう– PyDevでOpenStackのソースコードを読むー EnterpriseCloud.jp
http://enterprisecloud.jp/howtosetuppydev/
• OpenStack Summitに参加しよう– デザインサミット議事録
https://wiki.openstack.org/wiki/Summit/Icehouse/Etherpads
– セミナービデオ
• http://www.openstack.org/summit/openstack-summit-hong-
kong-2013/session-videos/
• Deep Dive into the CERN Cloud Infrastructure
– http://www.openstack.org/summit/openstack-summit-hong-kong-2013/session-
videos/presentation/deep-dive-into-the-cern-cloud-infrastructure
• Openstack High Availability @ PayPal
– http://www.openstack.org/summit/openstack-summit-hong-kong-2013/session-
videos/presentation/openstack-high-availability-paypal
28
『インプット』OpenStackを詳しく学ぶ
• OpenStack上級トレーニングを受講する– OpenStack Training Marketplace
http://www.openstack.org/marketplace/training/
– Mirantis社 3Day Bootcamp for OpenStack
http://www.openstack.org/marketplace/training/
• OpenStack in production
• Deployment
29
30
フィックスポイント社運用自動化プラットフォーム「Kompira」のご紹介
まとめ
• OpenStack習得の3つのステップ
• ステップ1をマスターするには「やってみる・学んでみる・教えてみる」
• ステップ2に進むためには「インプット・アウトプットを意識する」
31
OpenStack習得の3つのステップ
• OpenStack概要の理解
• OpenStack環境の構築
• デモンストレーションの実施
ステップ1
• コンポーネント詳細の理解
• 追加機能検討
• Deployment環境の構築
ステップ2
• 追加機能開発、バグ修正
• コンサルティングの実施
• 大規模Deployment環境の構築
ステップ3
32
新サービスのご案内
OpenStack検証支援プログラム
• OpenStackを評価・検証する企業の担当者
• プログラム内容
• OpenStackのインストール手順書の提供
• 検証計画や検証作業の支援(有償)
Baremetal OpenStack評価プログラム
• Baremetal OpenStackに興味のある企業の担当者
• プログラム内容
• 動作デモの実施
• 検証計画や検証作業の支援(有償)
33
参考情報
OpenStack検証支援プログラム
• OpenStackの検証環境の構築支援とエンジニア育成支援を行います。
• 期間は半年を想定しております。
• OpenStackの検証環境の構築支援として、「OpenStack環境構築ハンズオン」を実施します。
• エンジニア育成支援として、月に1回の「OpenStack講習」を実施します。
• 技術検証中の技術サポートとして、「OpenStack Support
Basic」を提供いたします。
34
参考情報
OpenStack環境構築ハンズオン
OpenStack環境構築ハンズオンとして下記の内容を実施します。Linuxのシステム管理を理解している方を対象としています。
• 環境準備(2日)
• OpenStack概要説明&環境構築ハンズオン(1日)
• 環境構築ハンズオンフォローアップ(1日)
• 環境構築ハンズオン問い合わせ対応(2週間)
環境構築ハンズオン実施の1週間後に、環境構築ハンズオンフォローアップを実施いたします。
35
参考情報
OpenStackを試してみる!TryStack①
OpenStackの環境構築が以前と比べて簡単になったとはいえハードウェアの手配や環境構築の技術スキルの習得は簡単ではありません。ここではハードウェア不要のOpenStackのサンドボックスであるTryStackを紹介します。
36
参考情報
OpenStackを試してみる!TryStack②
TryStackを利用するためにはFacebookのアカウントが必要で、Facebookのグループ「TryStack」に参加申請を出します。「TryStack」は非公開グループなので、管理者に承認してもらう必要があります。
Facebook グループ「TryStack」
https://www.facebook.com/groups/269238013145112
TryStack環境はFacebookのアカウントでログインできます。インスタンスは3つ、仮想CPUは6つ、メモリーは12GB、フローティングIPは50個まで、使用できます。OpenStackの動作確認の目的であれば十分なリソースです。37
参考情報
OpenStackを試してみる!TryStack③
1. TryStack環境にログイン
Facebookのアカウントを使用してログインします。ログインすると画面の左側にメニューが並んでいるのを確認できます。
38
参考情報
OpenStackを試してみる!TryStack④
2. ネットワークの作成
メニューの「ネットワーク管理」の「ネットワーク」をクリックし、「ネットワークの作成」ボタンを押します。下記の入力を行い、入力後に「作成」ボタンを押します。「ネットワーク」タブ ネットワーク名:private
「サブネット」タブ ネットワークアドレス:192.168.37.0/24
「サブネットの詳細」タブ DNSサーバー:8.8.8.8
ネットワークの作成時に下記のエラーが発生する場合、ネットワークアドレスの37の値を1から254までの別の数字に置き換えて実施するとよいです。
Error: Failed to create ... overlaps with another subnet
39
参考情報
OpenStackを試してみる!TryStack⑤
3. ルーターの作成
メニューの「ネットワーク管理」の「ルーター」をクリックし、「ルーターの作成」ボタンを押します。下記の入力を行い、入力後に「ルーターの作成」ボタンを押します。
ルーター名:router
「ゲートウェイの設定」を選択し、下記の内容を確認し「ゲートウェイの設定」ボタンを押します。
外部ネットワーク:externalを選択
40
参考情報
OpenStackを試してみる!TryStack⑥
ルーター”router”をクリックし、「インターフェースの追加」ボタンを押します。下記の選択を行い、「インターフェースの追加」ボタンを押します。
サブネット:privateを選択
メニューの「ネットワーク管理」の「ネットワークトポロジー」をクリックすると、作成したネットワークとルーターを確認できます。
41
参考情報
OpenStackを試してみる!TryStack⑦
4. SSH認証用の鍵ファイルの作成
メニューの「コンピュートの管理」の「アクセスとセキュリティ」をクリックし、「キーペア」タグをクリックします。「キーペアの作成」ボタンを押し、下記の入力を行い、「キーペアの作成」ボタンを押します。
キーペア名:mykey
キーペアの作成を行うと、SSH認証用の鍵ファイルmykey.pemをダウンロードします。
42
参考情報
OpenStackを試してみる!TryStack⑧
5. フローティングIPの確保
メニューの「コンピュートの管理」の「アクセスとセキュリティ」をクリックし、「Floating IP」タグをクリックします。「Floating IP
の確保」ボタンを押し、下記の内容を確認し「IPの確保」ボタンを押します。
プール:external
43
参考情報
OpenStackを試してみる!TryStack⑨
6. インスタンスの起動
メニューの「コンピュートの管理」の「インスタンス」をクリックし、「インスタンスの起動」ボタンを押します。下記の入力を行い、「起動」ボタンを押します。
「詳細」タブ
インスタンス名:インスタンス名を入力
フレーバー:m1.smallを選択
インスタンスのブートソース:イメージからの起動
イメージ名:Ubuntu 13.10を選択
「アクセスとセキュリティ」タブ: キーペア:mykeyを選択
「ネットワーク」タブ: 選択済みネットワーク:privateを選択44
参考情報
OpenStackを試してみる!TryStack⑩
メニューの「コンピュートの管理」の「インスタンス」にて起動したインスタンスの状態が”Active”で稼働状が"Running"であれば正常な動作です。インスタンス名をクリックして「概要」タブにインスタンスの詳細情報を、「ログ」タブにてインスタンスのログを、確認できます。
45
参考情報
OpenStackを試してみる!TryStack⑪
7. フローティングIPの割り当て
メニューの「コンピュートの管理」の「インスタンス」にてインスタンスのアクションの選択肢を表示し「Floating IPの割り当て」を選びます。5. フローティングIPの確保の項で獲得したIPアドレスを指定して「割り当て」ボタンを押します。
46
参考情報
OpenStackを試してみる!TryStack⑫
8. コンピュートにSSHでログイン
TryStack環境では行いませんが、一般的なOpenStack環境ではSSH認証用の鍵ファイル mykey.pemを使用して sshでログインします。
% ssh -i ~/mykey.pem [email protected]
47
参考情報
OpenStackを試してみる!TryStack⑬
参考情報
TryStack FAQ
http://openstack.redhat.com/TryStackFAQ
TryStackスタートガイド
http://youtu.be/EPZPzXSypl4
48
参考情報
Top Related