Ansible快速复习
本文章是上一篇ansible自动化运维的快速复习以及项目上用到的一些命令,针对长时间未使用ansible,导致命令忘记的同学,帮助快速回忆。详细内容还是看上一章‘ansible自动化运维’。
查看版本
ansible --version
工作目录
/etc/ansible/ansibel.cfg && /root/.ansible.cfg && ./ansible.cfg ansible 工作目录优先级从小到大
ssh免密登录
A服务器:ssh-keygen -t rsa scp /root/.ssh/id_rsa.pub B服务器IP:/root/.ssh
B服务器:cat /root/.ssh.id_rsa.pub >> /root/.ssh/authorized_keys
ansible配置文件
remote_user 在被管理主机登录时的用户名ask_pass 是否输入ssh密码become 连接后是否在被管理主机上切换用户(通常为root)become_method 切换用户方式(通常为sudo)become_user 在被管理主机上切换到用户(通常为root)become_ask_pass 切换用户时是否输入密码,默认为false
ansible临时命令
ansible 主机或主机组 -m module [-a `module arguments`] [-i inventory]ansible -i myhosts webserver -m command -a "touch /tmp/ansible.txt"ansible -i myhosts webserver -m yum -a "name=zsh state=latest"
playbook格式
---
- name: playbookname
hosts: webservers
tasks:
- name: playname
模块:
参数:
参数:
- name: playname
模块:
参数:
参数:
- name: playname
模块:
参数:
参数:
playbook运行
ansible-playbook site.yml 运行playbook -vvvv提供四级详细信息ansible-playbook --syntax-check webserver.yml playbook语法验证ansible-playbook -C webserver.yml 模拟运行ansible-doc module_name 查看模块信息
vars定义变量
vars: 变量名: 变量 或 变量文件路径 ansible-playbook main.yml -e "package=apache" 命令行覆盖变量
创建角色
ansible-galaxy init apache 创建apache角色
tasks:包含角色要执行的主要任务列表
handlers:包含处理程序,可以由此角色使用,甚至可以在此角色之外的任何位置使用
defaults:角色默认的变量
vars:角色其他的变量
files:包含可以通过此角色部署的文件
templates:包含可以通过此角色部署的模板
meta:角色定义的一些元数据
其它命令
ansible-vault create filename 创建加密文件
ansible-vault create --vault-password-file=密码文件 test_vault2.yml 指定密码文件创建加密yml
ansible-vault view test_vault.yml 查看加密文件但不打开编辑
ansible-vault edit test_vault.yml 编辑加密文件
ansible-vault encrypt test.yml 加密已存在的文件 --output=test2.yml 加密时另存为文件
ansible-vault decrypt test1.yml 解密文件 --output=test3.yml 解密时另存为文件
ansible-vault rekey test.yml 更改加密文件密码 --new-vault-password-file=密码文件
ansible-playbook --vault-id 密码/密码文件 test.yml 运行加密的palybook
ansible-inventory --graph 查看主机清单
when inventory_hostname in groups['dev'] 常用when语句
ansible-galaxy list 查看已安装角色
ansible-galaxy install -r yml文件 安装角色
Ansible 主机名 -m setup | grep ***查看 使用setup模块查看自带变量
block: 定义要运行的主要任务rescue: 定义要在block子句中定义的任务失败时运行的任务always: 定义始终都独立运行的任务,不论block和rescue子句中定义的任务是成功还是失败
date +%s |sha256sum |base64 |head -c 20 ;echo 随机密码生成
Ansible快速复习的更多相关文章
- Unity 游戏框架搭建 2019 (十八~二十) 概率函数 & GameObject 显示、隐藏简化 & 第二章 小结与快速复习
在笔者刚做项目的时候,遇到了一个需求.第一个项目是一个跑酷游戏,而跑酷游戏是需要一条一条跑道拼接成的.每个跑道的长度是固定的,而怪物的出现位置也是在跑道上固定好的.那么怪物出现的概率决定一部分关卡的难 ...
- 8. 利用Ansible快速构建MGR | 深入浅出MGR
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 1. 安装ansbile 2. 配置ansible 3. 建立ssh信任 4. 测试ansible 5. 使用ans ...
- Ansible 快速入门到放弃
Ansible 快速入门到放弃 最是人间留不住,朱颜辞镜花辞树. 1-Ansible 简介 Ansible是一个配置管理和配置工具,它使用SSH 连接到服务器并运行配置好的任务,服务器上只需要开启ss ...
- Ansible快速上手
ansible 是通过python 语言开发的自动化运维工具,可以实现批量系统设置.批量程序部署.批量执行命令等功能 下面是基于docker使用ansible测试示例,可以让新手快速上手使用 一.新建 ...
- Ansible 快速部署 Zabbix 4
阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...
- Ansible 快速上手(转)
add by zhj: 执行Ansible(发音时,重音在最前面)命令有两种方式,一种是ad-hoc形式,另一种是playbooks,对于软件开发者来说,一般使用ad-hoc就足够了.playbook ...
- ansible 快速入门
安装 $ sudo apt-get install software-properties-common $ sudo apt-add-repository ppa:ansible/ansible $ ...
- 高可用Kubernetes集群-16. ansible快速部署
说明 本文档指导采用二进制包的方式快速部署高可用kubernetes集群. 脚本托管:k8s-ansible(持续更新) 参考:高可用kubernetes集群 组件版本 组件 版本 备注 centos ...
- Ansible 快速上手
Ansible优点: 充分利用现有设施.使用 Ansible 无需安装服务端和客户端,只要 SSH 即可.这意味着,任何一台装有 Ansible 的机器都可以成为强大的管理端.我觉得,这种去中心化的思 ...
- Ansible快速开始-指挥集群
Ansible可以集中地控制多个节点,批量地执行ssh命令.由于其使用ssh进行操作,因此远端服务器除了安装openssh-server(一般服务器已经内置)之外,不需要安装额外的软件,因此使用非常简 ...
随机推荐
- 2022-02-02:最接近的二叉搜索树值 II。 给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的 k 个值。 注意: 给定的目标值 ta
2022-02-02:最接近的二叉搜索树值 II. 给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的 k 个值. 注意: 给定的目标值 tar ...
- 创建对象create()、批量创建bulk_create()、创建或更新update_or_create()、更新对象update()、更新或创建update_or_create()、删除对象delete()使用filter过滤、判断是否存在exists()、统计个数count()、聚合aggregate()
创建对象create().批量创建bulk_create().创建或更新update_or_create().更新对象update().更新或创建update_or_create().删除对象dele ...
- Node.js出现‘Cannot find module init’ 解决方法
1. 首先查看当前根目录是否有node_module文件夹,如果有,请删除 2. 输入 npm clean cache 3. 再次输入 node init -y 大功告成
- 【Python笔记】第一章Python基本语法
嗨你好,我是AllenMi, 这是我学习北京理工大学的<Python语言程序设计>第一张笔记. 写笔记的目的一方面在于记录自己一步一步学习Python的内容, 另一方面也希望能够帮助到他人 ...
- 程序员的 Windows 工具箱「GitHub 热点速览」
如何精简 Windows 并快速配置开发环境呢?本周特推的 winutil 是一个程序员的 Windows 工具箱,它提供了开发工具的一键安装以及减少系统垃圾的功能,一切为了简洁.高效.同样高效的还有 ...
- Python3 解决pip报ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:598)
ERROR: Could not install packages due to an EnvironmentError: HTTPSConnectionPool(host='files.python ...
- shell脚本中特殊筛选文件
问题描述:在写shell中,总会遇到一些各式各样筛选文件的需求,整理了一些特殊情况 1.查找目标文件下大于100Mb的文件 find $target_dir -type f -size +70M 2. ...
- kafka学习笔记03消息队列的两种模式
①点对点模式 该种模式就是消费者会自动消费消息,消息收到之后会向消息队列进行确认收到消息,然后将该数据进行删除. ②发布/订阅模式 可以有多个的topic,topic在英语中有主题的意思, ...
- Python随机数据生成——Faker的使用
安装Faker pip install faker 导入模块及基本配置 # 导入Faker from faker import Faker # 初始化,设置locale为中文:默认是英文 fake = ...
- 浅析华为云Astro的5大关键能力技术
摘要:本文以技术方案视角,对华为云Astro低代码平台的一些核心功能进行简要介绍. 背景介绍 低代码开发基于可视化开发的概念,结合了云原生和多终端体验技术,它可以在大多数业务场景中,帮助企业显著的提升 ...