SlideShare a Scribd company logo
1 of 44
Download to read offline
Ge#ng&Started&with&Ansible
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
A"brief"introduc.on"
to"Ansible
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Simple'things'should'be'simple,'
complex'things'should'be'possible.
—"Alan"Kay
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
!Ansible!is!a!simple,!
declara0ve!push!based!
automa0on!tool!to!
describe!the!state!you!
want!servers!to!be!in.
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
History
• Created(by(Michael(DeHaan(
(CTO(Ansible(Inc.)
• Open(source(project,(started(February(
2012
• Maintained(by(very(acEve(Open(Source(
community
• Ansible(Inc.(provides(training,(
consulEng(services(and(offers(a(webK
based(management(tool(called(Ansible(
Tower
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(facts
• Ansible)is)based)on)Python)(v2.7)
• Standard)SSH)to)connect)to)managed)servers/nodes
• Push?based)system)
• Agentless)operaAon
• No)central)server,)no)special)soDware)on)managed)nodes
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(facts((con/nued)
• Facts'from'each'node'used'for'state1full'decisions
• Fetch'context'before'tasks,'skip'intelligently
• Indempotent'ConfigMgmt'tool'(like'others)
• Extend'with'custom'modules,'use'any'language'which'can'return'
JSON'(Bash,'Ruby,'Go,'Python,'etc.)
• Source'inventory'from'various'datasource,'return'as'JSON
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
ConfigMgmt)in)comparison
• Ansible)is)similar)tool)to)Chef,)Puppet)or)Salt
• Shared)purpose)8)solve)tasks)for)CfgMgmt,)provisioning,)
deployment,)etc.
• Ansible)may)be)simplest)and)easiest)configuraAon)management)
tool)to)start)with
• Chef,)Puppet,)Salt)are)great)tools)as)well,)may)be)more)complex)
to)start)with,)steeper)learning)curve,)etc.
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Requirements+to+use+Ansible
• Ansible)installed)on)your)Control)Machine)(admin)machine)
• Python)required)on)all)nodes/servers)to)manage
• Installers)provided)for)OS)X,)Linux)machines)(only)
• Use)SSH)publicHkey)setup)to)connect)to)nodes
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
How$to$install$Ansible$(OS$X,$Linux)
Requirements:,
,•,python2dev,for,linux,
,•,xcode2command2line,tools,on,OS,X
sudo easy_install pip
sudo pip install ansible
Alterna(ve*install*methods:*
*•*homebrew*for*OS*X
*•*install*from*source
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Basic(Terminology:(
• Modules - accomplish dedicated Tasks (set values, use templates)
• Tasks - execute Module specific parameters, variables, etc.
• Variables - configuration-wide, Playbook / Roles specific vars
• Facts - gather information about the target system
• Handlers - like Tasks but usually get called by another Task
• Roles - group related Tasks, encapsulate data to accomplish Tasks
• Files - files directory contains files copied over to target
• Templates - Jinja2 format w/ placeholders to insert variables
• Vault - encrypt sensible data (i.e. files containing passwords)
• Plays - are lists of Tasks which apply to hosts / host groups
• Playbooks - YAML formatted files orchestrate steps sequentially
• Inventory - reference inside 'host' & 'ansible.cfg' files
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Demo%Filetree%(Example)
.
|-- ansible.cfg # inventory config file
|-- playbook.yml # playbook file
|-- roles
| |-- defaults # defaults file
| | `-- main.yml
| |-- files # files directory
| |-- handlers
| | `-- main.yml # handlers file
| |-- tasks
| | `-- main.yml # tasks file
| |-- templates
| | `-- template.conf.j2 # template file
| `-- vars
| `-- main.yml # variables file
`-- hosts # hosts file
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Flexible'file'op+ons
Ansible(parses(into(subfolder
data(could(be(organized(in(nested(folder/file(structure,(
`-- vars # named subfolder
`-- main.yml # variables file
or#as#plain#file
`-- vars.yml # variables file
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Config
• You%can%use%environment%variables%
export ANSIBLE_SUDO_USER=root
• But%be3er%define%in%ansible.cfg%file%(global%or%project%based)
./ansible.cfg # current directory
~/.ansible.cfg # user's home dir
/etc/ansible/ansible.cfg # system default location
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
ansible.cfg!config!file!(example)
[defaults]
hostfile = hosts
forks = 5
timeout = 60
log_path = /var/log/ansible.log
nocows = 1
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Inventory
• Simple:
• Manage-your-inventory-in-text-files-(INI-group-header-syntax)
• Advanced:
• use-various-datasource,-use/write-a-tool-that-speaks-to-
datasource-and-returns-JSON
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(inventory(file(/(Hosts(file((Example)
# Application servers
[webserver]
web1.pretendco.com
54.93.172.13 ansible_ssh_user=ubuntu
# Database server
[db]
54.93.172.14 ansible_ssh_user=ubuntu
# Group 'multi', contains child servers
[multi:children]
webserver
db
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(CLI
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
CLI$Commands$(overview)
ansible <host-pattern> [options] # run Ad hoc command
ansible-playbook <playbook-name> # run an Ansible playbook
ansible-galaxy <command> # share and download Ansible roles
ansible-pull [options] [playbook.yml] # setup Ansible pull architecture
ansible-doc [options] [module...] # show documentation
debug with -vvvv
dry run mode with --check
check playbooks with --syntax-check
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(AdHoc(commands
ansible <pattern_goes_here> -m <module_name> -a <arguments> # -s <optional sudo>
## single server node
ansible webserver -a reboot -i /path/to/hosts ## path to hosts-file
ansible db -s -m apt -a "pkg=postgresql state=present" ## -i use path to hosts-file
## multiple server nodes
ansible multi -s -m apt -a "pkg=ntp state=installed" ## -i use path to hosts-file
ansible multi -s -m service -a "name=ntpd state=started enabled=yes" ## -i
## module example, git checkout
ansible webserver -s -m git -a "repo=git://github.com/path/to/repo.git 
dest=/opt/myapp update=yes version=1.2.4" ## -i use path to hosts-file
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Playbook((simple(example)
#!/usr/bin/env ansible-playbook
---
- name: Configure webserver with nginx and ssl
hosts: webservers
sudo: True
vars:
key_file: /etc/nginx/ssl/nginx.key
cert_file: /etc/nginx/ssl/nginx.crt
conf_file: /etc/nginx/sites-available/default
server_name: localhost
tasks:
- name: Install nginx
apt: name=nginx update_cache=yes cache_valid_time=3600
...
- name: copy nginx config file
template: src=templates/nginx.conf.j2 dest={{ conf_file }}
notify: restart nginx
handlers:
- name: restart nginx
service: name=nginx state=restarted
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Variables
• Variables*are*used/subs.tute*inside*tasks*or*template*files
apt: pkg={{ item }} state=installed update-cache=yes
with_items: {{ system_packages }}
# apt module will iterate over items in Array (YAML Sequence)
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Example(Vars((could(be(in(external(vars.yml(file)
---
project_name: myproject
project_root: /var/projects/myproject
project_repo: git@bitbucket.org:myuser/myproject.git
system_packages:
- build-essential
- git
- libevent-dev
- nginx
- postgresql
- postgresql-server-dev-all
- python-dev
- python-setuptools
- redis-server
python_packages:
- pip
- virtualenv
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Example(Vars(used(in(tasks
tasks:
- name: Create the project directory.
file: state=directory path={{ project_root }}
- name: Create user.
user: home={{ project_root }}/home/ name={{ project_name }} state=present
- name: Update the project directory.
file: group={{ project_name }} owner={{ project_name }} mode=755 state=directory path={{ project_root }}
- name: Install required system packages.
apt: pkg={{ item }} state=installed update-cache=yes
with_items: {{ system_packages }}
- name: Install required Python packages.
easy_install: name={{ item }}
with_items: {{ python_packages }}
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
templates/nginx.conf.j23
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
listen 443 ssl;
root /usr/share/nginx/html;
index index.html index.htm;
server_name {{ server_name }};
ssl_certificate {{ cert_file }};
ssl_certificate_key {{ key_file }};
location / {
try_files $uri $uri/ =404;
}
}
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Playbooks
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Playbooks
• Playbooks*format*is*YAML*
• Playbooks*express*configura<ons,*deployment*and*orchestra<on
• A*Playbook*maps*a*group*of*hosts*to*a*set*of*roles*or*tasks
• Playbook*reference*included*files*(vars.yml,*lookup*files,*etc.)
• Op<onally*you*can*prompt*for*user*input*during*run
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
---
- hosts: multi
sudo: True
vars:
app_name: my-app
license_file: "{{ lookup('file','license.xml') }}"
# prompt during run
vars_prompt:
- name: "set_password for x"
prompt: "enter password for x"
default: "super_dumb_pw"
private: yes
pre_tasks:
- name: display facts, print name and ip
debug: msg="System {{ inventory_hostname }} has ip {{ ansible_default_ipv4 }}"
# run gerneral tasks
tasks:
- name: Install ntp
apt: name=ntp update_cache=yes cache_valid_time=3600
...
# install roles sequentially
roles:
- { role: database, tags: db }
- { role: nginx, tags: webapp }
- { role: tomcat, tags: webapp }
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Playbook(Anatomy
• name: display name of your playbook (optional)
• hosts: host or host group against run the tasks (mandatory)
• sudo: True/False (optional)
• vars: reference vars inline or /path/to/file (optional)
• tasks: list of actions to perform, call up modules use variables
• handlers: task that runs if it has been notified by another task
• roles: call role to execute bundled tasks
... and some more
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Playbook(convenience(use
• Add$tags$to$your$playbook
• Run$ansible5playbook$but$only$tasks$with$tags:$
--tags templates,apache
• Run$ansible5playbook$but$exclude$--skip-tags templates
tasks:
- name: template apache config
template: src=httpd.conf.j2 dest=/etc/httpd/conf/httpd.conf
tags:
- templates
- apache
notify:
- restart apache
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Roles
• Group'related'tasks,'configura4ons'and'data'into'a'bundle
|-- playbook.yml # playbook file
|-- role
| |-- sys-prep # basic sys prepare file
| |-- database # setup database
| |-- monitoring # configure monitoring
| |-- nginx # install proxy server
| `-- tomcat # install tomcat
• Central)installed)Roles)from)Galaxy:)/etc/ansible/roles
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Galaxy
• community*roles*available*
• reference*to*public*github*repos
• source*to*learn*and*start*from
ansible-galaxy install username.rolename
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Tower
• Web%based)GUI)developed)by)Ansible)Inc.
• Dashboard)to)manage)your)nodes
• Provides)job)scheduling,)inventory)management,)job)status)
updates
• With)built%in)REST)API
h"p://www.ansible.com/tower
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Few$common$use$cases
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Nice%ci&zen%with%Vagrant
Working(Vagrant(provider(available
# Provisioning configuration for Ansible.
config.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook.yml"
# Run commands as root.
ansible.sudo = true
end
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Nice%ci&zen%with%Docker%(really?)
• Have&a&large&overlap,&let's&discuss&a4er&today's&talk&by&
Chris&an)Kniep&8&here's&the&commented&presenta<on:
h>p://qnib.org/2014/12/19/Docker8and8ConfigMgmt/
• You&can&manage&Docker&host&with&docker&modules
- docker-module # launch, provision, and delete Docker containers.
- docker-images module # build docker-files with Ansible.
- docker_facts module
- Docker inventory plugin
Note: Ansible Module has dependency on docker-py Docker client python library
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(docker.module(example
# Start docker container running tomcat in each host of webserver group,
# bind tomcat's listening port to 8080 on the host:
---
- hosts: webserver
sudo: yes
tasks:
- name: run tomcat servers
docker: image=centos command="service tomcat6 start" ports=8080
# Create multiple named containers:
---
- hosts: webserver
sudo: yes
tasks:
- name: run tomcat servers
docker: image=centos name={{item}} command="service tomcat6 start" ports=8080
with_items:
- crookshank
- snowbell
- heathcliff
- felix
- sylvester
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Scale&and&Orchestrate&with&Ansible
use$ansible*pull$mode$!
• Pulls&a&specified&git&repository&into&a&specified&directory
• If&the&repo&has&changed,&it&runs&a&file&called&<hostname>.yml&or&
local.yml&from&repo&root&directory
1. Add ansible-pull to crontab.
2. Add the <hostname>.yml or local.yml file to your repository.
Example:)ansible_pull.yml
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Documenta*on
• Ge$ng'Started
• Advanced'Setups
• Module'Reference
• Examples
• Ressources
• Case'Studies
• etc.
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Up(&(Running
by#Lorin#Hochstein
Free$preview$of$Ansible$Up$&$Running$by$
Lorin$Hochstein.$
h"p://www.ansible.com/ansible2book
Preview Edition includes:
• Chapter 1 Introduction
• Chapter 2 Playbooks, a Beginning
• Chapter 3 Inventory: Describing Your Servers
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Next%Ansible%HH%Meetup,%Feb%2015
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Thank&You!
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014
Ansible(Meetup(Hamburg,(henry(stamerjohann,(12/2014

More Related Content

What's hot

IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with AnsibleRayed Alrashed
 
Ansible tips & tricks
Ansible tips & tricksAnsible tips & tricks
Ansible tips & tricksbcoca
 
More tips n tricks
More tips n tricksMore tips n tricks
More tips n tricksbcoca
 
Using Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud EnvironmentsUsing Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud Environmentsahamilton55
 
Ansible is the simplest way to automate. MoldCamp, 2015
Ansible is the simplest way to automate. MoldCamp, 2015Ansible is the simplest way to automate. MoldCamp, 2015
Ansible is the simplest way to automate. MoldCamp, 2015Alex S
 
Automation and Ansible
Automation and AnsibleAutomation and Ansible
Automation and Ansiblejtyr
 
Ansible - Swiss Army Knife Orchestration
Ansible - Swiss Army Knife OrchestrationAnsible - Swiss Army Knife Orchestration
Ansible - Swiss Army Knife Orchestrationbcoca
 
Using Ansible Dynamic Inventory with Amazon EC2
Using Ansible Dynamic Inventory with Amazon EC2Using Ansible Dynamic Inventory with Amazon EC2
Using Ansible Dynamic Inventory with Amazon EC2Brian Schott
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them AllTim Fairweather
 
A quick intro to Ansible
A quick intro to AnsibleA quick intro to Ansible
A quick intro to AnsibleDan Vaida
 
Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to AnsibleKnoldus Inc.
 
Ansible for beginners
Ansible for beginnersAnsible for beginners
Ansible for beginnersKuo-Le Mei
 
#OktoCampus - Workshop : An introduction to Ansible
#OktoCampus - Workshop : An introduction to Ansible#OktoCampus - Workshop : An introduction to Ansible
#OktoCampus - Workshop : An introduction to AnsibleCédric Delgehier
 
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12Keith Resar
 
Ansible leveraging 2.0
Ansible leveraging 2.0Ansible leveraging 2.0
Ansible leveraging 2.0bcoca
 
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017Jumping Bean
 
DevOps for Humans - Ansible for Drupal Deployment Victory!
DevOps for Humans - Ansible for Drupal Deployment Victory!DevOps for Humans - Ansible for Drupal Deployment Victory!
DevOps for Humans - Ansible for Drupal Deployment Victory!Jeff Geerling
 

What's hot (20)

Configuration Management in Ansible
Configuration Management in Ansible Configuration Management in Ansible
Configuration Management in Ansible
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with Ansible
 
Ansible tips & tricks
Ansible tips & tricksAnsible tips & tricks
Ansible tips & tricks
 
More tips n tricks
More tips n tricksMore tips n tricks
More tips n tricks
 
Using Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud EnvironmentsUsing Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud Environments
 
Ansible is the simplest way to automate. MoldCamp, 2015
Ansible is the simplest way to automate. MoldCamp, 2015Ansible is the simplest way to automate. MoldCamp, 2015
Ansible is the simplest way to automate. MoldCamp, 2015
 
Automation and Ansible
Automation and AnsibleAutomation and Ansible
Automation and Ansible
 
Ansible - Swiss Army Knife Orchestration
Ansible - Swiss Army Knife OrchestrationAnsible - Swiss Army Knife Orchestration
Ansible - Swiss Army Knife Orchestration
 
Using Ansible Dynamic Inventory with Amazon EC2
Using Ansible Dynamic Inventory with Amazon EC2Using Ansible Dynamic Inventory with Amazon EC2
Using Ansible Dynamic Inventory with Amazon EC2
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them All
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
A quick intro to Ansible
A quick intro to AnsibleA quick intro to Ansible
A quick intro to Ansible
 
Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to Ansible
 
Ansible for beginners
Ansible for beginnersAnsible for beginners
Ansible for beginners
 
#OktoCampus - Workshop : An introduction to Ansible
#OktoCampus - Workshop : An introduction to Ansible#OktoCampus - Workshop : An introduction to Ansible
#OktoCampus - Workshop : An introduction to Ansible
 
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12
Ansible Automation Best Practices From Startups to Enterprises - Minnebar 12
 
Ansible - Introduction
Ansible - IntroductionAnsible - Introduction
Ansible - Introduction
 
Ansible leveraging 2.0
Ansible leveraging 2.0Ansible leveraging 2.0
Ansible leveraging 2.0
 
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
 
DevOps for Humans - Ansible for Drupal Deployment Victory!
DevOps for Humans - Ansible for Drupal Deployment Victory!DevOps for Humans - Ansible for Drupal Deployment Victory!
DevOps for Humans - Ansible for Drupal Deployment Victory!
 

Viewers also liked

IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...
IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...
IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...Knud Lasse Lueth
 
Zentral combine power of osquery_santa
Zentral combine power of osquery_santaZentral combine power of osquery_santa
Zentral combine power of osquery_santaHenry Stamerjohann
 
Zentral presentation MacAdmins meetup Univ. Utah
Zentral presentation MacAdmins meetup Univ. Utah Zentral presentation MacAdmins meetup Univ. Utah
Zentral presentation MacAdmins meetup Univ. Utah Henry Stamerjohann
 
MT84 IoT and Smart Manufacturing Innovations
MT84 IoT and Smart Manufacturing InnovationsMT84 IoT and Smart Manufacturing Innovations
MT84 IoT and Smart Manufacturing InnovationsDell EMC World
 
Presentation Hamburg
Presentation HamburgPresentation Hamburg
Presentation Hamburgsnowborn
 
Top 6 IoT Use Cases in Manufacturing
Top 6 IoT Use Cases in ManufacturingTop 6 IoT Use Cases in Manufacturing
Top 6 IoT Use Cases in ManufacturingALTEN Calsoft Labs
 
IoT and Smart Manufacturing
IoT and Smart ManufacturingIoT and Smart Manufacturing
IoT and Smart ManufacturingHarrison Fortier
 
Milk run distribution
Milk run distributionMilk run distribution
Milk run distributionHammaduddin
 
Presentation on burger king
Presentation on burger kingPresentation on burger king
Presentation on burger kingmominul_Islam
 

Viewers also liked (11)

IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...
IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...
IoT Meetup Hamburg 3 February 2015 - Getting Hamburg set-up for the Internet ...
 
Zentral combine power of osquery_santa
Zentral combine power of osquery_santaZentral combine power of osquery_santa
Zentral combine power of osquery_santa
 
Zentral london mac_ad_uk_2017
Zentral london mac_ad_uk_2017Zentral london mac_ad_uk_2017
Zentral london mac_ad_uk_2017
 
Zentral macaduk conf 2016
Zentral macaduk conf 2016Zentral macaduk conf 2016
Zentral macaduk conf 2016
 
Zentral presentation MacAdmins meetup Univ. Utah
Zentral presentation MacAdmins meetup Univ. Utah Zentral presentation MacAdmins meetup Univ. Utah
Zentral presentation MacAdmins meetup Univ. Utah
 
MT84 IoT and Smart Manufacturing Innovations
MT84 IoT and Smart Manufacturing InnovationsMT84 IoT and Smart Manufacturing Innovations
MT84 IoT and Smart Manufacturing Innovations
 
Presentation Hamburg
Presentation HamburgPresentation Hamburg
Presentation Hamburg
 
Top 6 IoT Use Cases in Manufacturing
Top 6 IoT Use Cases in ManufacturingTop 6 IoT Use Cases in Manufacturing
Top 6 IoT Use Cases in Manufacturing
 
IoT and Smart Manufacturing
IoT and Smart ManufacturingIoT and Smart Manufacturing
IoT and Smart Manufacturing
 
Milk run distribution
Milk run distributionMilk run distribution
Milk run distribution
 
Presentation on burger king
Presentation on burger kingPresentation on burger king
Presentation on burger king
 

Similar to Ansible Meetup Hamburg / Quickstart

Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014
Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014
Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014gethue
 
From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011Carlos Sanchez
 
Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Adam Tomat
 
Interceptors: Into the Core of Pedestal
Interceptors: Into the Core of PedestalInterceptors: Into the Core of Pedestal
Interceptors: Into the Core of PedestalKent Ohashi
 
Drupal Camp Brighton 2015: Ansible Drupal Medicine show
Drupal Camp Brighton 2015: Ansible Drupal Medicine showDrupal Camp Brighton 2015: Ansible Drupal Medicine show
Drupal Camp Brighton 2015: Ansible Drupal Medicine showGeorge Boobyer
 
Programming language for the cloud infrastructure
Programming language for the cloud infrastructureProgramming language for the cloud infrastructure
Programming language for the cloud infrastructureYaroslav Muravskyi
 
What we can learn from Rebol?
What we can learn from Rebol?What we can learn from Rebol?
What we can learn from Rebol?lichtkind
 
Putting Phing to Work for You
Putting Phing to Work for YouPutting Phing to Work for You
Putting Phing to Work for Youhozn
 
Ansible new paradigms for orchestration
Ansible new paradigms for orchestrationAnsible new paradigms for orchestration
Ansible new paradigms for orchestrationPaolo Tonin
 
HackU PHP and Node.js
HackU PHP and Node.jsHackU PHP and Node.js
HackU PHP and Node.jssouridatta
 
Streamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache AmbariStreamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache AmbariJayush Luniya
 
Apache spark session
Apache spark sessionApache spark session
Apache spark sessionknowbigdata
 

Similar to Ansible Meetup Hamburg / Quickstart (20)

Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014
Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014
Hue: Big Data Web applications for Interactive Hadoop at Big Data Spain 2014
 
From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011
 
Modern php
Modern phpModern php
Modern php
 
Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018
 
extending-php
extending-phpextending-php
extending-php
 
extending-php
extending-phpextending-php
extending-php
 
extending-php
extending-phpextending-php
extending-php
 
extending-php
extending-phpextending-php
extending-php
 
extending-php
extending-phpextending-php
extending-php
 
extending-php
extending-phpextending-php
extending-php
 
Interceptors: Into the Core of Pedestal
Interceptors: Into the Core of PedestalInterceptors: Into the Core of Pedestal
Interceptors: Into the Core of Pedestal
 
Drupal Camp Brighton 2015: Ansible Drupal Medicine show
Drupal Camp Brighton 2015: Ansible Drupal Medicine showDrupal Camp Brighton 2015: Ansible Drupal Medicine show
Drupal Camp Brighton 2015: Ansible Drupal Medicine show
 
Programming language for the cloud infrastructure
Programming language for the cloud infrastructureProgramming language for the cloud infrastructure
Programming language for the cloud infrastructure
 
What we can learn from Rebol?
What we can learn from Rebol?What we can learn from Rebol?
What we can learn from Rebol?
 
Putting Phing to Work for You
Putting Phing to Work for YouPutting Phing to Work for You
Putting Phing to Work for You
 
Ansible new paradigms for orchestration
Ansible new paradigms for orchestrationAnsible new paradigms for orchestration
Ansible new paradigms for orchestration
 
HackU PHP and Node.js
HackU PHP and Node.jsHackU PHP and Node.js
HackU PHP and Node.js
 
Streamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache AmbariStreamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache Ambari
 
Streamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache AmbariStreamline Hadoop DevOps with Apache Ambari
Streamline Hadoop DevOps with Apache Ambari
 
Apache spark session
Apache spark sessionApache spark session
Apache spark session
 

More from Henry Stamerjohann

MacSysAdmin Conference 2019 - Logging
MacSysAdmin Conference 2019 - Logging MacSysAdmin Conference 2019 - Logging
MacSysAdmin Conference 2019 - Logging Henry Stamerjohann
 
JamfNation Roadshow Frankfurt-2019 - Security & Business Intelligence
JamfNation Roadshow Frankfurt-2019 - Security & Business IntelligenceJamfNation Roadshow Frankfurt-2019 - Security & Business Intelligence
JamfNation Roadshow Frankfurt-2019 - Security & Business IntelligenceHenry Stamerjohann
 
Google Santa In-Depth - a macOS security & logging tool
Google Santa In-Depth - a macOS security & logging toolGoogle Santa In-Depth - a macOS security & logging tool
Google Santa In-Depth - a macOS security & logging toolHenry Stamerjohann
 
Building your macOS Baseline Requirements MacadUK 2018
Building your macOS Baseline Requirements MacadUK 2018Building your macOS Baseline Requirements MacadUK 2018
Building your macOS Baseline Requirements MacadUK 2018Henry Stamerjohann
 
Zentral - what's new? - MacDevOps:YVR 2017
Zentral - what's new? - MacDevOps:YVR 2017Zentral - what's new? - MacDevOps:YVR 2017
Zentral - what's new? - MacDevOps:YVR 2017Henry Stamerjohann
 

More from Henry Stamerjohann (6)

MacSysAdmin Conference 2019 - Logging
MacSysAdmin Conference 2019 - Logging MacSysAdmin Conference 2019 - Logging
MacSysAdmin Conference 2019 - Logging
 
JamfNation Roadshow Frankfurt-2019 - Security & Business Intelligence
JamfNation Roadshow Frankfurt-2019 - Security & Business IntelligenceJamfNation Roadshow Frankfurt-2019 - Security & Business Intelligence
JamfNation Roadshow Frankfurt-2019 - Security & Business Intelligence
 
Google Santa In-Depth - a macOS security & logging tool
Google Santa In-Depth - a macOS security & logging toolGoogle Santa In-Depth - a macOS security & logging tool
Google Santa In-Depth - a macOS security & logging tool
 
Zentral QueryCon 2018
Zentral QueryCon 2018Zentral QueryCon 2018
Zentral QueryCon 2018
 
Building your macOS Baseline Requirements MacadUK 2018
Building your macOS Baseline Requirements MacadUK 2018Building your macOS Baseline Requirements MacadUK 2018
Building your macOS Baseline Requirements MacadUK 2018
 
Zentral - what's new? - MacDevOps:YVR 2017
Zentral - what's new? - MacDevOps:YVR 2017Zentral - what's new? - MacDevOps:YVR 2017
Zentral - what's new? - MacDevOps:YVR 2017
 

Recently uploaded

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Recently uploaded (20)

Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Ansible Meetup Hamburg / Quickstart