本文章是上一篇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快速复习的更多相关文章

  1. Unity 游戏框架搭建 2019 (十八~二十) 概率函数 & GameObject 显示、隐藏简化 & 第二章 小结与快速复习

    在笔者刚做项目的时候,遇到了一个需求.第一个项目是一个跑酷游戏,而跑酷游戏是需要一条一条跑道拼接成的.每个跑道的长度是固定的,而怪物的出现位置也是在跑道上固定好的.那么怪物出现的概率决定一部分关卡的难 ...

  2. 8. 利用Ansible快速构建MGR | 深入浅出MGR

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 1. 安装ansbile 2. 配置ansible 3. 建立ssh信任 4. 测试ansible 5. 使用ans ...

  3. Ansible 快速入门到放弃

    Ansible 快速入门到放弃 最是人间留不住,朱颜辞镜花辞树. 1-Ansible 简介 Ansible是一个配置管理和配置工具,它使用SSH 连接到服务器并运行配置好的任务,服务器上只需要开启ss ...

  4. Ansible快速上手

    ansible 是通过python 语言开发的自动化运维工具,可以实现批量系统设置.批量程序部署.批量执行命令等功能 下面是基于docker使用ansible测试示例,可以让新手快速上手使用 一.新建 ...

  5. Ansible 快速部署 Zabbix 4

    阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...

  6. Ansible 快速上手(转)

    add by zhj: 执行Ansible(发音时,重音在最前面)命令有两种方式,一种是ad-hoc形式,另一种是playbooks,对于软件开发者来说,一般使用ad-hoc就足够了.playbook ...

  7. ansible 快速入门

    安装 $ sudo apt-get install software-properties-common $ sudo apt-add-repository ppa:ansible/ansible $ ...

  8. 高可用Kubernetes集群-16. ansible快速部署

    说明 本文档指导采用二进制包的方式快速部署高可用kubernetes集群. 脚本托管:k8s-ansible(持续更新) 参考:高可用kubernetes集群 组件版本 组件 版本 备注 centos ...

  9. Ansible 快速上手

    Ansible优点: 充分利用现有设施.使用 Ansible 无需安装服务端和客户端,只要 SSH 即可.这意味着,任何一台装有 Ansible 的机器都可以成为强大的管理端.我觉得,这种去中心化的思 ...

  10. Ansible快速开始-指挥集群

    Ansible可以集中地控制多个节点,批量地执行ssh命令.由于其使用ssh进行操作,因此远端服务器除了安装openssh-server(一般服务器已经内置)之外,不需要安装额外的软件,因此使用非常简 ...

随机推荐

  1. 2022-06-15:薯队长最近在参加了一个活动,主办方提供了N个礼物以供挑选, 每个礼物有一个价值,范围在0 ~ 10^9之间, 薯队长可以从中挑选k个礼物。 返回:其中价值最接近的两件礼物之间相差

    2022-06-15:薯队长最近在参加了一个活动,主办方提供了N个礼物以供挑选, 每个礼物有一个价值,范围在0 ~ 10^9之间, 薯队长可以从中挑选k个礼物. 返回:其中价值最接近的两件礼物之间相差 ...

  2. Python获取当前时间、获取当月第一天、最后一天日期等方法

    ```python先导入包: import calendarimport datetimefrom datetime import timedelta获取今天日期: #返回datetime格式:eg: ...

  3. Strings must be encoded before hashing

    Strings must be encoded before hashing 当我们将字符串传递给 hash 算法时,会出现 "TypeError: Strings must be enco ...

  4. 安装Visio 2016与原本的office冲突的最终解决方案

    一. 下载office visio 2016 二. 开始安装 但是提示卸载原本的office 三. 网上找寻答案 于是按照这篇文章https://jingyan.baidu.com/article/1 ...

  5. kprobe_events shell模式使用教程

    kprobe_events shell模式使用教程 kprobe 使用前提 需要内核启用以下配置 CONFIG_KPROBES=y CONFIG_HAVE_KPROBES=y CONFIG_KPROB ...

  6. 让优惠再续一年!SHPC 老客专享

    最近云筏君经常收到自家小伙伴发来的关于产品活动的关心慰问,掐指一算,哦,原来是一年一度大家喜闻乐见的剁手节(学名"双十一")马上要来了! 大家都知道,云筏家的产品向来主打高性价比, ...

  7. Post-Exploitation Basics

    开发后基础知识 https://tryhackme.com/room/postexploit 使用 mimikatz.bloodhound.powerview 和 msfvenom 学习后期开发和维护 ...

  8. WPF中进度条同步实现

    WPF界面的编写 滑动条的显示 //前台界面的设计 <Border Grid.Row="1" Background="Transparent" Borde ...

  9. 用CSS实现带动画效果的单选框

    预览一下效果:http://39.105.101.122/myhtml/CSS/singlebox2/singleRadio.html 布局结构为: 1 <div class="rad ...

  10. 使用CosmosDB进行大规模数据的实时数据处理和流式传输

    目录 使用 Cosmos DB 进行大规模数据的实时数据处理和流式传输 背景介绍 文章目的 目标受众 技术原理及概念 基本概念解释 技术原理介绍 相关技术比较 实现步骤与流程 准备工作:环境配置与依赖 ...