• ú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
    Diskuse o vsem, co se tyka nastroju ulehcujicich praci nejen administratorum ...

    Sirsi zaber vitan (resp. co se neveslo do nazvu) :
    Inventarizace * IT Asset Management * Centralizovana sprava instalaci / aktualizaci * Zalohovani stanic * Sprava licenci

    Par tipu :
    Saltstack * Ansible * OCS Inventory NG * Fusion Inventory * GLPI * Mandriva Pulse2 * IBM Tivoli * Microsoft SCCM * BackupPC * Bacula * Puppet * Chef * RackTables * Zabbix * Foreman * Cfengine * Wix Toolset * WKPG * Symantec Client Management Suite
    chybi tu neco ? sem s tim ;)
    rozbalit záhlaví
    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
    RUDOLF
    RUDOLF --- ---
    Zdar,

    potřeboval bych pip modulu říci aby zkonstruoval environemt pomocí source /opt/scl/něco/enable..

    používám python 3.5 ze SCL repozitáře a nejsem schopen pořádně připravit environment, aby ansible správně použil pip, vyhnívá mi to na nepřítomnost knihovny např:

    "/opt/rh/rh-python35/root/bin/python3.5: error while loading shared libraries: libpython3.5m.so.rh-python35-1.0: cannot open shared object file: No such file or directory\r\n""

    Viz.

    - name: requirements.txt satisfied in virtualenv {{ seeder_virtualenv }}
    pip:
    requirements: "{{ seeder_home }}/{{ item }}"
    virtualenv: "{{ seeder_virtualenv }}"
    state: "latest"
    virtualenv_python: "python3.5"
    with_items:
    - "requirements.txt"
    # - "requirements_dev.txt"
    tags: packages
    environment:
    PATH: /opt/rh/rh-python35/root/usr/bin:{{ ansible_env.PATH }}
    vars:
    ansible_python_interpreter: /opt/rh/rh-python35/root/bin/python3.5
    RUDOLF
    RUDOLF --- ---
    SAMGARR: právě že celej ten list je z vaultu, proto mi to nedává smysl..

    ale ten log zkusím
    SAMGARR
    SAMGARR --- ---
    RUDOLF:
    no_log: True
    Nebo muzes vystup kompletne presmerovat do logfile, je na to prepinac. Hesla pripadne ukladat do Vaultu, potom myslim nebudou videt ve vystupu.
    RUDOLF
    RUDOLF --- ---
    Announcing: Habitat - a new open source project
    http://www.youtube.com/watch?v=oxtRP1eYCns


    Habitat - Automation That Travels with the App
    https://www.habitat.sh
    RUDOLF
    RUDOLF --- ---
    SAMGARR: link na dropbox asi zemřel, tak zmizel docela kontext:-)

    potřeboval bych aby ansible výstup vypadal spíš jako ten spodní task a né jako ten horní.. tj. jestli jde nějak upravit čitelnost výstupu z jednotlivých tasků

    horní je z modulu yum, dolní z modulu pip.. a ten z pip je čitelnější.. tak jestli neexistuje nějaké jednoduchá a hezká cesta, jak upravit výstup z modulu..



    třeba tady to vypadá úplně šíleně a navíc se ukazuje hash z passwd - což no big deal, když to vidím jen já..

    SAMGARR
    SAMGARR --- ---
    RUDOLF: nerozumim otazce :)
    RUDOLF
    RUDOLF --- ---
    hele, ten způsob výpisu je asi dle modulu? Občas bych pro přehlednost, měl kontrolou co mi task vyflusne na obrazovku..

    první je yum, druhý pip.



    vtipný třeba u modulu user je, že mi při plnění úkolu vyflusne heslo ze zaheslovanýho vaultu na obrazovku. Naštění je enkryptovaný, tak no big deal.

    - name: Create users
    user:
    name="{{ item.name }}"
    groups="{{ item.groups}}"
    createhome="yes"
    comment="{{ item.comment }}"
    password="{{ item.password }}"
    append="yes"
    with_items: "{{admins}}"
    RUDOLF
    RUDOLF --- ---
    RUDOLF: dočasně jsem to vyřešil tak, že jsem každému hostu v inventory přiřadil proměnou - ale moc se mi takové řešení nezdá:-)
    RUDOLF
    RUDOLF --- ---
    Zdar, mám dotaz na ansible/jinja/spring framework..

    Mám template se springframework konfigurací pro 10 strojů.. v každým konfiguráku musím mít: localname=0, na dalším stroji zase localname=1 atd..

    posloupnoust inkrementovaných čísel bohužel neodvodím z hostname, páč stroj00, stroj03, stroj07 atd..

    tj. potřeboval bych využít jinja, aby mi pro každý konfigurák dala unikátní číslo od 0 do 9 -- nějak to nejsem schopen s googlem ani dokumentací dát dohromady..

    viz. ono: localname=0, localname=1, localname=2 ..
    HALELUJA
    HALELUJA --- ---
    AQUARIUS: díky, to vypadá zajímavě, ale ideální stav by byl to pořešit čistě softwarově než dokupovat další krabičku (Raspberry) - poboček je hodně. Zkusím hodit dotaz ještě do toho klubu co jsi odkazoval.
    AQUARIUS
    AQUARIUS --- ---
    HALELUJA: shodou okolnosti si ted hraju s kombinaci Raspberry Pi + OpenELEC a to by asi tvoje pozadavky mohlo splnit. Spravnej klub pro tohle bude asi tento: [ MEDIA CENTER - vse okolo techto domacich mazliku (HTPC), ktere se brzo stanou soucasti vsech domacnosti ]
    HALELUJA
    HALELUJA --- ---
    Ahoj, nejsem v úplně správném klubu, ale zatím jiný nemůžu najít :-/ Nemáte zkušenost s ovládáním obsahu TV na dálku? Myslím na dálku přes internet.. :-) Jde mi defacto jen o videoobsah co TV bude zobrazovat.
    IGRACEK
    IGRACEK --- ---
    opensource alternativa k Ansible Tower = Ansible Semaphore. imho jen na lokalni testy, ale funguje krasne :]

    ansible-semaphore/semaphore: Open Source Alternative to Ansible Tower
    https://github.com/ansible-semaphore/semaphore

    DevOps Automation – Ansible+Semaphore is Indispensable! |
    http://code-complete.com/code/?p=40
    INDIAN
    INDIAN --- ---
    IGRACEK: resp. jestli de si hodit tu promennou "listen_interface" do nakyho slovniku a pak do ni pristupovat pres vlozenej klic:

    my_dict["listen_interface"]=enp0s8

    AGENT_HostAddress={{ ansible_my_dict["listen_interface"].ipv4.address }}
    INDIAN
    INDIAN --- ---
    IGRACEK: za me zadna zkusenost s ansible... nicmene z pythonniho hlediska bych pristupoval k ty promenny pres nakej dict kterej umoznuje pristup k namespace "ansible_" ... (pokud je to teda mozny)
    IGRACEK
    IGRACEK --- ---
    tak tu resim zapeklitost.. pisu playbook pro Ansible a pouzivam [python] jinja2 templaty..

    napr tohle mi funguje:
    AGENT_HostName={{ inventory_hostname }}

    .. coz na remote hostu vymeni tuhle variable za hostname [ansible variable z gather_facts]

    .. ale problem mam, kdyz chci pouzit variable uvnitr variable, tzn hardcoded to funguje:
    AGENT_HostAddress={{ ansible_enp0s8.ipv4.address }}

    ..ale ja v ramci survey v Ansible Tower nactu [default nebo user input] promenou, ktera mi rika, na kterym interface hledat IP.

    Tzn:
    # user [/default input] mam
    listen_interface=enp0s8

    a potrebuju dat do playbooku neco jako [tohle mi nefunguje]

    AGENT_HostAddress={{ ansible_[listen_interface].ipv4.address }}

    ..jak na to? :]
    SNIPERCZE
    SNIPERCZE --- ---
    Existuje nejakej lepsi zpusob, jak pomoci CFEngine editovat YAML configy, nez pomoci set_config_values() a pole foo[bar:] string => "baz"; ?
    Kliknutím sem můžete změnit nastavení reklam