cloudinit
TRANSCRIPT
![Page 1: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/1.jpg)
CLOUD INITSri Rajan
![Page 2: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/2.jpg)
Intro
• The defacto multi-distribution package that handles early initialization of a cloud instance– As described by Ubuntu
• Early stage configuration of servers (think rc.local)
![Page 3: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/3.jpg)
Intro
• No install required*• Cloud Platform support required
• Works on most common Linux distros
![Page 4: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/4.jpg)
Windows?
• CloudBaseInit• Windows agents (Apache license)• Similar functionality• Next Time…
![Page 5: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/5.jpg)
How does it work?• Cloud Server
• Data Source• EC2 (magic ip)• Metadata service (OpenStack)• Config Drive• OVF (new)• More(Nebula, CloudStack, Atl Cloud…)
• Cloud Init Modules (bunch of Python scripts)
![Page 6: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/6.jpg)
Data Source
• meta-data(from cloud platform)• Server name, IP etc
• user-data• What you want it do do, scripts etc
• Saved to /var/lib/cloud/
![Page 7: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/7.jpg)
Data Source – Metadata Service
• Metadata service as part of OpenStack• http://169.254.169.254/latest/meta-data (user-data)
• NAT rules make this work
• Provided by nova-api or neutron-metadata-proxy
![Page 8: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/8.jpg)
Data Source – Config Drive
• Like a USB stick attached to the server
• Cloud provider metadata
• User data provided via YAML and MIME encoded files
![Page 9: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/9.jpg)
Data Source – Vmware
• Similar to config drive (but more arcane?)
• cloud-init searches for a CDROM on boot
• ISO images which contain user data
![Page 10: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/10.jpg)
Modules
• Add users• Create files• Run arbitrary commands• Bootstrap Chef/Puppet• More…Write your own…etc
• Configuration management? (not really)
![Page 11: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/11.jpg)
Demo/Examples
https://github.com/srirajan/cloudinit-demo
![Page 12: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/12.jpg)
Troubleshooting
• /var/log/cloud-init.log (verbose logs)
• /var/lib/cloud/ (data, files etc from the metadata service or config drive
• cloudinit [h] [version] [file FILES] [debug] [-force] {query,init,modules,single}
![Page 13: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/13.jpg)
Links etc…
• https://cloudinit.readthedocs.org
• https://github.com/cloudbase/cloudbase-init
![Page 14: Cloudinit](https://reader035.vdocuments.us/reader035/viewer/2022071822/55b8c518bb61ebf9478b45de/html5/thumbnails/14.jpg)
THANK YOU