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.6k
Ansible Collections概要
sky_joker
1
1.2k
Molecule VMware Driverの紹介
sky_joker
0
1.4k
VMwareとAnsible_Towerで実現する自動化2.0の世界
sky_joker
4
1.2k
Ansible VMwareモジュールの今までとこれから
sky_joker
3
2.7k
Ansible TowerでCICDの検証をしてみた話
sky_joker
9
2.4k
vCenterシミュレーターを使ってCIをやってみよう.pdf
sky_joker
6
2.6k
pyvmomiで始めるvSphere_API生活_初級編_.pdf
sky_joker
1
4.4k
NSXのAnsibleモジュールについて調べてみた
sky_joker
2
700
Other Decks in Technology
See All in Technology
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
3
180
Devin&Cursor、それぞれの「本質」から導く最適ユースケース戦略
empitsu
8
2.4k
プラットフォームとしての Datadog / Datadog as Platforms
aoto
PRO
1
330
Introduction to Bill One Development Engineer
sansan33
PRO
0
240
いまさら聞けない Git 超入門 〜Gitって結局なに?から始める第一歩〜
devops_vtj
0
160
Digitization部 紹介資料
sansan33
PRO
1
3.8k
NW運用の工夫と発明
recuraki
1
770
2025advance01
minamizaki
0
130
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
38k
AIの電力問題を概観する
rmaruy
1
210
ソフトウェアは捨てやすく作ろう/Let's make software easy to discard
sanogemaru
10
5.8k
Houtou.pm #1
papix
0
660
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.3k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
What's in a price? How to price your products and services
michaelherold
245
12k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
A better future with KSS
kneath
239
17k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
How to Ace a Technical Interview
jacobian
276
23k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
How GitHub (no longer) Works
holman
314
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Writing Fast Ruby
sferik
628
61k
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