ansible-update-os:使用Ansible更新CentOSRHEL

  • f9_365174
    了解作者
  • 62.7KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-16 01:12
    上传日期
更新CentOS / RHEL 版权所有(C)2019 Dmitriy Prigoda 此脚本是免费软件:允许每个人复制和分发自由软件基金会发布的GNU通用公共许可证的逐字副本,该许可证的第3版,但不允许更改。 地点: CentOS的8 Ansible = 2.9.5 УстановкаобновленийCentOS / RHELспомощьюAnsible Содержание Основнаяразработкаведетсяпоадресу: Поданнойссылкенаходитсяпоследняяверсия,дляполучениядоступанеобходимосвязатьсясавторо。 playтобыскачатьпоследнююверсиюнеобходимовыполнитьклиентескоторогобудетзапуне
ansible-update-os-master.zip
  • ansible-update-os-master
  • includes
  • update-rhel7.yml
    1.1KB
  • update-rhel8.yml
    1.1KB
  • images
  • reboot-time.PNG
    6KB
  • check-update.PNG
    41.8KB
  • inventory
  • hosts.example
    1.1KB
  • pre-config-ssh.yml
    2.3KB
  • playbook.yml
    2.4KB
  • ansible.cfg
    1.5KB
  • LICENSE
    34.3KB
  • README.md
    7.9KB
  • .gitignore
    350B
内容介绍
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) # Update CentOS/RHEL Copyright (C) 2019 Dmitriy Prigoda <deamon.none@gmail.com> This script is free software: Everyone is permitted to copy and distribute verbatim copies of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, but changing it is not allowed. Протестировано на: - CentOS 8 - Ansible = 2.9.5 Установка обновлений CentOS/RHEL с помощью Ansible -------------------------------------------------- ### Содержание - [Update CentOS/RHEL](#update-centosrhel) - [Установка обновлений CentOS/RHEL с помощью Ansible](#установка-обновлений-centosrhel-с-помощью-ansible) - [Содержание](#содержание) - [Запуск Playbook'а](#запуск-playbookа) - [Ключи](#ключи) - [Дополнительные переменные](#дополнительные-переменные) - [Теги](#теги) - [Documentations ANSIBLE:](#documentations-ansible) Основная разработка ведется по адресу: * https://github.com/D34m0nN0n3/ansible-update-os/ По данной ссылке находится последняя версия, для получения доступа необходимо связаться с автором. Чтобы скачать последнюю версию необходимо выполнить команду на клиенте с которого будет запущен данный playbook: ``` > cd ~ > git clone https://github.com/D34m0nN0n3/ansible-update-os.git ``` ### Запуск Playbook'а Для запуска данного сценария необходимо: 1. Убедится что есть сетевой доступ с управляющего сервера до управляемых узлов по 22 порту (ssh). Подробно описано в документации: `Connection methods` и `Ansible passing sudo`. 2. В наличии учетной записи с правами администратора из под которой будет производится подключение. 3. Заполненный файл `inventory` с перечисленными управляемыми узлами и переменными. *Пример файла: [inventory/hosts.example](inventory/hosts.example)* Пример запуска с указанием пароля пользователя под которым подключаемся к управляемым хостам: ``` bash # Go to the project folder: > cd ~/ansible-update-os # Run playbook: > ansible-playbook -i inventory/hosts playbooks/pre-config-ssh.yml --user=<local_user_name> --ask-pass --become > ansible-playbook -i inventory/hosts playbook.yml ``` ##### Ключи Key |INFO --------------------|------------------------------------------------------------------ -i |Необходимо указать путь к файлу `inventory` -v or -vv |Повышает информативность вывода, нужен для анализа ошибок --become |Предоставляет повышение полномочий через `sudo` УЗ при подключение --ask-pass |Запрашивает пароль УЗ под которой будет выполнен сценарий --ask-become-pass |Запрашивает пароль УЗ при запуске `sudo` *При запуске и в момент исполнения формируется файл с логами для анализа ошибок [logs/ansible-log.log](logs/ansible-log.log). Размер файла зависит от уровня подробного вызова и количества запусков сценария.* ### Дополнительные переменные Переменные учета ресурсов (inventory variables) - это те переменные, которые Ansible получает посредством определенной инвентаризации. Они могут быть определены как переменные, которые являются особыми для `host_vars` по отношению к индивидуальным хостам или применяться к целой группе как `group_vars`. Эти переменные могут записываться напрямую в имеющийся файл описи, доставляться определенными динамическими встраиваемыми модулями инвентаризации или загружаться из каталогов `host_vars/<host>` или `group_vars/<group>`. Для данного проекта зарезервированы следующие переменные приведенные в таблице ниже: Var |INFO ----------------------|------------------------------------------------------------------------------------ show_updates |Выводит список доступных обновлений. *Значение Булево*. exclude |Список исключений, записывается как массив разделенный запятыми. *Значения строчные*. security |ЭКСПЕРИМЕНТАЛЬНЫЙ! Установка только обновлений безопасности. *Значение Булево*. min_release_7_version |Если переменная задана, то обновления будут установлены только на узлы указаной версии и выше. Например: `min_release_7_version='7.5'` *Значение строчное*. need_reboot |Перезагрузка, в случае если после установки пакета она потребовалась. *Значение Булево*. **ВАЖНО! Если перезагрузка запланирована, но установленные обновления этого не требуют, то система не будет перезагружена.** force_reboot |Перезагрузка обязательна. *Значение Булево*. *Перезагрузка осуществляется последовательно для всех узлов!* Пример отображения списка доступных обновлений (show_updates): ![Screenshot](images/check-update.PNG) Пример отображения информации о времени перезагрузки (need_reboot и force_reboot): ![Screenshot](images/reboot-time.PNG) ### Теги Теги нужны для того, чтобы иметь возможность исполнить только какую-то часть плейбука или ее пропустить для выполнения. Tag |INFO --------------|-------------------------------------- check_update |Проверка наличия доступных обновлений. updates |Установка обновлений. reboot |Перезагрузка системы. ## Documentations ANSIBLE: - [Ansible installation guide](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html) - [Ansible Documentations](https://docs.ansible.com/) - [Ansible tags](https://docs.ansible.com/ansible/latest/user_guide/playbooks_tags.html) - [Connection methods](https://docs.ansible.com/ansible/latest/user_guide/connection_details.html) - [Ansible passing sudo](https://8gwifi.org/docs/ansible-sudo-ssh-password.jsp) - [Manage
评论
    相关推荐
    • docker-centos-jenkins
      码头工人-centos-詹金斯 ...或者,如果您安装了GNU Make ,您可以运行以下命令... $ make 您还可以指定自定义 docker 用户名,如下所示: $ make DOCKER_USER=internavenue 容器创建/运行 Nginx Web 服
    • CentOS-RedHat:IRCD + GNUWorld + CService-Web
      CentOS-RedHat IRCD + GNUWorld + CService-Web 测试:CentOS 8.1-131911.0.8.el8.x86_64 #1准备系统:前提条件是第一步! #2安装ircu2:ircu2第二步! #3安装GNUWorld:GNUWorld第三步! #4安装CService-...
    • gnuplot-4.4.0.tar.gz
      如果你用的是centos minimal版本,需要安装x11窗口才能实时看到产生的图, #解压 tar -xvf gnuplot-5.2.0.tar.gz #经典三步 ./configure --prefix=/opt/gnuplot make;make install #添加环境变量 自己在/etc/profile...
    • REH和Centos防火墙
      详细叙述linux下的iptables的配置,端口限制转发等
    • linux centos stress离线安装
      linux centos stress离线安装 ,stress-1.0.4.tar,包含附件的,Linux性能压测, 包含sar 命令
    • arm-gnu-toolchain
      arm-gnu-toolchain-4.8.4.371-linux.any.x86_64.tar.gz 在CENTOS 6.5 64 下测试 ATMEL ST M3 M4 都OK,生成BIN要比KEIL大点
    • centos网卡驱动
      此资源是centos系统的网卡驱动,因为在网上本人未发现有此类软件包,想尽办法找到后特来分享,希望对大家会有帮助!
    • 快速入门CentOS7
      本课程以Linux运维为背景,以零基础Linux学习者为对象,...课程分为四章节,centos7安装,centos7管理,centos7安全,centos7服务。 每一讲精心设计,环环相扣,帮助你快速入门centos7这个最流行的企业Linux发行版本。
    • CentOS读写ntfs内核
      本人将ntfs-3g作了很小的修改,编译安装后可共直接读写ntfs分区,不用修改fstab,也不用手动挂载,方便使用。
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档