• ú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
    MUXX
    MUXX --- ---
    DEFILA: To neznam. Prozkoumam, diky za tip.
    DEFILA
    DEFILA --- ---
    MUXX: tak však se localhost explicitně nevyhodnocuje, ne? Tedy poslat vše na tvé hosty a pokud to je OK, tak v posledním kroku localhost... Nebo jsem něco minul?
    MUXX
    MUXX --- ---
    Udelal jsem si v ansible task na update OS i s rebootem. Ted jsem ale narazil na to, ze bych chtel updatovat i OS linuxu na kterym ten playbook poustim. Tim si ale zabiju ten prave bezici playbook. Task poustim pres Jenkins. Neresil nekdo podobnou vec? Napada me leda udelat to tak, ze pouziju dve VM. Nejdriv updatnu jednu a dozvim se vysledek a z te updatnute pak updatnu druhou a mam vysledek. Prehlizim nejaky jednodussi reseni?
    DRON
    DRON --- ---
    INDIAN: jj, neprijemne je, ze takto lze elegantne klice pridavat, ale pokud nejakeho uzivatele degradujes, klice se neodeberou. V tomto pripade by centralni autentizace mohla byt resenim.
    INDIAN
    INDIAN --- ---
    MUXX:
    si je v inventory zarad do skupin a pro kazdej prislusnej host... neco ve stylu:
    - name: Set authorized key for DEV
      authorized_key:
        state: present
        key: "{{ lookup('file', 'keys/dev_id_rsa.pub') }}"
      when: inventory_hostname in groups['dev']
    
    - name: Set authorized key for QA
      authorized_key:
        state: present
        key: "{{ lookup('file', 'keys/qa_id_rsa.pub') }}"
      when: inventory_hostname in groups['qa']
    


    Anebo si treba v group_vars/all.yml nadefinuj slovnik klicu:
    ssh_keys:
      dev: 'keys/dev_id_rsa.pub'
      qa: 'keys/qa_id_rsa.pub'
    

    a ten play zavolas jen jednou a vytahnes si prislusnej klic dle skupiny:
    
    - name: Get path for key
      set_fact:
        key_path: "{{ ssh_keys[group_names[0]] }}"
    - name: Set authorized key
      authorized_key:
        state: present
        key: "{{ lookup('file', keys_path) }}"
    

    (tohle bude ale fungovat v pripade pouze jedny skupiny)
    MUXX
    MUXX --- ---
    Potreboval bych popostrcit spravnym ansible smerem. Mam cca 25 VM a k tomu cca 6 uzivatelu. Kazdy z techto uzivatelu ma SSH pristup do nekolika VM. Typicky admin vsude, senior dev na polovinu VM, junior dev na tri VM, tester na jine tri VM.
    Jak to poskladat do ansible tak, abych pushnul klice na odpovidajici VM? Nebo se na to mam vykaslat a zkusit to pres AD/LDAP?
    FRANCIMOUR
    FRANCIMOUR --- ---
    RUDOLF: Ansible mám u sebe lokálně, a instalace běží na vzdáleném stroji přes SSH.
    RUDOLF
    RUDOLF --- ---
    FRANCIMOUR: jen drobnost, chápu správně, že to instaluješ přes ansible na stroji, kde ten ansible běží? pak to musí být lokální akce..
    FRANCIMOUR
    FRANCIMOUR --- ---
    DRON: Jsem v tomto smeru amater... pro me je zaklad ze to dela to co chci, ale kouknu na to diky moc :)
    DRON
    DRON --- ---
    FRANCIMOUR: fakt je, ze sem tohle jeste nepotreboval resit, ale mozna nez editovat bashrc uzivatele, zkus modifikovat path primo pro playbook viz prvni FAQ - https://docs.ansible.com/ansible/latest/reference_appendices/faq.html

    ale samozrejme zalezi, mozna je zmena bashrc to, co presne chces
    FRANCIMOUR
    FRANCIMOUR --- ---
    FRANCIMOUR: ještě dodám co je v tom templatu
    export PATH="/usr/local/bin:$PATH"
    FRANCIMOUR
    FRANCIMOUR --- ---
    DRON: opraveno

    tasks:
    - name: edit bashrc
    become: yes
    template:
    src: templates/bashrc.j2
    dest: /Users/karel/.bashrc
    mode: 0555
    DRON
    DRON --- ---
    FRANCIMOUR: prd vim o mackovi a brew, ale zameril bych se na ten command not found. podle me pod uzivatelem co na ten stroj pres ansible lezes neni command brew v ceste...
    FRANCIMOUR
    FRANCIMOUR --- ---
    FRANCIMOUR: brew cask install google-chrome jde v pohodě
    FRANCIMOUR
    FRANCIMOUR --- ---
    AQUARIUS:
    fatal: []: FAILED! => {
    "changed": true,
    "cmd": "brew cask reinstall google-chrome",
    "delta": "0:00:00.003391",
    "end": "2019-07-15 21:18:53.865821",
    "invocation": {
    "module_args": {
    "_raw_params": "brew cask reinstall google-chrome",
    "_uses_shell": true,
    "argv": null,
    "chdir": null,
    "creates": null,
    "executable": null,
    "removes": null,
    "stdin": null,
    "warn": true
    }
    },
    "msg": "non-zero return code",
    "rc": 127,
    "start": "2019-07-15 21:18:53.862430",
    "stderr": "/bin/sh: brew: command not found",
    "stderr_lines": [
    "/bin/sh: brew: command not found"
    ],
    "stdout": "",
    "stdout_lines": []


    mezery mám správně.. ale díky verbose vím, že to nedoběhne.. ač se to tak tváří..
    AQUARIUS
    AQUARIUS --- ---
    FRANCIMOUR: jen pro ujasneni, ty dve mezery pred name a state ti chybi jen tady, nebo i v playbooku? Co zkusit podrobnejsi vystup? (-v, klidne vickrat)
    FRANCIMOUR
    FRANCIMOUR --- ---
    Ahoj,
    nějak se mi nedaří instalace aplikací přes homebrew v ansible... Hádám, že man mluví jasně:

    - homebrew_cask:
    name: alfred
    state: present

    sice proběhne, ale app nikde.. instalace probíhá na macu. Přes terminá ručně ( brew cask install.. ) vše ok.
    Co dělám špatně?
    BLACKOUT
    BLACKOUT --- ---
    INDIAN: Nemam ale otestujem to u nas na sandboxoch
    BLACKOUT
    BLACKOUT --- ---
    Ma niekto skusenosti s https://rancher.com/ ?
    INDIAN
    INDIAN --- ---
    RUDOLF: mno me to prijde taky takovy naky nedotazeny... navic, jak sem psal v predchozich prispevcich, potrebuju tam ukladat i plno custom dat jdouci z aplikacni vrstvy.
    Pri hledani sem narazil i na novej standard OMDB (Operation management database) kterej se nak tak koncepcne snazi CMDB vytlacit... Bohuzel nic open source sem nenasel a u placenejch veci sem nenasel vic informaci jak hodne je jejich nastroj v ohledu flexibility v ramci vlastni rozsiritelnosti... napr tohle:
    Product | AIOps | Moogsoft
    https://www.moogsoft.com/product/
    Kliknutím sem můžete změnit nastavení reklam