Unter gewissen Umständen ignoriert ansible Zeilenumbrüche in jina2 (.j2) templates.
Das Problem lässt sich jedoch einfach beheben.
Continue reading Ansible: Zeilenumbrüche werden ignoriert
Schlagwort: ansible
Ansible: mysql Abfrage
Möchte man mittels Ansible z.B. in eine Datenbank einen Wert hinzufügen, jedoch nur, wenn dieser noch nicht besteht, kann man das mittels einer Vorherigen SQL-Abfrage machen:
- name: "Get setting: myName" command: mysql --defaults-file=/root/.my.cnf myDatabase -Ns -e "select value from settings where name='myName';" register: setting_myName changed_when: setting_myName.stdout != "12345" - debug: msg="{{ setting_myName.stdout }}" - name: "Insert setting into database" mysql_db: login_host: "myDBhost" login_user: "myDBuser" login_password: "myDBPass" name: "myDatabase" state: "import" target: "/tmp/set_setting_myName.sql" when: setting_myName.stdout != "12345" |
Zuerst holt man sich den Wert aus der Datenbanktabelle und ändert diesen nur, wenn er noch nicht da steht (when: setting_myName.stdout != „12345“).
Quellen
Ansible: Nützliche playbooks für den linux admin
Einige mützliche Ansible playbooks vorgestellt.
Continue reading Ansible: Nützliche playbooks für den linux admin
redhat/CentOS: vmware-tools mit yum installieren
Das installieren der vmware-tools auf Linux Rechnern, kann manchmal lästig sein. Was viele nicht wissen:
Anstelle der manuellen Installation kann man das Packet: open-vm-tools
installieren (via: yum install open-vm-tools).
Das wird von vmware fully supported.
Bei CentOS6 ist es im EPEL repository drin, ab CentOS7 sogar im core repository.
Ein ansible-playbook dafür könnte so aussheen:
--- - hosts: vmware-servers tasks: # PREREQUISITES: For RHEL < 7 we need the EPEL repository - name: install the EPEL repo yum: pkg=epel-release state=latest when: (ansible_os_family == "RedHat" and ansible_distribution_major_version == "6") name: install the EPEL repo yum: name=https://dl.fedoraproject.org/pub/epel/epel-release-latest-5.noarch.rpm when: (ansible_os_family == "RedHat" and ansible_distribution_major_version == "5") # install open-vm-tools - name: install open-vm-tools yum: pkg=open-vm-tools state=latest when: ansible_os_family == "RedHat" - name: install open-vm-tools apt: pkg=open-vm-tools state=latest when: ansible_os_family == "Debian" # startup - name: ensure vmware-tools are running and started automatically service: name=vmtoolsd state=started enabled=yes when: ansible_os_family == "RedHat" - name: ensure vmware-tools are running and started automatically service: name=open-vm-tools state=started enabled=yes when: ansible_os_family == "Debian" |