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
1.9k
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.2k
Ansible Collections概要
sky_joker
1
1.1k
Molecule VMware Driverの紹介
sky_joker
0
1.2k
VMwareとAnsible_Towerで実現する自動化2.0の世界
sky_joker
4
1.2k
Ansible VMwareモジュールの今までとこれから
sky_joker
3
2.5k
Ansible TowerでCICDの検証をしてみた話
sky_joker
9
2.3k
vCenterシミュレーターを使ってCIをやってみよう.pdf
sky_joker
6
2.3k
pyvmomiで始めるvSphere_API生活_初級編_.pdf
sky_joker
1
3.9k
NSXのAnsibleモジュールについて調べてみた
sky_joker
2
620
Other Decks in Technology
See All in Technology
累計ダウンロード数1億8000万を超えるアプリケーションプラットフォームのレガシーシステム脱却とモダン化への道
kmitsuhashi
0
120
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.4k
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
フルリモートワークはエンジニアの夢を叶えたか? #cm_odyssey
mamohacy
2
600
OSSコミットしてZennの課題を解決した話
dyoshikawa1993
0
150
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
190
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
ゆめみのアクセシビリティの現在地と今後
ryokatsuse
3
290
エンジニア向け会社紹介資料
caddi_eng
14
230k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
Thoughts on Productivity
jonyablonski
64
4.1k
Adopting Sorbet at Scale
ufuk
71
8.8k
Side Projects
sachag
451
42k
A Philosophy of Restraint
colly
200
16k
5 minutes of I Can Smell Your CMS
philhawksworth
200
19k
Imperfection Machines: The Place of Print at Facebook
scottboms
262
13k
Navigating Team Friction
lara
181
13k
Docker and Python
trallard
37
2.9k
Debugging Ruby Performance
tmm1
71
11k
Embracing the Ebb and Flow
colly
81
4.3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
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