• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    INDIANCentralizovaná správa stanic a ostatních prvků v síti - automation/monitoring/alerting a dalsi devops nastroje
    RUDOLF
    RUDOLF --- ---
    hele, jedna čudnost.. Ansible 2.4

    první task je správně ignorován, druhý projde a skončí chybou.. přičemž by měl být taky imho ignorován, páč právě podmínka ansible_bios_version != "VirtualBox" není splněna..

    - name: 'Deprecated: Test nginx before handlers are flushed - remove this task after new configuration is deployed in all environments'
    command: nginx -t
    when: ansible_bios_version != "VirtualBox"

    - name: 'Deprecated: restart nginx before running certbot - remove this task after new configuration is deployed in all environments'
    meta: flush_handlers
    when:
    - deprecated_conf.exists == true
    - ansible_bios_version != "VirtualBox"
    INDIAN
    INDIAN --- ---
    RUDOLF
    RUDOLF --- ---
    RUDOLF:
    RUDOLF:

    ok, prostě báze jako dependency není rozumné připojovat.
    RUDOLF
    RUDOLF --- ---
    RUDOLF: ale to je blbost: requirements.yml nebudu mít v playbooku, z kterýho pouštím roli.. navíc při parsování playbooku, ansible zjistí role postgresql není nainstalovaná..

    tj. jak bych měl nainstalovat depedency databázi s tím, že ji šoupnu na jiný server než je aplikace.
    RUDOLF
    RUDOLF --- ---
    ale mám jedno téma na ansible: Když si dám dependencies do role sentry, tak při ansible-galaxy install sentry, se mi role nainstalují.. Ale ansible mi pustí roli postgresql jak na hostech v databases, tak na hostech v app..

    tj. měl bych postgresql z depedencies vyjmout a dát je do requirements.yml, pak bych je růčo nebo taskem v playbooku doinstaloval přes ansible-galaxy install -r sentry

    nebo je ještě nějaký better practice?

    sentry/meta/main.yml
    dependencies:
    postgresql
    supervisor

    sentry.yml (zjednodušeně)
    name: Sentry database
    hosts: database
    roles:
    { role: postgresql, postgresql: [{ user: vagrant, pass: sentry, db: sentry }] }

    name: Sentry app
    hosts: app
    roles:
    sentry
    supervisor
    RUDOLF
    RUDOLF --- ---
    AQUARIUS: no, ty komentáře právě předznamenávají balíky, kterých se to týká..

    co se týče univerzálnosti, zatím si píšu yml pro centos či suse odděleně a vkládám je právě přes {{ ansible_distribution }}. Ale vložit packages přes proměnou není vlastně špatnej nápad.
    AQUARIUS
    AQUARIUS --- ---
    RUDOLF: a je problem ty komentare napsat az nekam na konec? Mimochodem, pokud ten playbook chces delat univerzalni, pouzil bych misto modulu yum modul package a pak pouzil with_items: "{{ packages }}" s tim, ze seznam baliku si nahrajes jako promennou - treba pomoci include_vars: "{{ ansible_distribution }}{{ ansible_distribution_major_version }}.yml"
    RUDOLF
    RUDOLF --- ---
    zdar, není to vůbec zásadní, ale zajímá mě..

    mám něco takového v ansible..
    - name: yum provision
    yum:
    name: '{{ item }}'
    with_items:
    # Requirements from https://docs.getsentry.com/on-premise/server/installation/
    - python-setuptools
    - python-pip
    - python-devel
    # libxslt1-devel was not necessary on CentOS 7
    - gcc
    ...

    ale rád bych to zapsal bez with_items, ale logicky tohle vychcípne, páč v tom dělají bordel ty komentáře, které bych právě chtěl zachovat, ale jelikož YAML nepodporuje block comments, tak tohle cesta asi není.. netušíte jak na to jinak?

    - name: yum provision
    yum:
    name: >
    # Requirements from https://docs.getsentry.com/on-premise/server/installation/
    python-setuptools,
    python-pip,
    python-devel,
    # libxslt1-devel was not necessary on CentOS 7
    gcc,
    ...
    RUDOLF
    RUDOLF --- ---
    Vtipný je, že jsem po roce používání Ansible nahodil Ansible Tower a vlastně netušil, co od něj chci.. asi klikátko pro chlapíka od Service Desku..

    Jinak mám jedinou obavu, že i když Ansible Tower bude otevřenej, placená bude nějaká lepší integrace s AD.
    DRON
    DRON --- ---
    TRUHLIK: jak psal uz drive RUDOLF, Red Hat ma vcelku prijemnou tendenci po akvizici otevirat i drive uzavrene projekty a nechat na nich pracovat komunitu (byt casto dotovanou zamestnanci Red Hatu). Tyto komunitni verze jsou free. Na zaklade nich pak stavi svoje komercni reseni. Napr. RHEV vs oVirt, openshift vs origin, satelitte vs spacewalk,... tez cekam a doufam na komunitni verzi Ansible Tower...
    TRUHLIK
    TRUHLIK --- ---
    MUXX: tak vyložene zákulisní informace nemám. Počítám, že to přejde do RedHat modelu a tam máš možnost pro nekomerční užití testovat.
    MUXX
    MUXX --- ---
    TRUHLIK: no ale opensource jeste nutne neznamena, ze to bude zadarmo ne? nebo mas nejake insider info?
    TRUHLIK
    TRUHLIK --- ---
    MUXX: Je to tak. Je tam free trial, jinak se platí podle počtu serverů. Aktuálně to koupil RedHat a předpokládá se, že tohle dozná změn, ačkoliv není jasný kterých. Tuším, že RedHat dělá na tom, aby to celé byl opensource, následně to převezmou i obchodně.
    MUXX
    MUXX --- ---
    TRUHLIK: Tower je placeny ne? Nebo je tam nejaka community edice?
    TRUHLIK
    TRUHLIK --- ---
    CISTICZ: Hlasuju za Tower, mám to vyzkoušený a funguje skvěle.
    RUDOLF
    RUDOLF --- ---
    RUDOLF: teda to repo není to správný.

    ale ten reddit:

    Ansible and Foreman.. Anyone using? : ansible
    https://www.reddit.com/r/ansible/comments/574pn9/ansible_and_foreman_anyone_using/
    RUDOLF
    RUDOLF --- ---
    CISTICZ: na redditu jsem četl o tomhle, ale má to své masařky nějaké..

    GitHub - theforeman/foreman_ansible: Ansible integration in Foreman
    https://github.com/theforeman/foreman_ansible
    RUDOLF
    RUDOLF --- ---
    CISTICZ: to mě samotného taky zajímá...

    ale ansible tower will go opensource.. na což zatím čekám..

    Open Sourcing Ansible Tower
    https://www.ansible.com/open-tower
    CISTICZ
    CISTICZ --- ---
    pouziva nekdo ansible+semaphore nebo doporucite lepsi ui k ansible, dik
    RUDOLF
    RUDOLF --- ---
    RUDOLF: Nakonec jsem to pořešil takhle, ale ještě mám nějaký trable s uwsgi, ale ty jsou tady asi OT

    environment:
    PATH: /opt/rh/rh-python35/root/usr/bin:{{ ansible_env.PATH }}
    LD_LIBRARY_PATH: /opt/rh/rh-python35/root/usr/lib64
    XDG_DATA_DIRS: /opt/rh/rh-python35/root/usr/share:/usr/local/share:/usr/share
    PKG_CONFIG_PATH: /opt/rh/rh-python35/root/usr/lib64/pkgconfig
    Kliknutím sem můžete změnit nastavení reklam