Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Molecule VMware Driverの紹介
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
sky_joker
January 20, 2021
Technology
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Molecule VMware Driverの紹介
sky_joker
January 20, 2021
More Decks by sky_joker
See All by sky_joker
NetboxとAnsibleを使ってvSphere環境の管理・作業の自動化をしてみよう
sky_joker
0
2k
Ansible Collections概要
sky_joker
1
1.3k
VMwareとAnsible_Towerで実現する自動化2.0の世界
sky_joker
4
1.3k
Ansible VMwareモジュールの今までとこれから
sky_joker
3
2.9k
Ansible TowerでCICDの検証をしてみた話
sky_joker
9
2.6k
vCenterシミュレーターを使ってCIをやってみよう.pdf
sky_joker
6
3k
pyvmomiで始めるvSphere_API生活_初級編_.pdf
sky_joker
1
4.9k
NSXのAnsibleモジュールについて調べてみた
sky_joker
2
780
VMwareで作ったIaaSにAnsible Towerを導入した話
sky_joker
4
2.1k
Other Decks in Technology
See All in Technology
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
350
enechainの内製セルフサービスプラットフォーム
hiyosi
0
110
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
240
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
130
その指示、Bobにしっかり伝わってる?初心者でも即実践できる プロンプト/コンテキスト設計のコツ
muehara
1
140
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
130
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
1k
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
270
なぜSRE・セキュリティは評価されないのか?守りの組織を事業成長エンジンに変えた実践
cscengineer
PRO
3
2.2k
DMMブックスのNext.js化を加速させるAI活用 / Migrating DMM Books to Next.js with AI
kentarom
1
330
データエンジニアリングワークショップ:Auto LoaderとSparkで学ぶデータパイプライン構築
databricksjapan
PRO
0
150
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
260
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
460
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Mobile First: as difficult as doing things right
swwweet
225
10k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
490
Leo the Paperboy
mayatellez
8
2.2k
It's Worth the Effort
3n
188
29k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
From π to Pie charts
rasagy
0
350
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
510
Designing Experiences People Love
moore
143
24k
Building the Perfect Custom Keyboard
takai
2
860
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
290
Transcript
www.goodpello.com Molecule VMware Driver の紹介 VMware DevOps Meetup #7
今日話す事 01. Moleculeについて 02. Molecule VMware Driverの紹介 03. Molecule VMware
Driverの使い方(デモ) 04. まとめ
自己紹介 3 --- - 名前: 大嶋 健容 Twitter: @sky_jokerxx GitHub:
sky-joker 所属: Red Hat K.K. 仕事: コンサルタント コントリビュート: ansible: collaborator: - VMware - Zabbix 浸かってる沼: - 小型PCクラスタ構築 @sky_jokerxx 得意: - ansible - VMware(vSphere, NSX) - vSphere/NSX APIを使った開発 - OSSとVMwareの組み合わせ 興味: - 自動化 - コンテナ(k8s, OpenShift) - CICD 趣味: - 自宅ラックで検証 - Ansibleモジュール開発 ナナチスキ
4 Moleculeについて Moleculeとは ▸ AnsibleのRoleをテストするフレームワーク ▸ テストの環境準備からテストの実行(Roleの実行、結 果の評価)および環境破棄までの処理を自動で実施 ▸ テストの環境準備・破棄に必要なドライバは、
vagrant/OpenStack/azure/gce/ec2などがある ▸ テストごとのシナリオを作成することで、テストパ ターンを複数用意することが可能
Moleculeが出来ること 5 テスト環境の準備 セットアップ 結果検証 テスト環境の破棄 vCenterログイン VMクローンなど ホスト名設定 NW設定
ツールインストール など 実行結果検証 正しく設定が 入ってるかなど 手動で実施する場合 VM削除 vCenterログアウト Moleculeを使用した場合 テスト環境の準備 セットアップ テスト環境の破棄 一連の作業が自動化可能 テスト実行 Playbook/Role実行 など 結果検証 テスト実行
VMwareサポートパッチはクローズに 6 その前にPR見とこう 作るぞ!! あるやん! コメントを読み進めると 既にドライバーが沢山あるし、ほとんどの人は VagrantやDockerで済むし 需要あるか分からない コメント
ちーん
delegatedドライバで代替できるが 7 ▸ delegatedドライバを使うことでドライバに対応していない環境でもMolecule を使う事が可能 delegateドライバを使用する場合は、以下の処理を自作する必要がある ▸ テストインスタンスを構築する処理 ▸ 作成したテストインスタンスへ接続するためのインベントリ情報の生成
▸ テスト実行後にテストインスタンスを破棄する処理
VMware Driverを作ってみた 8 https://github.com/sky-joker/molecule-vmware
VMware Driverインストール方法 9 $ pip install molecule-vmware ansible pyvmomi ▸
pipでインストール • pypi https://pypi.org/project/molecule-vmware/ • GitHub https://github.com/sky-joker/molecule-vmware
VMware Driver使い方 10 $ molecule init role {ROLE_NAME} -d vmware
▸ Roleとシナリオを新規に作成 $ cd {ROLE_DIR} $ molecule init scenario -d vmware ▸ 既存のRoleにシナリオを新規に作成
VMware Driver使い方 11 $ ls -l {ROLE_DIR}/molecule/default/ | awk '{print
$9}' | sed -e "/^ *$/d" | cat -n 1 converge.yml 2 create_linux_instance.yml 3 create_windows_instance.yml 4 create.yml 5 destroy.yml 6 INSTALL.rst 7 molecule.yml 8 verify.yml ▸ シナリオディレクトリの中身 番号 説明 1 テストインスタンスへRoleを実行するPlaybook 2 Linuxのインスタンスを作成するときに実行するPlaybook 3 Windowsのインスタンスを作成するときに実行するPlaybook 4 インスタンスを作成するPlaybook(2, 3はこのPlaybookから呼ばれる) 5 インスタンスを削除するplaybook 6 インストールドキュメント 7 Moleculeの設定 8 converge実行後に状態が想定通りになっているか?を確認する処理を書くPlaybook
12 VMware Driver使い方 --- dependency: name: galaxy driver: name: vmware
# 1 vcenter_hostname: vcsa.local vcenter_username:
[email protected]
vcenter_password: secret validate_certs: false datacenter: DC cluster: Cluster folder: /vm vm_username: root vm_password: secret instance_os_type: linux # 5 platforms: - name: instance template: CentOS7_TMP hardware: num_cpus: 2 memory_mb: 2048 networks: - name: VM Network ip: 100.64.0.2 netmask: 255.255.255.0 gateway: 100.64.0.1 provisioner: name: ansible verifier: name: ansible # 2 # 3 # 4 # 6 番号 説明 1 使用するドライバを指定 2 vCenterのアクセス先、ログイン情報を指定 3 テストインスタンスを作成するリソース先を指定 4 テストインスタンスのゲストOSのアカウントを指定 5 テストインスタンスのOSタイプを指定 [linux or windows] 6 テストインスタンスの名前や使用するテンプレート、リソース、NWを指定 次のパラメーターはvmwre_guestと同じものを指定可能 • hardware • networks molecule.yml ▸ moleculeの設定を環境に合わせて変更
VMware Driver使い方 13 $ molecule test ▸ Roleディレクトリの中で以下のコマンドを実行
14 まとめ VMware Driverを使ってテンプレートを自動生成 ▸ テストインスタンスを構築・破棄するための create.yml/destroy.yml を自 動生成することが可能 WN
X BSF N PMFDVMF テストは自動化して効率化 ▸ Moleculeを使用することで、テストインスタンスの自動構築、テスト実行 、結果検証、テストインスタンス削除を自動で実施することが可能 スクリプトのテストにも使えるかも ▸ 例外的な使い方としては、PowershellやBashなどで作ったスクリプトをテ ストインスタンスへコピーして実行するRoleを作れば、スクリプト自体の テストもできるかも ansiblejpのvmwareチャンネルでメンバー募集中! ▸ https://bit.ly/ansiblejp-slack
Thank you For listening https://twitter.com/sky_jokerxx https://qiita.com/sky_jokerxx https://sky-joker.tech https://github.com/sky-joker @sky_jokerxx