10-Ansible - Первые Playbook

Поділитися
Вставка
  • Опубліковано 30 кві 2018
  • #devops #девопс #ansible #ityoutubersru
    Ansible - Первые Playbook'и
    Пример создания трёх простых и используемых Playbook'ов.
    Буду рад паре баксов, можно даже Канадских :) www.paypal.me/DenisAstahov

КОМЕНТАРІ • 169

  • @user-mp7zp3hc5p
    @user-mp7zp3hc5p Рік тому +8

    Спасибо!

    • @ADV-IT
      @ADV-IT  Рік тому +4

      И снова спасибо за поддержку!

  • @skihouse2616
    @skihouse2616 Рік тому +16

    Спасибо Денис, даже через столько лет ваши уроки помогают. 😊

    • @kirisakow
      @kirisakow 8 місяців тому +1

      Присоединяюсь. Отличный материал, приятная подача!

  • @sidorenkoda
    @sidorenkoda 2 роки тому +12

    Спасибо большое! Очень помогло в автоматизации, вот таким людям как ты надо давать всякие награды за развитие общества)

  • @vadimbeznosenko9690
    @vadimbeznosenko9690 2 роки тому +2

    прикольные видео, как раз смотрю и читаю книгу "запускаем ansible"

  • @reymedvedev8648
    @reymedvedev8648 2 роки тому +5

    playbook2.yml для Ubuntu (в debian\ubuntu пакет httpd называется apache2 И вместо yum мы пишем apt)
    ---
    - name: Install default Apache Web Server
    hosts: all
    become: yes
    tasks:
    - name: Install Apache Web Server
    apt: name=apache2 state=latest
    - name: Start Apache and enable it on the every boot
    service: name=apache2 state=started enabled=yes

    • @MrMikhailDJ
      @MrMikhailDJ 2 роки тому

      Привет, ничего не запускается :с
      Пишет:
      fatal: [server2]: FAILED! => {"changed": false, "msg": "Failed to lock apt for exclusive operation: Failed to lock directory /var/lib/apt/lists/: E:Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)"}
      Хотя в конфиг файле сделал следующее:
      [privilege_escalation]
      become = True
      become_method = sudo
      become_user = server
      become_ask_pass = False
      Вроде бы права должны выдаваться, но ансибл в это не верит….

    • @niccolomachiavelli3542
      @niccolomachiavelli3542 Рік тому +2

      @@MrMikhailDJ Порылся в документации, по состоянию на 20.08.2022 работает:
      ---
      ---
      - name: Install default Apache Web Server
      hosts: all
      become: yes
      tasks:
      - name: install apache webserver
      ansible.builtin.apt:
      name: apache2
      state: latest
      - name: start apache and enable it on the boot
      ansible.builtin.service:
      name: apache2
      state: started
      enabled: yes

    • @MrMikhailDJ
      @MrMikhailDJ Рік тому

      @@niccolomachiavelli3542 у меня проблема была с правами sudoers на сервере)) все норм

    • @user-vm3ji7lm6t
      @user-vm3ji7lm6t Рік тому

      @@niccolomachiavelli3542 Работает , только вот этого раньше не видел, ansible.builtin.apt:

    • @aperv
      @aperv 6 місяців тому

      @@niccolomachiavelli3542 спасибо, ваш способ заработал. Денисовский нет

  • @p.konstantin1888
    @p.konstantin1888 5 років тому +23

    Спасибо, Денис! Всё очень доступно объясняешь. Желаю удачи в развитии канала!

  • @a1dwow
    @a1dwow 6 років тому +5

    Ждём новых уроков, спасибо )

  • @user-wp9qv2zx9m
    @user-wp9qv2zx9m 6 років тому +3

    Спасибо! Ждем продолжения!

  • @nedimice
    @nedimice Рік тому +1

    Спасибо огромное, Денис! Очень интересно и полезно!

  • @user-tb2jp7kg2c
    @user-tb2jp7kg2c 3 роки тому +2

    Большое спасибо за крутой урок!

  • @washington6666
    @washington6666 3 роки тому +1

    Хорошо когда у тебя есть проект и ты учишься новым вещам. Интеграция в процессе! Спасибо, Денис!

  • @ALG_IT
    @ALG_IT Рік тому +1

    Огонь! Все идет, как по маслу!

  • @profit86ru84
    @profit86ru84 3 роки тому +1

    Огромное спасибо за уроки. Доходчиво и задел на самостоятельное постижение деталей.

  • @user-vm3ji7lm6t
    @user-vm3ji7lm6t Рік тому +2

    Друзья с новым 2023 м годом !!! -Верим в лучшее , технологии их развитие это по любому благо, которое и спасет этот мир . Огромное спасибо профессиональному комьюнити Дениса Астахова . Коменты к Видосам Дениса, это вообще отдельный кладезь мудрости, которая помогала найти выход из тупика. Уже к 50 му часу просмотров видио от Дениса , тоже появились свои мысли , которые планирую оставлять в комментариях , и они возможно будут кому то полезны

  • @4optimistic
    @4optimistic 5 років тому +21

    Вместо clear можно использовать сочетание клавиш Ctrl+l - это очень удобно.

    • @liubkoallao
      @liubkoallao 5 років тому

      для начинающих, может быть, не всегда понятно - как это быстро экран очищается

  • @crazyhornet3438
    @crazyhornet3438 6 років тому +4

    Спасибо большое

  • @AK-md1dq
    @AK-md1dq Рік тому +1

    Спасибо Автору! Отличные и качественные видео уроки доступным и понятным языком для новичков!
    Продолжайте в том же духе, у Вас отлично получается!!

  • @user-zp1ic1fn4w
    @user-zp1ic1fn4w 5 років тому +6

    Класс!!! Еще )

  • @MaxiMiliaNnsk
    @MaxiMiliaNnsk 5 років тому +11

    Огромное спасибо за труд!
    Все очень доступно, брался за puppet, тяжко(еще и агенты ставить надо). Оказывается ansible интересная штука

    • @ADV-IT
      @ADV-IT  5 років тому +7

      Ansible the best!

  • @user-de7vk7gm7b
    @user-de7vk7gm7b 2 роки тому +1

    Благодарю за ясный и полезный контент, добью ansible and become to learn AWS !

  • @nikprav6615
    @nikprav6615 3 роки тому +2

    Спасибо большое за твои уроки. Раньше не понимал что за зверь такой Linux, но благодаря тебе и твоим урокам каждый день расту в этой теме!

  • @kykyryzolo
    @kykyryzolo Рік тому +1

    Cпасибо за урок!
    По твоим видео в прошлом месяце успел израсходовать всю квоту на AWS, пока ждал сброса, начал смотреть курс ансиблы, в итоге по этому уроку сегодня сделал пару-тройку плейбуков)

  • @ALexAlex-zl5zi
    @ALexAlex-zl5zi 7 місяців тому +1

    Мужик!)

  • @user-nx6fu1dt6e
    @user-nx6fu1dt6e 5 років тому +4

    Спасибо за такие видео! Прям респектую. Но заметил что за год синтаксис очень изменился, теперь ваш канал и doc.ansible как настольная книга перед сном.
    Не на всех платных курсах так рассказывают!

  • @romantsyupryk3009
    @romantsyupryk3009 5 років тому +1

    Thank you so much.

  • @rollerdrive
    @rollerdrive 4 роки тому +9

    Если использовать vim редактор, он сам правильно подгоняет пробелы. А вообще, спасибо за уроки. Классная подача и методика! :)

    • @yoasakura4651
      @yoasakura4651 2 роки тому

      А vim'om не трудно пользоваться ?

    • @iskanderchanyshev722
      @iskanderchanyshev722 2 роки тому

      @@yoasakura4651 Что там трудного ? комманд 10 основных, а возможностей вагон.

  • @Ivan-wp1ne1
    @Ivan-wp1ne1 2 роки тому +1

    чувак, все работает! спасибо!

  • @user-hl1ct8ph5b
    @user-hl1ct8ph5b 6 років тому +4

    Ничего не понял, но вроде годно,начну сначала изучать. Спасибо автору!)

  • @mehpvm
    @mehpvm 5 років тому +5

    дякую!

  • @StasFastov
    @StasFastov 4 роки тому +9

    Рестартовать Апач после изменений контента в докруте не нужно, но для демонстрации как работает хендлер можно допустить такое поведение :)

  • @user-kf2xl2vk5m
    @user-kf2xl2vk5m 4 роки тому +1

    Молоток!

  • @MrArtyomle
    @MrArtyomle 3 роки тому +2

    פשוט נהדר! מעריך אותך

    • @ADV-IT
      @ADV-IT  3 роки тому +1

      תודה רבה

  • @texasviking7732
    @texasviking7732 2 роки тому +1

    круто!

  • @avilovdag
    @avilovdag Рік тому +1

    Кайф , спасибо

  • @mikhailplekhov3894
    @mikhailplekhov3894 2 роки тому +1

    Спасибо

  • @pitonic74
    @pitonic74 6 років тому +12

    Привет. Спасибо что делишся знаниями. Я с ansible знаком но с интересом Смотрю. Писать не писал но менял много готовых. Не забудь рассказать где ansible может хранить переменные. У меня был случай на работе. Я менял переменные . А он запусался с другими параметрами.. полезно знать :) когда на работе много админов и общие плейбуки и запускаем на общем сервере :) а не на лаптопе (секюрти итд)

  • @user-br9sz4jn5k
    @user-br9sz4jn5k 8 місяців тому

    Сделал себе 3 сервера самых дешманских по 180р. Тренеруюсь на них. И вот очень часто один из 3 чем то не доволен. Повторно запускаю комманду, все ок)))😅
    Спасибо за ролики!

  • @nobody_nowhere_
    @nobody_nowhere_ 6 років тому

    Хорошо бы ещё про dynamic inventory и tag написать. И про роли, что это, как их писать и подключать. И про работу с переменными, как заданных в group_vars, так и после gather_facts - ip сервера и проч.

    • @ADV-IT
      @ADV-IT  6 років тому +2

      Не все сразу!
      По очереди

  • @djkjfewjfbeojw
    @djkjfewjfbeojw 4 роки тому +1

    Используй ctr + r для поиска команды, это гораздо быстрее, чем тыкать стрелку вверх

  • @Fa11en_Angel
    @Fa11en_Angel 4 роки тому +1

    Такие дела =)

  • @sammyel4eg
    @sammyel4eg 12 днів тому +1

    как передать переменную в модуль? к примеру я на питоне хочу получить какие то данные полученные от других модулей и уже свою логику запустить

  • @MsMadDMan
    @MsMadDMan 6 років тому

    Спасибо. Можно еще tasks создавать отдельным файлом в roles//tasks/main.yml . А в playbook писать только .

    • @ADV-IT
      @ADV-IT  6 років тому +3

      До этого тоже дойдём, будет урок по Roles

    • @nobody_nowhere_
      @nobody_nowhere_ 6 років тому

      DMT роли можно и нужно создавать через ansible-galaxy init (rolename)

    • @user-wm4bw4ii3g
      @user-wm4bw4ii3g 6 років тому

      Спасибо за столь замечательные уроки! Урок по Roles теперь ждем с нетерпением!

  • @antonantochi8498
    @antonantochi8498 4 роки тому +3

    Спасибо за туториал, но рестартить сервер при модификации файлов веб-приложения совсем не обязательно

  • @YuriyPogrebinsky
    @YuriyPogrebinsky 5 років тому +1

    Денис, продолжаю смотреть ваши материалы и снова вопрос, если скажем апач уже стоит но старый и мы выполняем команду установки со state=latest обновление произойдет?

    • @ADV-IT
      @ADV-IT  5 років тому +6

      Документацию посмотри docs.ansible.com/ansible/latest/modules/yum_module.html
      latest will update the specified package if it's not of the latest available version.

  • @user-bk2js4vr4c
    @user-bk2js4vr4c 6 місяців тому

    Заместо restart я бы использовал reloaded,чтобы сервер не падал на рестарте.

  • @rollerman8200
    @rollerman8200 2 роки тому +3

    Спасибо за уроки!!! Все классно жаль в этом уроке на рассказал подробно о переменных для Apache которые у тебя уже были созданы .
    и по теме синтаксис изменился написания кода в одну строчку недопустимо . для Ubuntu актуально так
    ---
    - name: Install Apache2
    hosts: all
    become: yes
    tasks:
    - name: Install Apache2
    apt:
    name: apache2
    state: present
    - name: Start Service Apche2 and enable
    service:
    name=apache2
    state=started
    enabled=yes

  • @nomanyak
    @nomanyak 3 роки тому

    вопрос, в ансибле нет глюка по распаковке tgz, вроде всё как в оф доке делаю, но не отрабатывает, пробовал разные варианты, руководствовался инструкацией по unarchive

    • @ADV-IT
      @ADV-IT  3 роки тому

      Проверил, всё работает, мож у тебя проблема с TGZ?

  • @user-ho4hw1ju6x
    @user-ho4hw1ju6x 8 місяців тому

    что то не получается использовать ни ключ -b в эт-хок комманде, ни become: yes в плейбуке! может что то изменилось за 5 лет в управлении ansible? подскажите пожалуйста)))

  • @germanleonovich4176
    @germanleonovich4176 4 роки тому +2

    ping отрабатывает только если на удаленной стороне установлен python, не понимаю почему так назвали модуль между ним и ping большая разница

  • @starpom1234
    @starpom1234 5 років тому

    как с помощью Ansible дать право на копирование c под юзера var/www ?

  • @sergeychechev8278
    @sergeychechev8278 4 роки тому +2

    Спасибо за отличный уроки! Подскажите пожалуйста, через ssh-public key работает, через команды ansible я pong получаю, но через playbook выдают ошибку: FAILED! => {"msg": "Missing sudo password"}. в чем может быть причина?

    • @greddery960
      @greddery960 3 роки тому +1

      в конце команды в терминале -b -k -K или в судоерс добавить юзера.

    • @sergeychechev8278
      @sergeychechev8278 3 роки тому

      @@greddery960 Спасибо!

    • @vadsher
      @vadsher 2 роки тому +2

      Можно добавить в конце команды в терминале -b -k -K, как писали выше, но если на удаленных машинах в одной группе разные пароли и юзеры? При этом добавление пользователя в sudoers не помогает, т.к. требует ввода пароля по прежнему. Я вышел из ситуации, указав не требовать пароля для группы нужного мне пользователя, например: %user ALL=(ALL:ALL) NOPASSWD:ALL

  • @DekardKain311
    @DekardKain311 Рік тому

    Если у меня разные хосты в рамках одной группы, дебиан и центос, могу ли я запустить установку веб серверов на них одним плейбуком, без дополнительной группировки по дистрибутиву? Или в реальности так не делают и разные дистрибутивы всегда закидывают по разным группам?

    • @ADV-IT
      @ADV-IT  Рік тому +1

      Можешь конечно в одной группе, просто вставляй condition везде

  • @nickkorolev1245
    @nickkorolev1245 5 років тому +1

    Добрый день. Скажите пожалуйста, почему процедура копирования каталогов с файлами при помощи модуля "copy" выполняется очень долго ? к примеру: папку 20 МБ Ansible копирует 10 минут, а если просто через scp то 5 сек. Как можно пофиксить ?

    • @ADV-IT
      @ADV-IT  5 років тому +1

      Попробуй вместо copy использовать synchronize
      - synchronize: src=myfile dest=/home/user/test/

    • @nickkorolev1245
      @nickkorolev1245 5 років тому

      @@ADV-IT Пробовал synckronize но лучше не стало, ansible на каждое действие клпирование файла инициирунт новое соединение и после копирования папки большого объема на серверах посмотреть в last то это будет гиганский список подключений от моего пользователя. Ну соответствено это забивает lastlog

    • @ADV-IT
      @ADV-IT  5 років тому +2

      пакуй в авхив, копируй, и там распаковывай

  • @sashmat256
    @sashmat256 4 роки тому

    Доброй ночи.У меня возник вопрос.В уроке была сказано про строку notify.Как вообще понять,куда вставлять данную строку?И второй момент ,если вставлю данную строку под другим name,правильно понимаю,тогда будет просто перезапускаться служба apache произвольно .Если так,как часто?P.S/Прошу прощение,если запутал.Хочу разобраться .Спасибо,за понимание

    • @ADV-IT
      @ADV-IT  4 роки тому +1

      Вставляй это в тот Task который должен позвать другой Task.
      Это типа Goto как раньше программировали.

    • @romansokolov2216
      @romansokolov2216 3 роки тому +1

      @@ADV-IT Заметил, что когда запускаем первый раз playbook3.yml, handler Restart Apache судя по выводу выполняется последним, хотя вызов прописан в задаче name: Copy index.html перед задачей name: Start Apache and Enable it on boot. Кажется не совсем правильным такое поведение, либо в данном случае можно было бы поставить копирование последней задачей.

  • @itkrasnodar956
    @itkrasnodar956 3 роки тому +1

    Денис, спасибо за уроки, расскажи про выполнение команды от sudo без ввода пароля. Я, к примеру, дописываю аргументы -b -K и ввожу пароль, а как автоматизировать без ввода пароля sudo? И в playbook как это реализовать? Или ввод пароля считается нормой в реализации проекта на ansible?

    • @ADV-IT
      @ADV-IT  3 роки тому +1

      Нужно твоего юзера добавить в sudoers лист без пароля, это не Ansible, это на linux
      Вот linuxconfig.org/configure-sudo-without-password-on-ubuntu-20-04-focal-fossa-linux

    • @itkrasnodar956
      @itkrasnodar956 3 роки тому

      @@ADV-IT , благодарю за ответ, но мне кажется это урон безопасности. Как в сообществе DevOps это считается правильно реализованной задачей? Или все от предпочтений каждого специалиста зависит и нет какого - то default решения?

    • @DenisAstahov
      @DenisAstahov 3 роки тому +1

      @@itkrasnodar956 Такая компания как AWS - Amazon Web Services использует только юзера с ssh ключем, и без пароля на всех Linux системах.

    • @xremoteuser
      @xremoteuser Рік тому +3

      @@ADV-IT как это не Ansible? Вполне себе задача именно что для Ansible:
      ansible all -m shell -a "echo \"spurdo ALL=(ALL:ALL) NOPASSWD:ALL\" >> /etc/sudoers" -b --ask-become-pass

    • @user-br9sz4jn5k
      @user-br9sz4jn5k 8 місяців тому

      ansible-playbook playbook1.yml --ask-become-pass @@xremoteuser

  • @Alex_La
    @Alex_La 3 роки тому +2

    Спасибо за уроки. А как всё-таки правильно playbook писать?
    yum: name=httpd status=latest
    Или
    yum:
    name: httpd
    status: latest

    • @ADV-IT
      @ADV-IT  3 роки тому +2

      Второе обычно

    • @alexandergreat6192
      @alexandergreat6192 2 роки тому +1

      Первое - это устаревший, нерекомендуемый к использованию синтаксис

  • @davidchagalidze
    @davidchagalidze 6 років тому

    Привет, ты говорил, что у тебя есть git, и там есть несколько playbook для ansible. Можешь подсказать ссылку?

    • @ADV-IT
      @ADV-IT  6 років тому

      Есть Git но там не выкладывал playbooks
      github.com/adv4000

    • @davidchagalidze
      @davidchagalidze 6 років тому

      спасибо, жду продолжения по ansible)

  • @ilovesandyboy
    @ilovesandyboy Рік тому

    Добрый день Денис.
    Неясно для чего рестартовать сервис, если изменился файл. К контексте ansible может это нужно, но изменение странички вручную не требует рестарта всего сервиса.
    Не могли бы разъяснить этот вопрос?

    • @ADV-IT
      @ADV-IT  Рік тому +2

      Да, не требует, это я так чтобы показать как сделать тригер

  • @onemasterlomaster1829
    @onemasterlomaster1829 6 років тому +1

    лайк!
    Что там с конкурсом на сайте массада? Еще будет видео?

    • @ADV-IT
      @ADV-IT  6 років тому

      Я застрял на Challenge#2, и уже опубликовали полное решение.

    • @onemasterlomaster1829
      @onemasterlomaster1829 6 років тому

      ))) а где опубликовали? Где посмотреть? Может видос заснимешь что там и как было?

    • @ADV-IT
      @ADV-IT  6 років тому

      drive.google.com/file/d/14RcWa4hYOHiAEGKk5sR-0oUXmr7AF5Jh/view

    • @ADV-IT
      @ADV-IT  6 років тому +1

      www.israeldefense.co.il/node/33922

    • @onemasterlomaster1829
      @onemasterlomaster1829 6 років тому

      друг ты куда пропал ?

  • @user-if1nh8bv7n
    @user-if1nh8bv7n 4 роки тому

    А можно засунуть Ad-Hoc команду в playbook? Если целый блок описывать лениво))) Ну или модулем ансибла не владеешь и отправлял команду как shell -a "****"???

    • @dmitrikonnov922
      @dmitrikonnov922 Рік тому

      На как плейбук нужен, что бы сократить количество скрипта. По идеи вообще можно и терраформ и ансибл не использовать, а вооьще всё одними скриптами запускать. А чё?)

  • @user-cv1dx1ro3k
    @user-cv1dx1ro3k 3 роки тому

    День добрый, подскажите, есть у меня команда на скачивание не большого файла, иногда ansible прерывает выполнение по тайм-ауту, а иногда нормально всё. Подозреваю что файл не всегда успевает скачаться, как увеличить время тайм-аута?

    • @ADV-IT
      @ADV-IT  3 роки тому +2

      Почитай документацию там ведь всё написано
      docs.ansible.com/ansible/2.3/get_url_module.html

    • @ADV-IT
      @ADV-IT  3 роки тому +2

      есть параметр timeout

    • @ADV-IT
      @ADV-IT  3 роки тому +3

      по умолчанию он 10 секунд, сделай 20, 30, 40

  • @user-zt9fw5wh6o
    @user-zt9fw5wh6o Рік тому

    Сделал на убунту плэйбук 3. На самом сервере страничка index.html открывается. Если по сети открываешь, то дефолтная от Апачи (. Почему?

    • @user-zt9fw5wh6o
      @user-zt9fw5wh6o Рік тому +1

      - name: Fix default page issue
      shell: a2dissite 000-default.conf

  • @egorgorbachev
    @egorgorbachev 5 років тому

    ERROR! Syntax Error while loading YAML.
    mapping values are not allowed in this context
    The error appears to have been in '/root/server.yml': line 4, column 8, but may
    be elsewhere in the file depending on the exact syntax problem.
    The offending line appears to be:
    become: yes
    tasks:
    ^ here
    вот так пише и все

    • @ADV-IT
      @ADV-IT  5 років тому +1

      Вот это тебе поможет: www.yamllint.com/

  • @yoasakura4651
    @yoasakura4651 2 роки тому +1

    Ребят, всем привет, подскажите пожалуйста в чём может быть проблема. Сделал такой же плейбук по установке апачи, но не могу зайти на вебсервер, порты открыты, но не понимаю в чём прикол

    • @ADV-IT
      @ADV-IT  2 роки тому

      А Apache установился? может не тот IP используешь для web?

    • @yoasakura4651
      @yoasakura4651 2 роки тому

      @@ADV-IT Да, апачи установился, проверял по статусу, он даже запущен. Ip использовал такой же, как на видео

    • @ADV-IT
      @ADV-IT  2 роки тому

      @@yoasakura4651 Зайди на один из серверов и проверь curl localhost,
      если работает значит всё ок, и проблема в доступе снаружи, посмотри IP , Firewall

    • @yoasakura4651
      @yoasakura4651 2 роки тому +1

      @@ADV-IT, уже разобрался, спасибо, оказывается нужно было настроить у инстанса входящие правила на aws )

    • @ADV-IT
      @ADV-IT  2 роки тому +2

      @@yoasakura4651 Проклятые SecurityGroups, все беды от них :) LOL

  • @MrMikhailDJ
    @MrMikhailDJ 2 роки тому

    С первым же плейбуком проблема. Через обычный модуль пинг всё проходит хорошо, а через плейбук не работает пишет ошибку, что не может подключиться к серверам.
    fatal failed missing sudo password и все в таком духе… Делал все ровно по видео

    • @ADV-IT
      @ADV-IT  2 роки тому

      Видать не все точь в точь

    • @MrMikhailDJ
      @MrMikhailDJ 2 роки тому +1

      @@ADV-IT да всё точно. Проблема решилась добавлением NOPASSWD:ALL в sudoers

    • @ADV-IT
      @ADV-IT  2 роки тому +1

      @@MrMikhailDJ Супер!

  • @Oswee
    @Oswee 4 роки тому +1

    --ask-become-pass sprashevaetsa u menja. :( Vidimo nado nastroiki servera popravitj.

  • @brest1019
    @brest1019 Рік тому

    3й плейбук чёт не идёт
    The offending line appears to be:
    - name: Install Apache and Upload my Web Page
    hosts: all
    ^ here

    • @ADV-IT
      @ADV-IT  Рік тому +1

      Смотри про основы YAML или внимательней смотри еще раз этот урок и посмотри сколько пробелов перед hosts: all

  • @inkva_
    @inkva_ 2 роки тому

    Как вызвать tree ?) Команда не найдена

    • @ADV-IT
      @ADV-IT  2 роки тому +1

      Установи
      sudo yum install tree
      или
      sudo apt-get tree

    • @inkva_
      @inkva_ 2 роки тому +1

      @@ADV-IT блин я думал это какой-то модуль ансибла )

    • @inkva_
      @inkva_ 2 роки тому

      @@ADV-IT если на то пошло , подскажешь как делать бэкап файла через ансибл ?)

  • @brest1019
    @brest1019 Рік тому +1

    почему у меня вылезли коровы после команды пинг? ))

  • @vodopad27
    @vodopad27 5 років тому

    То ли я тупой, то ли с YAML что-то не то... Но для меня от кажется очень сложным. json проще как-то...

    • @ADV-IT
      @ADV-IT  5 років тому

      Тоже самое было со мной. Но п отом все стало проще восприниматся.

    • @fivaproldge
      @fivaproldge 5 років тому

      это джейсон-то проще?)))

  • @samrybkin9184
    @samrybkin9184 4 роки тому

    коментарии мы ж пишем как и в linux #?

  • @user-rg3ml5ef9t
    @user-rg3ml5ef9t 5 років тому +1

    Кто сказал что YaML должен с "---" начинаться!? Или это фича ansible?

    • @ADV-IT
      @ADV-IT  5 років тому

      Это правила написания

    • @user-rg3ml5ef9t
      @user-rg3ml5ef9t 5 років тому +3

      Нашёл в доке: docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html
      Просто "---" это разделитель документов в потоке, а не индикатор формата, он в начале файла yaml не обязателен (но допустим).
      Но раз так принято в ansible - так нет проблем.

  • @sergeyzaika9437
    @sergeyzaika9437 5 років тому +1

    Все просто когда instance LinAWS а когда Ubuntu на AWS? Кароче навозился, и apt в итоге почемуто не работает... ну чайник я.... А так круто конечно, СПАСИБО! И ВОТ! Меняю коммент...... Вот... через один урок ADV-IT и на этот вопрос ответил.... ну блин спасибо... Я сутки возился пока не пришел к тому что причина в том что пакет не httpd а apache2 (для debian) ... и вот смотрю урок № 12 в котором об этом рассказано... Чего раньше не сказал? Пипец... Всеж не тупо копируют, я предполагаю решают свои задачи и примеряют на свои линухи... Зло!

  • @vasyay5307
    @vasyay5307 4 роки тому

    не понял, почему надо апач рестартить когда html меняется? Там кеш?

  • @user-gv1ri5ql8d
    @user-gv1ri5ql8d 4 роки тому

    WARNING]: Could not match supplied host pattern, ignoring: All
    PLAY [Test my servers] *******************************************************************************************************************************************************************************
    skipping: no hosts matched
    PLAY RECAP *******************************************************************************************************************************************************************************************
    Я самый невезучий... После 1 плейбука выдает такую ошибку

  • @serhioramires3166
    @serhioramires3166 2 місяці тому +1

    Вы все продолжаете транслировать свою логическую ошибку, что когда зеленый это ничего не сделано, а changed это признак выполнения, но желтый.
    Это же не светофор.
    Желтым подсвечивается статус changed для визуального вопроиятия того, что были произведены изменения.
    Зеленым сообщется что изменений сделано не было.
    Все и не надо ничего лишнего говорить от себя.

  • @Dimanfun
    @Dimanfun 5 років тому

    Чёто не принимает он ключи:
    TASK [Gathering Facts] *****************************************************************************************************************************************
    fatal: [yenten_host1]: FAILED! => {"changed": false, "module_stderr": "Shared connection to 10.10.0.106 closed.
    ", "module_stdout": "sudo: a password is required
    ", "msg": "MODULE FAILURE", "rc": 1}
    Куда копать?

    • @ADV-IT
      @ADV-IT  5 років тому +1

      *sudo password is required*
      Отмени пароль для sudo на этого юзера

    • @Dimanfun
      @Dimanfun 5 років тому

      @@ADV-IT Спс, после этого заработало. Это был вариант когда я pub ключ с ансибл-мастера добавил а authorized_keys на клиентах. Как я понял, у Вас на видео все наоборот, Вы pub ключи клиентов скинули на ансибл-мастер и указали в group_vars, в таком варианте другая проблема: "Failed to connect to the host via ssh: username@10.10.0.106: Permission denied (publickey,password).
      "

    • @ADV-IT
      @ADV-IT  5 років тому +1

      Попробуй вручную приконектится в серверу ssh -i mykey.pem username@10.10.0.106
      если сработает попробуй adhoc команды с debug:
      ansible myserver_group -m ping -vvv

  • @MrRomARb_Bratsk
    @MrRomARb_Bratsk 2 роки тому

    Хороший материал.. НО! Когда студент на стажировке , с пеной у рта мне рассказывал , что при обновлении страницы нужно рестартить апач... и дал эту ссылку , мне аж самому интересно стало , чтож там за апач такой. Лет так 20 его не резетил , а тут )) Вы серьезно ? Профессиональный плейбук, для резюме ... в котором рестартят апач после аплоада новой страницы ?))) Я бы на вас очень вдумчиво посмотрел на собеседовании, с таким резюме ... А если страница создается динамически ,что в принципе в 90% случаев, каждый раз резетить ? в продакшене? видимо по крону))) Зачем вы людям голову пудрите, они ведь реально это учат ...

    • @ADV-IT
      @ADV-IT  2 роки тому +7

      Я учу пользоваться Ansible, а не Apache.

  • @babymayby9270
    @babymayby9270 Рік тому +1

    )) ну и муть, на python или powershell тоже самое реализовать гораздо проще чем через этот ансибл

    • @MrMikhailDJ
      @MrMikhailDJ Рік тому

      «Тоже самое реализовать» это что подразумевается? Например, развёртывания приложения на 100500 серверов?))))) через питон? 😂

    • @babymayby9270
      @babymayby9270 Рік тому

      @@MrMikhailDJ да хоть 100000000 серверов, не проблема

    • @MrMikhailDJ
      @MrMikhailDJ Рік тому

      @@babymayby9270 ещё бы понять, чем питон проще, когда ansible является безагентой средой, где удобно можно взаимодействовать с инфраструктурой безопасности компании… Ну это меньшая проблема, чем скорость с который на твое количество серваков, что ты написал в комменте будет разворачиваться твоя инфраструктура/приложение. Для небольших тасок подходит такой метод, но когда имеешь дело с высоконагруженными системами, то аналогов ансиблу стремится к нулю.
      Использования питона предполагает наличие среды на обоих машинах. А для ансибла этого не нужно. Достаточно нативно установленного питона, который идёт со всеми de линуксовскими. Когда сможешь это осознать и найти настоящую работу в сфере IT, то поймёшь о чём я говорю. А так… Тренируйся дальше короче :)

    • @babymayby9270
      @babymayby9270 Рік тому

      @@MrMikhailDJ всяк кулик своё болото хвалит:) да не нужен питон чтобы запустить apt install по ssh вообще, ну а дальше зависит от того кто с чем работать умеет и у кого какой опыт и менталитет

    • @MrMikhailDJ
      @MrMikhailDJ Рік тому

      @@babymayby9270 я не хвалю своё болото)) я просто хочу донести, как люди работают в больших компаниях по типу сбера, да и я уверен, что ansible это скорее мировая практика и какой-никакой этикет при настройке инфраструктуры, где одним apt install ты не ограничиваешься…

  • @nikitayasnev
    @nikitayasnev Рік тому

    горе учителя

  • @Alex_La
    @Alex_La 3 роки тому +7

    22:20 Если бы давали лёгкие задания после интервью, такие как развернуть Apache в Ansible.
    Вот одно из последних, которое давали мне:
    1. Clone this project, change its name and restructure it as you see fit, create your own GitHub repo with the code
    2. Write an application that will extract the secret string from a DynamoDB table in our account
    3. The secret_code lies in a DynamoDB table devops-challenge where code_name = #{codeName}
    4. The keys that will provide access to the account have been provided separatly, DO NOT COMMIT THEM, if the keys are exposed to GitHub, we will be notified and you will be disqualified
    5. Create a docker container that will publish secret_code to 127.0.0.1:5000/secret
    6. Create a Drone CI account, and add a .drone.yml that will build, test and deploy your code and container/s
    7. The Drone process should publish the contianer to your own docker hub account
    8. A link to the container on docker hub should be published as container to /health (See requirement #2)
    9. A link to the GitHub project should be published as project to /health (See requirement #2)
    10. Once completed, reply to the challenge email
    А к базе нужно было сочинить вот такой запрос
    aws dynamodb get-item -table-name devops-challenge -key ‘{“code_name”: {“S”: “thedoctor”}}’

    • @ADV-IT
      @ADV-IT  3 роки тому

      Ну не так уж и сложно, только много

    • @Alex_La
      @Alex_La 3 роки тому +1

      @@ADV-IT про Drone CI я только из задания узнал

    • @alexandergreat6192
      @alexandergreat6192 2 роки тому +5

      ​@@ADV-IT круто было бы увидеть от тебя видео с разбором этого и подобных ему заданий)

  • @roman-romadin
    @roman-romadin 3 роки тому +3

    "Ansible - С Нуля до Профессионала" Denis Astahov - www.udemy.com/user/denis-astahov/ - отблагодарим Дениса за столь Шикарный курс!

  • @user-sc7ev3ls4f
    @user-sc7ev3ls4f 11 місяців тому +1

    Спасибо