Не запускается Ansible-playbook, пишет ошибку

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
daiponyat
Сообщения: 10
ОС: CentOS 7

Не запускается Ansible-playbook, пишет ошибку

Сообщение daiponyat »

Всем привет! В книге по Астериску перепечатал playbook, и решил его запустить. Сначала выдавало ошибки синтаксиса в огромном порядке, где таб нельзя нажимать, где пробел лишний. Вроде разобрался. Но теперь ошибка дошла до следующей точки.
Чтобы было яснее, вот плейбук:

Код: Выделить всё

---
- hosts: starfish
 become: yes
 vars:
# Используйте это при первом запуске этого скрипта
 current_mysql_root_password: ""
 updated_mysql_root_password: "YouNeedAReallyGoodPassword"
 current_mysql_asterisk_password: ""
 updated_mysql_asterisk_password: "YouNeedAReallyGoodPasswordHereToo"
# Закомментируйте вышеизложенное после первого запуска
# Раскомментируйте строки ниже для последующих запусков этого скрипта
# current_mysql_root_password: "YouNeedAReallyGoodPassword"
# updated_mysql_root_password: "{{ current_mysql_root_password }}"
# current_mysql_asterisk_password: "YouNeedAReallyGoodPasswordHereToo"
# updated_mysql_asterisk_password: "{{ current_mysql_asterisk_password }}"
 tasks:
 - name: Install epel-release
 dnf:
 name: epel-release
 state: present
 - name: Install dependencies
 dnf:
 name: ['vim', 'wget', 'MySQL-python']
 state: present
 - name: Install the MySQL repo.
 dnf:
 name: http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
 state: present
 - name: Install mysql-server
 dnf:
 name: mysql-server
 state: present
 - name: Override variables for MySQL (RedHat).
 set_fact:
 mysql_daemon: mysqld
 mysql_packages: ['mysql-server']
 mysql_log_error: /var/log/mysqld.err
 mysql_syslog_tag: mysqld
 mysql_pid_file: /var/run/mysqld/mysqld.pid
 mysql_socket: /var/lib/mysql/mysql.sock
 when: ansible_os_family == "RedHat"
 - name: Ensure MySQL server is running
 service:
 name: mysqld
 state: started
 enabled: yes
 - name: update mysql root pass for localhost root account from local servers
[b] [i]mysql_user:
 login_user: root[/i][/b]
 login_password: "{{ current_mysql_root_password }}"
 name: root
 host: "{{ item }}"
 password: "{{ updated_mysql_root_password }}"
Глава 3. Установка Asterisk 24
 with_items:
 - localhost
 - name: update mysql root password for all other local root accounts
 mysql_user:
 login_user: root
 login_password: "{{ updated_mysql_root_password }}"
 name: root
 host: "{{ item }}"
 password: "{{ updated_mysql_root_password }}"
 with_items:
 - "{{ inventory_hostname }}"
 - 127.0.0.1
 - ::1
 - localhost.localdomain
 - name: create asterisk database
 mysql_db:
 login_user: root
 login_password: "{{ updated_mysql_root_password }}"
 name: asterisk
 state: present
 - name: asterisk mysql user
 mysql_user:
 login_user: root
 login_password: "{{ updated_mysql_root_password }}"
 name: asterisk
 host: "{{ item }}"
 password: "{{ updated_mysql_asterisk_password }}"
 priv: "asterisk.*:ALL"
 with_items:
 - "{{ inventory_hostname }}"
 - 127.0.0.1
 - ::1
 - localhost
 - localhost.localdomain
 - name: remove anonymous user
 mysql_user:
 login_user: root
 login_password: "{{ updated_mysql_root_password }}"
 name: ""
 state: absent
 host: "{{ item }}"
 with_items:
 - localhost
 - "{{ inventory_hostname }}"
 - 127.0.0.1
 - ::1
 - localhost.localdomain
 - name: remove test database
 mysql_db:
 login_user: root
 login_password: "{{ updated_mysql_root_password }}"
 name: test
 state: absent
 - user:
 name: asterisk
 state: present
 createhome: yes
 - group:
 name: asterisk
 state: present
 - user:
Глава 3. Установка Asterisk 25
 name: astmin
 groups: asterisk,wheel
 state: present
 - name: Install other dependencies
 dnf:
 name:
 - unixODBC
 - unixODBC-devel
 - mysql-connector-odbc
 - MySQL-python
 - tcpdump
 - ntp
 - ntpdate
 - jansson
 - bind-utils
 state: present
# Tweak the firewall for UDP/SIP
 - firewalld:
 port: 5060/udp
 permanent: true
 state: enabled
# Tweak firewall for UDP/RTP
 - firewalld:
 port: 10000-20000/udp
 permanent: true
 state: enabled
 - name: Ensure NTP is running
 service:
 name: ntpd
 state: started
 enabled: yes
# The libmyodbc8a.so file is versioned, so if you don't have version 8, see what the
# /usr/lib64/libmyodbc<version>a.so file is, and refer to that instead
# on your 'Driver64' line, and then run the playbook again
 - name: update odbcinst.ini
 lineinfile:
 dest: /etc/odbcinst.ini
 regexp: "{{ item.regexp }}"
 line: "{{ item.line }}"
 state: present
 with_items:
 - regexp: "^Driver64"
 line: "Driver64 = /usr/lib64/libmyodbc8a.so"
 - regexp: "^Setup64"
 line: "Setup64 = /usr/lib64/libodbcmyS.so"
 - name: create odbc.ini
 blockinfile:
 path: /etc/odbc.ini
 create: yes
 block: |
 [asterisk]
 Driver = MySQL
 Description = MySQL connection to 'asterisk' database
 Server = localhost
 Port = 3306
 Database = asterisk
 UserName = asterisk
 Password = {{ updated_mysql_asterisk_password }}
 #Socket = /var/run/mysqld/mysqld.sock
 Socket = /var/lib/mysql/mysql.sock
...
Выделил место ошибки. Убирал, добавлял пробелы и никак не могу понять в чём причина...
Последний раз редактировалось daiponyat 08.02.2022 18:23, всего редактировалось 1 раз.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20793
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение Bizdelnick »

daiponyat, отредактируйте, пожалуйста, первое сообщение, используя тег code, чтобы сохранить форматирование. Так ничего понять невозможно.
daiponyat писал(а):
08.02.2022 17:28
где таб нельзя нажимать, где пробел лишний
Табуляцию в YAML не используйте никогда.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
daiponyat
Сообщения: 10
ОС: CentOS 7

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение daiponyat »

Bizdelnick писал:
08.02.2022 17:45
daiponyat, отредактируйте, пожалуйста, первое сообщение, используя тег code, чтобы сохранить форматирование. Так ничего понять невозможно.
daiponyat писал(а):
08.02.2022 17:28
где таб нельзя нажимать, где пробел лишний
Табуляцию в YAML не используйте никогда.
Простите, я не знаю как форматировать при помощи тег code. Скопировал из учебника всю информацию, и попытался выделить в ней ошибку. Сам себе перепечатывал весь текст, что указан в первом сообщении.
вот фотография
Вложения
Безымянный1.jpg
Безымянный1.jpg (100.74 КБ) 1519 просмотров
Спасибо сказали:
daiponyat
Сообщения: 10
ОС: CentOS 7

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение daiponyat »

могу сфотографировать текст из текстового редактора Нано? может так будет лучше?
Возможно, мне весь текст нужно правильно отформатировать. Читаю на хабре статью, и там пишут что два пробела нужно ставить перед значением после ключа.
В учебнике написано просто скопировать, а я даже скопировать и вставить в редактор не могу...
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20793
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение Bizdelnick »

daiponyat писал(а):
08.02.2022 18:02
могу сфотографировать текст из текстового редактора Нано? может так будет лучше?
Нет, так будет хуже.
daiponyat писал(а):
08.02.2022 17:56
я не знаю как форматировать при помощи тег code
help/bbcode#f2r1
Добавлено (18:28):
Отступы неправильно расставлены (примерно везде).
Вообще перед изучением Ansible строго обязательно ознакомиться с синтаксисом YAML.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
daiponyat
Сообщения: 10
ОС: CentOS 7

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение daiponyat »

Bizdelnick писал:
08.02.2022 18:14
daiponyat писал(а):
08.02.2022 18:02
могу сфотографировать текст из текстового редактора Нано? может так будет лучше?
Нет, так будет хуже.
daiponyat писал(а):
08.02.2022 17:56
я не знаю как форматировать при помощи тег code
help/bbcode#f2r1
Добавлено (08.02.2022 18:28):
Отступы неправильно расставлены (примерно везде).
Вообще перед изучением Ansible строго обязательно ознакомиться с синтаксисом YAML.
отредактировал. надеюсь, правильно

В учебнике всё выглядит как и должно быть, только как понять это всё. Подскажите, есть какой-либо текстовый редактор, понимающий YAML, чтобы я мог туда вставить текст и уже по нему перепечатывать всё в CentOS. Или же мне лучше установить CentOS заново, и туда установить текстовый редактор (например, я увидел какой-то Atom). И туда всё печатать? Как на Ваш взгляд будет лучше?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20793
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Не запускается Ansible-playbook, пишет ошибку

Сообщение Bizdelnick »

daiponyat писал(а):
08.02.2022 18:29
Подскажите, есть какой-либо текстовый редактор, понимающий YAML
Любой. Только корректность структуры он за Вас не проверит.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Ответить