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
VMwareで作ったIaaSにAnsible Towerを導入した話
Search
sky_joker
April 18, 2019
Technology
4
2k
VMwareで作ったIaaSにAnsible Towerを導入した話
Ansible Night in Tokyo 2019.04の発表資料です
https://ansible-users.connpass.com/event/125609/
sky_joker
April 18, 2019
Tweet
Share
More Decks by sky_joker
See All by sky_joker
NetboxとAnsibleを使ってvSphere環境の管理・作業の自動化をしてみよう
sky_joker
0
1.8k
Ansible Collections概要
sky_joker
1
1.2k
Molecule VMware Driverの紹介
sky_joker
0
1.4k
VMwareとAnsible_Towerで実現する自動化2.0の世界
sky_joker
4
1.3k
Ansible VMwareモジュールの今までとこれから
sky_joker
3
2.7k
Ansible TowerでCICDの検証をしてみた話
sky_joker
9
2.5k
vCenterシミュレーターを使ってCIをやってみよう.pdf
sky_joker
6
2.7k
pyvmomiで始めるvSphere_API生活_初級編_.pdf
sky_joker
1
4.6k
NSXのAnsibleモジュールについて調べてみた
sky_joker
2
730
Other Decks in Technology
See All in Technology
Amazon ECS デプロイツール ecspresso の開発を支える「正しい抽象化」の探求 / YAPC::Fukuoka 2025
fujiwara3
13
3.7k
Proxmox × HCP Terraformで始めるお家プライベートクラウド
lamaglama39
1
210
CloudFormationコンソールから、実際に作られたリソースを辿れるようになろう!
amixedcolor
1
190
探求の技術
azukiazusa1
7
2.3k
手を動かしながら学ぶデータモデリング - 論理設計から物理設計まで / Data modeling
soudai
PRO
24
5.9k
Perlブートキャンプ
hatena
0
220
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
0
220
なぜブラウザで帳票を生成したいのか どのようにブラウザで帳票を生成するのか
yagisanreports
0
110
JJUG CCC 2025 Fall バッチ性能!!劇的ビフォーアフター
hayashiyuu1
1
350
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
390
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
8
1.3k
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
980
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Producing Creativity
orderedlist
PRO
348
40k
Building Adaptive Systems
keathley
44
2.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
BBQ
matthewcrist
89
9.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Transcript
VMwareIaaS Ansible Tower Ansible Night in Tokyo 2019.04
01. Ansible Tower! 05. Ansible Tower! 04. '
03. %(#"(# 02. $(&
--- - 2 #"/(2 @sky_jokerxx 2 IT 2
$.")!/,. +-2 - Ansible - OpenShift0%/'*1 2 - .&$
AnsibleRaspberry Pi 4
5
IaaS$"VMware OpenStack$JT % GF C-)'02 E IaaS$8"5"W % OSSA
OpenStack" ISLH OSP @65BVMware$9 % &3,(.+/3M " #$:RP 4OWW UKRP >D V ! N<= ? N<=*317 XJTIQ W % ; Start automation journey!
(' /%-,;?A9N3 <K5C6 7&$=M?H " ;?4 " 01 64VURO06JMAQYZU=M] UR66M
*1EW\[_V_O=MD; ?4;;@I=8L>MK5D;?4 . 02 /%E5W1HCBO)#;?4 )#`T^XPS)#aI;?4 /%)# 03 DeepCF3! O;@CMG7 O:>?7C4 2O! ;?4 ! 04 + ;?49A
ixsL#RG<ESM l^m^M$'T • %HCG<K<N/ EFHH?XAI • Go • Python •
SOAP/REST API • pyvmomi/govmomi • / 2L,VYE@K<y >"C<z 75 • dxk>*&H?XGitHub/GitLab KJI5>H?XAI • Web API!.>BYG<XA I • 7ixs(ZabbixKJ)IAPI 5>H?XAI • ucZ7O CElasticsearch TSplunkKJL W4[H0 CE< DM • _whxor]gMeqxj>"C <y)eqxjLKWE@K<z • `ptxhxHSH?XU=L UI>"C< • \a^wj*&Tuxs ;1 3uc>"C< • vxbnux>WE< • 8><AI • 9 CE< • 6'-HS:(H?XU=;KXP @fwosK+Q>"C<
vRealize Orchestrator vs Ansible Tower
8 za+A6'# !}o~oa,0 GitHub/GitLabC Web API UI tC vRealize Orchestrator
(vRO) Ansible Tower TOOL I2 mqo{3/J J>@t sa D F v pynxu{ vRObJava/Javascript\=BUi;OKi Ansible\KjcPython\w Oji ).\GitC\PiabAnsible TowerXZW Web APIb KZW UIb `KZWOJvRObJavam\ Qsnm{XZW "%? Sj[LiabAnsible TowerXRXZW vRO\e &_Q_LO).\b_L Ansible Towerb).\KZW *7f9t=E_^ `KZW sb `KZW WXJvRObs\-Ua4R]NOH… AnsibleaDa O1`L vROb_Q|Sj[Li|r {e Nh`QNZW… Ansible Towerb).\F(O\PWDB vRObVMwareaAPI]javascriptl/<T[L_L]GTL Ansible\KjcYAML\Mw l5dkV[$Ri ^Yge0:_a\u{Kh
IaaS " # VMware/NSX" # ! Linux/ " # "#
ESXi
Ansible Tower + VMware(NSX) + )"&(* • Edge!$' • Edge
• IP/vNIC • FW • LB • NAT • BGP • %(( • • • %((!$' • %(( • IP/vNIC • Edge • • • • VM!$' • • • • QoS • # $ • • %(( •
15 API
:A7) "Yiw|G FRSlsG#Ie$G;KSDOO_?@_gKOGBMfNf =G<ROO_ g IOd 2G5PRO • pwrjkhiqwkogaeBAnsiblezn{}eBPlaybook#H
• PythonY KS`cRO • AnsibleTVMwarezn{}g>,Le $`RS^OdFI http://ur0.biz/QPOk "YAnsible2.3T%8gKSDOO_BVMwareaor~nzn{}YbdVHmvoWE`X`VFRO ]OBVMwareXNSXYNSX-TZ-4LeO_NSX-Vzn{}>,G[\ (KSDO • ;dVDVMwareaor~nzn{}Y]TXtjujg W>,LeJUWKO • NSX-Vzn{}Ymvo GNSX-TW-4Le]T3 OQTLe6gKO • NSX-Vzn{}: http://ur0.biz/S3rk NSX-Tzn{}: http://ur0.biz/gwtz !XW!g1KO`XgAWX(")XWeb API/+T*KS4KODUDE5GCRO JfY0&uyROXT9.Y'XxnFc $A zn{}A Extra VarsA
Playbook(main.yml) --- -
name: Variable expansion test hosts: localhost gather_facts: no tasks: - set_fact: output: Hello, World!! - debug: msg="{{ msg }}" PLAY [Variable expansion test] ******* TASK [set_fact] ****** ok: [localhost] TASK [debug] ******************** ok: [localhost] => { "msg": "Hello, World!!" } PLAY RECAP ********************* localhost : ok=1 changed=0 unreachable=0 failed=0 $ ansible-playbook main.yml -e '{"msg": "{{ output }}"}'
$ Web API(AWX) &%#&…. *01- $ tower-cli job
launch -h localhost -u admin -p redhat -J test -e '{"msg": "{{ output }}"}' --insecure .) ' !AWX($+/2 ,! "3 !4 http://u0u0.net/SrH5
Playbook(main.yml) http://u0u0.net/C9wl --- -
name: Variable expansion test hosts: localhost gather_facts: no tasks: - set_fact: output: Hello, World!! - debug: msg="{{ msg | set_ansible_vars(output) }}"
Ansible Tower + GitLab + Linux GitLab SFQPTJUPSZ
ᵓᴷᴷIPTU@WBST ᴹ ᵓᴷᴷIPTU@B ᴹ ᵋᴷᴷIPTU@C ᵓᴷᴷSPMFT ᴹ ᵓᴷᴷDPNNPO ᴹ ᴹ ᵋᴷᴷPTTFUVQ ᴹ ᵋᴷᴷXFC@TFSWFST ᴹ ᵓᴷᴷBQBDIF ᴹ ᵋᴷᴷJQUBCMFT ᵋᴷᴷXFC@TFSWFSTZNM Linux / • ͩΕ͕ɺ͍ͭɺͳʹΛʢͲͷϑΝΠ ϧΛʣɺͲ͏͍ͬͨతͰՃɾม ߋɾআͯ͠ɺ͍࣮ͭߦ༧ఆͳͷ͔ • (JU-BC$*ͷ݁Ռ • ͩΕ͕ɺ͍ͭɺԿʹରͯ͠ɺԿΛ࣮ ߦ͠ɺ݁ՌͲ͏ͳ͔ͬͨ • ࣌ܥྻʹه͞ΕΔͨΊใࠂॻॻ͘ ࣌ʹศར
21 origin
CI Linux /
07x.% TJP@LNPK8$&k^uclsVo\_tPu_]`l[M;CZR::<4IH • SDQ8AnsiblePqglprcj^g[qygO http://ur0.biz/2uEW • lr_]tx]wmxbry[*X3BN=W1x$BJ:IH PlaybookP#haicQVIJ:H=8M/WNMPewo^dx '/SK=IJN<IH!OQ2>H… •
GitLab CILDocker[ BJUWIH • FZGZ[ ?JjglzCI{[IJUWIH AWXxAnsible Tower[CY Q"Kfyn[IJ:HHT8"KIHUP[+ OAEY-=9IH • [OBJ5OPlaybookVvyt[IH • IHO6BJ+ OAEH u_]`l7 CIM;CZR::7 "#)(,7
Ansible Tower + Zabbix ESXi
<A5P • AnsibleFPlaybookR!C=P;CB4'ZTfa\R@AZabbixWl^LaiSXE<D9AKM9DPFBGD5 6 • ZabbixG4Ansible TowerF[kahl\I>GjlT_ilR)=PVbk]?:R%2=P0#EB8PFBG • 1F #EMO
"7QPFBGD56 • IBG)iUGZTfa\B*<A5>74!cYdlgBYe`7QQHAnsible TowerEiUG' B P>J3$.(77PFBGD56 • <>FF O :K+26N-B8P6K<QD5 *F!C/ ,&D)iU
Ansible Tower + Zabbix 25 http://ur0.biz/Vmoy
Ansible Tower 26
( CloudForms ManageIQ
Ansible Tower BCP DC_1 ESXi Tenant A
Tenant B DCNW DC_2 ESXi Tenant A Tenant B DCNW
Ansible Tower "AL&?]5,6;[x2%^9(9-(J4IO 28
"!@)I *E,#0W/$ \ ZHSVPython'FPlaybook(YAML)1=KFA7KF GitLab'F3QAnsible TowerBD, BD, \ Ansible Tower 3Q <: UM3Q ;[N>P+ C %[.6R XG6RTYP+ .5 \
Ansible Tower HB5(6:81#8*:LA@O= MQ"PK GDFUV Ansible'2:-+:4?
IE <T; WX '2:-? V AnsibleAnsible Jupyter KernelC &:. /%1#,$)5 (6:8JNR>PR!S3:( &9-706:-V
Ansible
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