Всем привет.
После установки свежей Linux ей надо указать IP-адрес, временную зону, адрес DNS-сервера, адрес Proxy-сервера, локализацию консоли, прочее. И только после этого уже можно переходить к обновлению системы и установке прочего софта.
Эти шаги настолько обязательны что хочется их автоматизировать, чтобы исключить человеческий фактор. А почему бы и нет? Мои мысли прочитал Вячеслав Лохтуров и предложил для этого иcпользовать Ansible.
Он набросал Ansible-роль под именем "host". Роль использует следующие переменные назначение которых очевидно:
hostname: Linux-host
base_domain_prefix: mydomain
base_domain_suffix: net
base_net: 192.168.1
gateway_octet: 254
dns_ip: 192.168.1.1
proxy_ip: 192.168.1.1
proxy_port: 8080
А в список задач для исполнения включено следующее:
# /host/tasks/main.yml
- name: Create hosts file
template: src=hosts.j2 dest=/etc/hosts
- name: Create resolv.conf file
template: src=resolv.conf.j2 dest=/etc/resolv.conf
- name: Create hostname file
template: src=hostname.j2 dest=/etc/hostname
- name: Create environment file
template: src=environment.j2 dest=/etc/environment
- name: Create interfaces file CentOS
template: src=interfacesC.j2 dest=/etc/network/interfaces
when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'
- name: Create interfaces file Ubuntu
template: src=interfacesU.j2 dest=/etc/network/interfaces
when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'
- name: Update system locale CentOS
timedatectl set-timezone Europe/Kyiv
localectl set-locale LANG=ru_RU.utf8
when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'
- name: Update system locale Ubuntu
timedatectl set-timezone Europe/Kiev
echo LANG=ru_RU.UTF-8 > /etc/default/locale
when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'
Все задачи также очевидны по своему назначению, кроме, разве что, изменения hostname хоста. Я бы ее не применял. Все файлы роли после моих правок я выложил одним архивом: пользуйтесь, критикуйте, меняйте под себя.
Успехов.
No comments:
Post a Comment
А что вы думаете по этому поводу?