Created
November 3, 2016 20:06
-
-
Save praseodym/50bb9b6ac2b5e771c35f554671de759a to your computer and use it in GitHub Desktop.
Ansible examples
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
- name: ensure wheezy-backports is present | |
apt_repository: repo="deb http://ftp.nl.debian.org/debian/ wheezy-backports main contrib non-free" state=present update_cache=yes | |
when: ansible_distribution_release == 'wheezy' | |
- name: ensure jessie-backports is present | |
apt_repository: repo="deb http://ftp.nl.debian.org/debian/ jessie-backports main contrib non-free" state=present update_cache=yes | |
when: ansible_distribution_release == 'jessie' | |
- name: ensure apt cache is up-to-date | |
apt: update_cache=yes cache_valid_time=86400 | |
- name: install default list of packages without configuration | |
apt: pkg={{ item }} | |
with_items: | |
- ack-grep | |
- apt-listchanges | |
- apt-show-versions | |
- apt-transport-https | |
- aptitude | |
- atop | |
- autojump | |
- ca-certificates | |
- curl | |
- dnsutils | |
- git | |
- htop | |
- iftop | |
- iotop | |
- less | |
- lsb-release | |
- lsof | |
- man | |
- mc | |
- psmisc | |
- python | |
- rsync | |
- screen | |
- sudo | |
- sysstat | |
- tig | |
- vim | |
- zsh | |
- name: install packages on jessie and later | |
apt: pkg={{ item }} | |
when: ansible_lsb.codename == "jessie" or ansible_lsb.codename == "stretch" | |
with_items: | |
- glances | |
- libpam-systemd | |
- silversearcher-ag |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
- name: reload systemd | |
command: systemctl daemon-reload | |
- name: restart docker-engine | |
service: name=docker state=restarted enabled=yes | |
# systemd module is available in Ansible 2.2 | |
# systemd: name=docker state=restarted enabled=yes daemon_reload=yes | |
- name: restart newrelic-sysmond | |
service: name=newrelic-sysmond state=restarted | |
- name: update grub | |
command: update-grub |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
# 'shrink' option is available in Ansible ≥2.2 | |
- name: create docker metadata lv | |
lvol: vg=vg0 lv=docker-metadata size=1g # shrink=no | |
- name: create docker data lv | |
lvol: vg=vg0 lv=docker-data size=10g # shrink=no | |
- name: ensure docker.service.d directory exists | |
file: path=/etc/systemd/system/docker.service.d state=directory mode=0755 owner=root group=root | |
- name: configure docker storage backend | |
template: src=docker.j2 dest=/etc/systemd/system/docker.service.d/override.conf mode=0544 owner=root group=root | |
notify: | |
- reload systemd | |
- restart docker-engine | |
- name: add docker repository key | |
apt_key: id=58118E89F3A912897C070ADBF76221572C52609D keyserver=hkp://p80.pool.sks-keyservers.net:80 state=present | |
- name: ensure docker repo is present | |
apt_repository: repo="deb https://apt.dockerproject.org/repo debian-stretch main" state=present update_cache=yes | |
when: ansible_lsb.codename == 'stretch' | |
# Docker package got removed from stretch, so we cannot uninstall it | |
# - name: ensure distro docker packages are not installed | |
# action: apt pkg={{ item }} state=absent purge=yes | |
# with_items: | |
# - "docker.io*" | |
- name: ensure xfsprogs is installed | |
apt: pkg=xfsprogs state=latest | |
- name: ensure docker-engine is installed | |
apt: pkg=docker-engine state=latest | |
- name: fetch and install docker-compose | |
get_url: | |
dest: /usr/local/bin/docker-compose | |
url: "https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-{{ ansible_system }}-{{ ansible_architecture }}" | |
mode: 0755 | |
- name: update kernel config to enable swap accounting | |
lineinfile: dest=/etc/default/grub state=present regexp="^GRUB_CMDLINE_LINUX_DEFAULT=.*$" line="GRUB_CMDLINE_LINUX_DEFAULT=\"swapaccount=1 consoleblank=0\"" | |
notify: | |
- update grub | |
# https://github.com/elastic/elasticsearch-docker/blob/7c1dc434d32b88b414180cbddc9412acb41cb14c/README.md | |
- name: set vm.max_map_count to 262144 in sysctl | |
sysctl: name={{ item.key }} value={{ item.value }} | |
with_items: | |
- { key: "vm.max_map_count", value: "262144" } | |
- name: add new relic user to group docker | |
user: name=newrelic groups=docker append=yes | |
notify: | |
- restart newrelic-sysmond |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# {{ ansible_managed }} | |
[Service] | |
ExecStart= | |
ExecStart=/usr/bin/dockerd -H fd:// -s devicemapper --storage-opt dm.datadev=/dev/vg0/docker-data --storage-opt dm.metadatadev=/dev/vg0/docker-metadata |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment