SlideShare a Scribd company logo
© 2014 VMware Inc. All rights reserved.© 2014 VMware Inc. All rights reserved.
01/16/2015
OpenStack and Vagrant
How to explore the greatness of OpenStack with Vagrant
Yves Fauser
Solutions Architect @ VMware
What is Vagrant – The Goals of Vagrant
Quote from Vagrant Web-Site:
“Create and configure
lightweight,
reproducible,
and portable
development environments.”
What is Vagrant
Repeatable
Quickly Build and destroy single machine and multi-machine environments
Configurable
Describe all the steps to build an environment in a single file, and bundle all the additional
needed resources in a folder structure on your local machine
Easy to use, easy to share
Share environments through version control like Git or with tar files (box files in Vagrant)
and then simply type “vagrant up” to start
Extensible
Large community of people contribute extensions (plugins and providers) to Vagrant –
Like the OpenStack Plugin, VMware plugin, etc. …. It’s all Ruby
What is Vagrant – How this relates to config management
Configuration Management
Vagrant starts the VM, orchestrates the access to the VM
(using keypair based authentication).
It also does some customization of the VM based on its OS Knowledge
(e.g. setting the Hostname and shares files between the developers machine
and the VM)
After this Vagrant “hands off” the task of configuring the VM to some form of
configuration management tool like:
Shell scripts
Puppet
Chef
Ansible
What is Vagrant – The Vagrantfile
Vagrant.configure(2) do |config|!
config.vm.box = "hashicorp/precise64"!
config.vm.network "forwarded_port", guest: 80, host: 3080!
!
config.vm.synced_folder "www", "/var/www"!
!
config.vm.provision 'shell', inline: !
'apt-get update && apt-get install apache2 -y'!
!
end!
Again, …. It’s all Ruby
ON TO A DEMO
What is Vagrant – Vagrant Providers
Vagrant Providers
Vagrant is hypervisor agnostic through so called “provider”
Vagrant provides a virtualbox provider by default
Hashicorp offers a commercial VMware Provider (Fusion / Workstation)
with a support model
Everybody can write a provider and offer it as a rubygem
(rubygems.org => Just search for Vagrant)
Example community driven providers are:
OpenStack, AWS, vSphere (ESX and vCenter), vCloud Director / vCloudAir, KVM, Parallels,
open VMware fusion / workstation, etc.
What is Vagrant – Vagrant Providers
Vagrant Providers
Vagrant offers a CLI to easily install Vagrant providers / plugins
from rubygems.org
yfauser$ vagrant plugin list!
vagrant-openstack-plugin (0.11.1)!
vagrant-share (1.1.4, system)!
vagrant-vcenter (0.3.2)!
vagrant-vmware-fusion (3.1.2)!
!
yfauser$ vagrant plugin help!
Usage: vagrant plugin <command> [<args>]!
!
Available subcommands:!
install!
license!
list!
uninstall!
update!
Vagrant OpenStack Providers
There is a big number of vagrant OpenStack providers available
The first one was the Rackspace provider:
https://rubygems.org/gems/rackspace
First non cloud provider specific fork from Edmund Haselwanter:
https://rubygems.org/gems/vagrant-openstack-plugin
New provider with added feature from Guillaume Giamarchi (also, it doesn’t
use fog):
https://rubygems.org/gems/vagrant-openstack-provider
And many more ….
Vagrant OpenStack Provider - Vagrantfile
require 'vagrant-openstack-plugin'!
!
Vagrant.configure("2") do |config|!
config.vm.box = "dummy"!
config.vm.hostname = "RubyWebDev”!
# Make sure the private key from the key pair is provided!
config.ssh.private_key_path = "~/.ssh/MyOpenStackSecretKey.pem”!
!
config.vm.provider :openstack do |os|!
os.username = "#{ENV['OS_USERNAME']}" # e.g. "#{ENV['OS_USERNAME']}"!
os.api_key = "#{ENV['OS_PASSWORD']}" # e.g. "#{ENV['OS_PASSWORD']}"!
os.flavor = /m1.small/ ! # Regex or String!
os.image = /Ubuntu 14.04 Cloud-Init with Puppet/ # Regex or String!
os.endpoint = "#{ENV['OS_AUTH_URL']}/tokens" # e.g. "#{ENV['OS_AUTH_URL']}/tokens"!
os.keypair_name = ”MyOpenStackKeypair" # as stored in Nova!
os.ssh_username = "ubuntu" # login for the VM!
os.network = "LabNet" # optional!
os.security_groups = ['Allow-All'] # optional!
os.tenant = "#{ENV['OS_TENANT_NAME']}" # optional!
os.floating_ip = :auto # optional (The floating IP to assign for this instance … !
os.floating_ip_pool = ”Router-Uplink-Network" # optional (The floating IP pool to allocate addresses from!
end!
!
config.vm.synced_folder "rails", "/home/ubuntu/rails” !
!
config.vm.provision "puppet" do |puppet|!
puppet.manifest_file = "Web-Server.pp"!
puppet.options = "--verbose --debug"!
end!
!
end!
Vagrant OpenStack Provider - Caveats
File sharing uses rsync over ssh only, so there is no instant update of the files
you share
However Vagrant can automatically watch and update your files with the
“rsync-auto” command
You need to install the “dummy box” with:
vagrant box add dummy
https://github.com/cloudbau/vagrant-openstack-plugin/raw/master/dummy.box
Be careful not to place sensitive data like the OS_PASSWORD into the
Vagrantfile, it will by default be copied into the VM in the /vagrant path
Questions?

More Related Content

What's hot

How Ansible Makes Automation Easy
How Ansible Makes Automation EasyHow Ansible Makes Automation Easy
How Ansible Makes Automation Easy
Peter Sankauskas
 
Deploying PHP Applications with Ansible
Deploying PHP Applications with AnsibleDeploying PHP Applications with Ansible
Deploying PHP Applications with Ansible
Orestes Carracedo
 
Advance discussion on Ansible - Rahul Inti
Advance discussion on Ansible - Rahul IntiAdvance discussion on Ansible - Rahul Inti
Advance discussion on Ansible - Rahul Inti
Sahil Davawala
 
Introducing Ansible
Introducing AnsibleIntroducing Ansible
Introducing Ansible
Francesco Pantano
 
infra-as-code
infra-as-codeinfra-as-code
infra-as-code
Itamar Hassin
 
Ansible - Hands on Training
Ansible - Hands on TrainingAnsible - Hands on Training
Ansible - Hands on Training
Mehmet Ali Aydın
 
Ansible 2.0 - How to use Ansible to automate your applications in AWS.
Ansible 2.0 - How to use Ansible to automate your applications in AWS.Ansible 2.0 - How to use Ansible to automate your applications in AWS.
Ansible 2.0 - How to use Ansible to automate your applications in AWS.
Idan Tohami
 
Ansible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User GroupAnsible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User Group
Orestes Carracedo
 
DevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & AnsibleDevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & Ansible
Arnaud LEMAIRE
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
John Lynch
 
F5 Automation and service discovery
F5 Automation and service discoveryF5 Automation and service discovery
F5 Automation and service discovery
Scott van Kalken
 
Investigation of testing with ansible
Investigation of testing with ansibleInvestigation of testing with ansible
Investigation of testing with ansible
Dennis Rowe
 
Ansible Best Practices - July 30
Ansible Best Practices - July 30Ansible Best Practices - July 30
Ansible Best Practices - July 30
tylerturk
 
Basics of Ansible - Sahil Davawala
Basics of Ansible - Sahil DavawalaBasics of Ansible - Sahil Davawala
Basics of Ansible - Sahil Davawala
Sahil Davawala
 
Introduction to Ansible (Pycon7 2016)
Introduction to Ansible (Pycon7 2016)Introduction to Ansible (Pycon7 2016)
Introduction to Ansible (Pycon7 2016)
Ivan Rossi
 
A quick intro to Ansible
A quick intro to AnsibleA quick intro to Ansible
A quick intro to Ansible
Dan Vaida
 
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
rmcleay
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them All
Tim Fairweather
 
CI/CD Using Ansible and Jenkins for Infrastructure
CI/CD Using Ansible and Jenkins for InfrastructureCI/CD Using Ansible and Jenkins for Infrastructure
CI/CD Using Ansible and Jenkins for Infrastructure
Faisal Shaikh
 
Network Automation with Ansible
Network Automation with AnsibleNetwork Automation with Ansible
Network Automation with Ansible
Anas
 

What's hot (20)

How Ansible Makes Automation Easy
How Ansible Makes Automation EasyHow Ansible Makes Automation Easy
How Ansible Makes Automation Easy
 
Deploying PHP Applications with Ansible
Deploying PHP Applications with AnsibleDeploying PHP Applications with Ansible
Deploying PHP Applications with Ansible
 
Advance discussion on Ansible - Rahul Inti
Advance discussion on Ansible - Rahul IntiAdvance discussion on Ansible - Rahul Inti
Advance discussion on Ansible - Rahul Inti
 
Introducing Ansible
Introducing AnsibleIntroducing Ansible
Introducing Ansible
 
infra-as-code
infra-as-codeinfra-as-code
infra-as-code
 
Ansible - Hands on Training
Ansible - Hands on TrainingAnsible - Hands on Training
Ansible - Hands on Training
 
Ansible 2.0 - How to use Ansible to automate your applications in AWS.
Ansible 2.0 - How to use Ansible to automate your applications in AWS.Ansible 2.0 - How to use Ansible to automate your applications in AWS.
Ansible 2.0 - How to use Ansible to automate your applications in AWS.
 
Ansible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User GroupAnsible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User Group
 
DevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & AnsibleDevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & Ansible
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
F5 Automation and service discovery
F5 Automation and service discoveryF5 Automation and service discovery
F5 Automation and service discovery
 
Investigation of testing with ansible
Investigation of testing with ansibleInvestigation of testing with ansible
Investigation of testing with ansible
 
Ansible Best Practices - July 30
Ansible Best Practices - July 30Ansible Best Practices - July 30
Ansible Best Practices - July 30
 
Basics of Ansible - Sahil Davawala
Basics of Ansible - Sahil DavawalaBasics of Ansible - Sahil Davawala
Basics of Ansible - Sahil Davawala
 
Introduction to Ansible (Pycon7 2016)
Introduction to Ansible (Pycon7 2016)Introduction to Ansible (Pycon7 2016)
Introduction to Ansible (Pycon7 2016)
 
A quick intro to Ansible
A quick intro to AnsibleA quick intro to Ansible
A quick intro to Ansible
 
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them All
 
CI/CD Using Ansible and Jenkins for Infrastructure
CI/CD Using Ansible and Jenkins for InfrastructureCI/CD Using Ansible and Jenkins for Infrastructure
CI/CD Using Ansible and Jenkins for Infrastructure
 
Network Automation with Ansible
Network Automation with AnsibleNetwork Automation with Ansible
Network Automation with Ansible
 

Similar to Open stack and_vagrant-os-meetup-2015

Vagrant
Vagrant Vagrant
Vagrant
Akshay Siwal
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Carlos Sanchez
 
Vagrant For DevOps
Vagrant For DevOpsVagrant For DevOps
Vagrant For DevOps
Lalatendu Mohanty
 
Tech Talk - Vagrant
Tech Talk - VagrantTech Talk - Vagrant
Tech Talk - Vagrant
Thomas Krille
 
Vagrant introduction for Developers
Vagrant introduction for DevelopersVagrant introduction for Developers
Vagrant introduction for Developers
Antons Kranga
 
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
Carlos Sanchez
 
Vagrant - Version control your dev environment
Vagrant - Version control your dev environmentVagrant - Version control your dev environment
Vagrant - Version control your dev environment
bocribbz
 
How To Set a Vagrant Development System
How To Set a Vagrant Development SystemHow To Set a Vagrant Development System
How To Set a Vagrant Development System
Paul Bearne
 
Continuous Delivery: The Next Frontier
Continuous Delivery: The Next FrontierContinuous Delivery: The Next Frontier
Continuous Delivery: The Next Frontier
Carlos Sanchez
 
From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012
Carlos Sanchez
 
Create Development and Production Environments with Vagrant
Create Development and Production Environments with VagrantCreate Development and Production Environments with Vagrant
Create Development and Production Environments with Vagrant
Brian Hogan
 
From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
Carlos Sanchez
 
Intro to vagrant
Intro to vagrantIntro to vagrant
Intro to vagrant
Mantas Klasavicius
 
Puppet for Java developers - JavaZone NO 2012
Puppet for Java developers - JavaZone NO 2012Puppet for Java developers - JavaZone NO 2012
Puppet for Java developers - JavaZone NO 2012
Carlos Sanchez
 
Virtualization for Developers
Virtualization for DevelopersVirtualization for Developers
Virtualization for Developers
John Coggeshall
 
Vagrant Up in 5 Easy Steps
Vagrant Up in 5 Easy StepsVagrant Up in 5 Easy Steps
Vagrant Up in 5 Easy Steps
Trevor Roberts Jr.
 
Vagrant
VagrantVagrant
Antons Kranga Building Agile Infrastructures
Antons Kranga   Building Agile InfrastructuresAntons Kranga   Building Agile Infrastructures
Antons Kranga Building Agile Infrastructures
Antons Kranga
 
Security Testing Using Infrastructure-As-Code
Security Testing Using Infrastructure-As-CodeSecurity Testing Using Infrastructure-As-Code
Security Testing Using Infrastructure-As-Code
Vision Concepts Infrastructure Services Solution
 
Puppet and Vagrant in development
Puppet and Vagrant in developmentPuppet and Vagrant in development
Puppet and Vagrant in development
Adam Culp
 

Similar to Open stack and_vagrant-os-meetup-2015 (20)

Vagrant
Vagrant Vagrant
Vagrant
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
 
Vagrant For DevOps
Vagrant For DevOpsVagrant For DevOps
Vagrant For DevOps
 
Tech Talk - Vagrant
Tech Talk - VagrantTech Talk - Vagrant
Tech Talk - Vagrant
 
Vagrant introduction for Developers
Vagrant introduction for DevelopersVagrant introduction for Developers
Vagrant introduction for Developers
 
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
Infrastructure testing with Jenkins, Puppet and Vagrant - Agile Testing Days ...
 
Vagrant - Version control your dev environment
Vagrant - Version control your dev environmentVagrant - Version control your dev environment
Vagrant - Version control your dev environment
 
How To Set a Vagrant Development System
How To Set a Vagrant Development SystemHow To Set a Vagrant Development System
How To Set a Vagrant Development System
 
Continuous Delivery: The Next Frontier
Continuous Delivery: The Next FrontierContinuous Delivery: The Next Frontier
Continuous Delivery: The Next Frontier
 
From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012
 
Create Development and Production Environments with Vagrant
Create Development and Production Environments with VagrantCreate Development and Production Environments with Vagrant
Create Development and Production Environments with Vagrant
 
From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
 
Intro to vagrant
Intro to vagrantIntro to vagrant
Intro to vagrant
 
Puppet for Java developers - JavaZone NO 2012
Puppet for Java developers - JavaZone NO 2012Puppet for Java developers - JavaZone NO 2012
Puppet for Java developers - JavaZone NO 2012
 
Virtualization for Developers
Virtualization for DevelopersVirtualization for Developers
Virtualization for Developers
 
Vagrant Up in 5 Easy Steps
Vagrant Up in 5 Easy StepsVagrant Up in 5 Easy Steps
Vagrant Up in 5 Easy Steps
 
Vagrant
VagrantVagrant
Vagrant
 
Antons Kranga Building Agile Infrastructures
Antons Kranga   Building Agile InfrastructuresAntons Kranga   Building Agile Infrastructures
Antons Kranga Building Agile Infrastructures
 
Security Testing Using Infrastructure-As-Code
Security Testing Using Infrastructure-As-CodeSecurity Testing Using Infrastructure-As-Code
Security Testing Using Infrastructure-As-Code
 
Puppet and Vagrant in development
Puppet and Vagrant in developmentPuppet and Vagrant in development
Puppet and Vagrant in development
 

More from yfauser

Open stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetupsOpen stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetups
yfauser
 
Open stack networking_101_update_2014
Open stack networking_101_update_2014Open stack networking_101_update_2014
Open stack networking_101_update_2014
yfauser
 
Linux Tag 2014 OpenStack Networking
Linux Tag 2014 OpenStack NetworkingLinux Tag 2014 OpenStack Networking
Linux Tag 2014 OpenStack Networking
yfauser
 
Osdc2014 openstack networking yves_fauser
Osdc2014 openstack networking yves_fauserOsdc2014 openstack networking yves_fauser
Osdc2014 openstack networking yves_fauser
yfauser
 
Nvp deep dive_session_cee-day
Nvp deep dive_session_cee-dayNvp deep dive_session_cee-day
Nvp deep dive_session_cee-day
yfauser
 
Open stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_diveOpen stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_dive
yfauser
 
Open stack networking_101_part-1
Open stack networking_101_part-1Open stack networking_101_part-1
Open stack networking_101_part-1
yfauser
 

More from yfauser (7)

Open stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetupsOpen stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetups
 
Open stack networking_101_update_2014
Open stack networking_101_update_2014Open stack networking_101_update_2014
Open stack networking_101_update_2014
 
Linux Tag 2014 OpenStack Networking
Linux Tag 2014 OpenStack NetworkingLinux Tag 2014 OpenStack Networking
Linux Tag 2014 OpenStack Networking
 
Osdc2014 openstack networking yves_fauser
Osdc2014 openstack networking yves_fauserOsdc2014 openstack networking yves_fauser
Osdc2014 openstack networking yves_fauser
 
Nvp deep dive_session_cee-day
Nvp deep dive_session_cee-dayNvp deep dive_session_cee-day
Nvp deep dive_session_cee-day
 
Open stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_diveOpen stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_dive
 
Open stack networking_101_part-1
Open stack networking_101_part-1Open stack networking_101_part-1
Open stack networking_101_part-1
 

Recently uploaded

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 

Recently uploaded (20)

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 

Open stack and_vagrant-os-meetup-2015

  • 1. © 2014 VMware Inc. All rights reserved.© 2014 VMware Inc. All rights reserved. 01/16/2015 OpenStack and Vagrant How to explore the greatness of OpenStack with Vagrant Yves Fauser Solutions Architect @ VMware
  • 2. What is Vagrant – The Goals of Vagrant Quote from Vagrant Web-Site: “Create and configure lightweight, reproducible, and portable development environments.”
  • 3. What is Vagrant Repeatable Quickly Build and destroy single machine and multi-machine environments Configurable Describe all the steps to build an environment in a single file, and bundle all the additional needed resources in a folder structure on your local machine Easy to use, easy to share Share environments through version control like Git or with tar files (box files in Vagrant) and then simply type “vagrant up” to start Extensible Large community of people contribute extensions (plugins and providers) to Vagrant – Like the OpenStack Plugin, VMware plugin, etc. …. It’s all Ruby
  • 4. What is Vagrant – How this relates to config management Configuration Management Vagrant starts the VM, orchestrates the access to the VM (using keypair based authentication). It also does some customization of the VM based on its OS Knowledge (e.g. setting the Hostname and shares files between the developers machine and the VM) After this Vagrant “hands off” the task of configuring the VM to some form of configuration management tool like: Shell scripts Puppet Chef Ansible
  • 5. What is Vagrant – The Vagrantfile Vagrant.configure(2) do |config|! config.vm.box = "hashicorp/precise64"! config.vm.network "forwarded_port", guest: 80, host: 3080! ! config.vm.synced_folder "www", "/var/www"! ! config.vm.provision 'shell', inline: ! 'apt-get update && apt-get install apache2 -y'! ! end! Again, …. It’s all Ruby ON TO A DEMO
  • 6. What is Vagrant – Vagrant Providers Vagrant Providers Vagrant is hypervisor agnostic through so called “provider” Vagrant provides a virtualbox provider by default Hashicorp offers a commercial VMware Provider (Fusion / Workstation) with a support model Everybody can write a provider and offer it as a rubygem (rubygems.org => Just search for Vagrant) Example community driven providers are: OpenStack, AWS, vSphere (ESX and vCenter), vCloud Director / vCloudAir, KVM, Parallels, open VMware fusion / workstation, etc.
  • 7. What is Vagrant – Vagrant Providers Vagrant Providers Vagrant offers a CLI to easily install Vagrant providers / plugins from rubygems.org yfauser$ vagrant plugin list! vagrant-openstack-plugin (0.11.1)! vagrant-share (1.1.4, system)! vagrant-vcenter (0.3.2)! vagrant-vmware-fusion (3.1.2)! ! yfauser$ vagrant plugin help! Usage: vagrant plugin <command> [<args>]! ! Available subcommands:! install! license! list! uninstall! update!
  • 8. Vagrant OpenStack Providers There is a big number of vagrant OpenStack providers available The first one was the Rackspace provider: https://rubygems.org/gems/rackspace First non cloud provider specific fork from Edmund Haselwanter: https://rubygems.org/gems/vagrant-openstack-plugin New provider with added feature from Guillaume Giamarchi (also, it doesn’t use fog): https://rubygems.org/gems/vagrant-openstack-provider And many more ….
  • 9. Vagrant OpenStack Provider - Vagrantfile require 'vagrant-openstack-plugin'! ! Vagrant.configure("2") do |config|! config.vm.box = "dummy"! config.vm.hostname = "RubyWebDev”! # Make sure the private key from the key pair is provided! config.ssh.private_key_path = "~/.ssh/MyOpenStackSecretKey.pem”! ! config.vm.provider :openstack do |os|! os.username = "#{ENV['OS_USERNAME']}" # e.g. "#{ENV['OS_USERNAME']}"! os.api_key = "#{ENV['OS_PASSWORD']}" # e.g. "#{ENV['OS_PASSWORD']}"! os.flavor = /m1.small/ ! # Regex or String! os.image = /Ubuntu 14.04 Cloud-Init with Puppet/ # Regex or String! os.endpoint = "#{ENV['OS_AUTH_URL']}/tokens" # e.g. "#{ENV['OS_AUTH_URL']}/tokens"! os.keypair_name = ”MyOpenStackKeypair" # as stored in Nova! os.ssh_username = "ubuntu" # login for the VM! os.network = "LabNet" # optional! os.security_groups = ['Allow-All'] # optional! os.tenant = "#{ENV['OS_TENANT_NAME']}" # optional! os.floating_ip = :auto # optional (The floating IP to assign for this instance … ! os.floating_ip_pool = ”Router-Uplink-Network" # optional (The floating IP pool to allocate addresses from! end! ! config.vm.synced_folder "rails", "/home/ubuntu/rails” ! ! config.vm.provision "puppet" do |puppet|! puppet.manifest_file = "Web-Server.pp"! puppet.options = "--verbose --debug"! end! ! end!
  • 10. Vagrant OpenStack Provider - Caveats File sharing uses rsync over ssh only, so there is no instant update of the files you share However Vagrant can automatically watch and update your files with the “rsync-auto” command You need to install the “dummy box” with: vagrant box add dummy https://github.com/cloudbau/vagrant-openstack-plugin/raw/master/dummy.box Be careful not to place sensitive data like the OS_PASSWORD into the Vagrantfile, it will by default be copied into the VM in the /vagrant path