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.3k
Ansible Collections概要
sky_joker
1
1.1k
Molecule VMware Driverの紹介
sky_joker
0
1.3k
VMwareとAnsible_Towerで実現する自動化2.0の世界
sky_joker
4
1.2k
Ansible VMwareモジュールの今までとこれから
sky_joker
3
2.6k
Ansible TowerでCICDの検証をしてみた話
sky_joker
9
2.3k
vCenterシミュレーターを使ってCIをやってみよう.pdf
sky_joker
6
2.4k
pyvmomiで始めるvSphere_API生活_初級編_.pdf
sky_joker
1
4k
NSXのAnsibleモジュールについて調べてみた
sky_joker
2
640
Other Decks in Technology
See All in Technology
フルカイテン株式会社 採用資料
fullkaiten
0
36k
visionOSでの空間表現実装とImmersive Video表示について / ai-immersive-visionos
cyberagentdevelopers
PRO
1
100
グローバル展開を見据えたサービスにおける機械翻訳プラクティス / dp-ai-translating
cyberagentdevelopers
PRO
1
150
Gradle: The Build System That Loves To Hate You
aurimas
2
140
「最高のチューニング」をしないために / hack@delta 24.10
fujiwara3
20
3.3k
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
320
現地でMeet Upをやる場合の注意点〜反省点を添えて〜
shotashiratori
0
480
MAMを軸とした動画ハンドリングにおけるAI活用前提の整備と次世代ビジョン / abema-ai-mam
cyberagentdevelopers
PRO
1
110
クライアントサイドでよく使われる Debounce処理 をサーバサイドで3回実装した話
yoshiori
1
140
小規模に始めるデータメッシュとデータガバナンスの実践
kimujun
3
550
チームを主語にしてみる / Making "Team" the Subject
ar_tama
4
300
失敗しないOpenJDKの非互換調査
tabatad
0
260
Featured
See All Featured
Building an army of robots
kneath
302
42k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
504
140k
Six Lessons from altMBA
skipperchong
26
3.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
What's in a price? How to price your products and services
michaelherold
243
12k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
22k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
The Power of CSS Pseudo Elements
geoffreycrofte
72
5.3k
Unsuck your backbone
ammeep
668
57k
Embracing the Ebb and Flow
colly
84
4.4k
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