Upload
masataka-tsukamoto
View
726
Download
1
Embed Size (px)
Citation preview
Ansibleで味わうHelion OpenStack日本ヒューレット・パッカード株式会社Helion Professional Services塚本正隆(@tsukaman)Feb 23rd, 2017 / LT @ Ansible Practice Meetup
2
みなさん
をご存知ですか?
3
から始まるプレゼンを前にやってるので
知らない人はそっちをまず見てください
4
Ansibleでインストール!新生Helion OpenStack!!http://bit.ly/160525_HLM
5
動画もあるよ
https://youtu.be/gg_tHKAZQ1U
6
このプレゼンでHelion OpenStackをインストールする
ものとして紹介したのが
7
HLM
8
HOSインストーラー
HPE Helion Lifecycle Manager
9
HOSのライフサイクルマネージャー
HPE Helion Lifecycle Manager
10
HPE HLMの特徴
–HLMはインストールだけを行うものにあらず!–クラウドの再構成–アップグレードやアップデート、パッチやホットフィックスの適用–ノードへのサービスの追加–ノードの追加や削除–メンテナンスの為のノードのオフライン化 などなど
–柔軟で拡張性の高いクラウド環境を容易に管理できる!–みんな大好きAnsibleを活用することで作業の効率化を実現–YAMLで構成を定義し、そこからPlaybookを生成して利用
10
11
インストールの大まかな流れ
–HPE Helion OpenStack 4.0 Docs:https://docs.hpcloud.com/hos-4.x/
–インストールの大まかな流れ1. ハードウェア基本設定(iLO/IPMI、BIOS、時刻(UTC)、WoL、PXE等)2. OpenStack構成に準じた物理ネットワークの設定やDNS/NTPなどの準備3. HLM(HPE Linux)のインストール4. Helion Lifecycle Managerの初期展開5. Example構成定義ファイル(ymlファイル)のコピー/編集と保存(git commit)6. 物理ホストのプロビジョニング(ansible)7. Configuration Processorの実行(ansible)8. OpenStack環境の展開(ansible)
11
12
インストール実行例$ sudo mount <HelionOpenStack-4.0.1.iso> /media/cdrom$ tar xvf /media/cdrom/hos/hos-4.0.1-20161110T130634Z.tar$ ~/hos-4.0.1/hos-init.bash$ cd ~/helion/my_cloud/definition$ cp -r ~/helion/examples/entry-scale-kvm-vsa/* .$ vi cloudConfig.yml data/*.yml$ cd ~/helion/hos/ansible$ git add –A$ git commit -m "COMMIT MESSAGE“$ ansible-playbook -i hosts/localhost cobbler-deploy.yml$ ansible-playbook -i hosts/localhost bm-reimage.yml$ ansible-playbook -i hosts/localhost config-processor-run.yml$ ansible-playbook -i hosts/localhost ready-deployment.yml$ cd ~/scratch/ansible/next/hos/ansible$ ansible-playbook -i hosts/verb_hosts site.yml
12
13
Ansibleが活躍しているところ$ sudo mount <HelionOpenStack-4.0.1.iso> /media/cdrom$ tar xvf /media/cdrom/hos/hos-4.0.1-20161110T130634Z.tar$ ~/hos-4.0.1/hos-init.bash$ cd ~/helion/my_cloud/definition$ cp -r ~/helion/examples/entry-scale-kvm-vsa/* .$ vi cloudConfig.yml data/*.yml$ cd ~/helion/hos/ansible$ git add –A$ git commit -m "COMMIT MESSAGE“$ ansible-playbook -i hosts/localhost cobbler-deploy.yml$ ansible-playbook -i hosts/localhost bm-reimage.yml$ ansible-playbook -i hosts/localhost config-processor-run.yml$ ansible-playbook -i hosts/localhost ready-deployment.yml$ cd ~/scratch/ansible/next/hos/ansible$ ansible-playbook -i hosts/verb_hosts site.yml
13
14
それぞれがなにをしているか?
15
Ansibleが活躍しているところ$ sudo mount <HelionOpenStack-4.0.1.iso> /media/cdrom$ tar xvf /media/cdrom/hos/hos-4.0.1-20161110T130634Z.tar$ ~/hos-4.0.1/hos-init.bash$ cd ~/helion/my_cloud/definition$ cp -r ~/helion/examples/entry-scale-kvm-vsa/* .$ vi cloudConfig.yml data/*.yml$ cd ~/helion/hos/ansible$ git add –A$ git commit -m "COMMIT MESSAGE“$ ansible-playbook -i hosts/localhost cobbler-deploy.yml$ ansible-playbook -i hosts/localhost bm-reimage.yml$ ansible-playbook -i hosts/localhost config-processor-run.yml$ ansible-playbook -i hosts/localhost ready-deployment.yml$ cd ~/scratch/ansible/next/hos/ansible$ ansible-playbook -i hosts/verb_hosts site.yml
15
16
hos-init.bashHLMの初期セットアップスクリプト
なんかいろいろええ感じに作ったりしてくれたあと消えます
17
Ansibleが活躍しているところ$ sudo mount <HelionOpenStack-4.0.1.iso> /media/cdrom$ tar xvf /media/cdrom/hos/hos-4.0.1-20161110T130634Z.tar$ ~/hos-4.0.1/hos-init.bash$ cd ~/helion/my_cloud/definition$ cp -r ~/helion/examples/entry-scale-kvm-vsa/* .$ vi cloudConfig.yml data/*.yml$ cd ~/helion/hos/ansible$ git add –A$ git commit -m "COMMIT MESSAGE“$ ansible-playbook -i hosts/localhost cobbler-deploy.yml$ ansible-playbook -i hosts/localhost bm-reimage.yml$ ansible-playbook -i hosts/localhost config-processor-run.yml$ ansible-playbook -i hosts/localhost ready-deployment.yml$ cd ~/scratch/ansible/next/hos/ansible$ ansible-playbook -i hosts/verb_hosts site.yml
17
18
cobbler-deploy.yml各ノードをプロビジョニングするためになんかいろいろ
ええ感じに作ったりしてくれます
19
bm-reimage.yml各ノードをなんかいろいろ
ええ感じにプロビジョニングしてくれます
20
config-processor-run.yml定義内容をなんかいろいろ
ええ感じに検証したり保持する情報をまとめてくれます
2121
22
ready-deployment.yml各ファイルをなんかいろいろええ感じにデプロイ用の
ディレクトリに配置してくれます
23
Ansibleが活躍しているところ$ sudo mount <HelionOpenStack-4.0.1.iso> /media/cdrom$ tar xvf /media/cdrom/hos/hos-4.0.1-20161110T130634Z.tar$ ~/hos-4.0.1/hos-init.bash$ cd ~/helion/my_cloud/definition$ cp -r ~/helion/examples/entry-scale-kvm-vsa/* .$ vi cloudConfig.yml data/*.yml$ cd ~/helion/hos/ansible$ git add –A$ git commit -m "COMMIT MESSAGE“$ ansible-playbook -i hosts/localhost cobbler-deploy.yml$ ansible-playbook -i hosts/localhost bm-reimage.yml$ ansible-playbook -i hosts/localhost config-processor-run.yml$ ansible-playbook -i hosts/localhost ready-deployment.yml$ cd ~/scratch/ansible/next/hos/ansible$ ansible-playbook -i hosts/verb_hosts site.yml
23
24
site.ymlなんかいろいろええ感じに
OpenStackをデプロイしてくれます
25
インストールだけ?
26
hlm-stop.ymlなんかいろいろええ感じにOpenStackをGracefulに
停止してくれます
27
hlm-start.ymlなんかいろいろええ感じにOpenStackをGracefulに
開始してくれます
28
hlm-status.ymlなんかいろいろええ感じにOpenStackの各サービスが
動いているか教えてくれます
29
nova-reconfigure.ymlなんかいろいろええ感じにNovaさんの設定変更を
してくれます
30
このへんのPlaybookは各サービス毎のも
用意してます
31
ふむふむほかには?
32
percona-bootstrap.ymlなんかいろいろええ感じに
Percona(MySQLクラスタ)の起動をしてくれます
33
vsalm-configure-cluster.ymlなんかいろいろええ感じにVSA(Virtual Storage Appliance)クラスタの設定をしてくれます
34
なんでAnsibleのPlaybookでやるの?
35
なんかノードいっぱいあるし
3636
3737
38
Enterprise GradeなOpenStackですからね!
39
冪等性大活躍
40
とまぁそんなわけで
41
便利なPlaybookさんがだいたい500個ほどあるわけです。
42
\ ドヤァッ /( *`ω´)
43
各作業で何のPlaybookを使うかは
44
https://docs.hpcloud.com/
45
にいろいろとドキュメントが置いてあります
46
え?
47
もっとHOSでAnsibleと
キャッキャウフフしたい?
48
Helion OpenStack買っちゃえばいいんじゃ
ないかな・・・?
49
もしくは・・・
50
ウチくる!?
Thank youHelion Professional Services塚本正隆 (@tsukaman)
クラウドやろうぜ!We are hiring!