哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章!
首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 《百战RHCE》文章,是基于我自己的学习经验浓缩而来的,保证简洁,方便理解!
而作为一名大学生,我想通过坚持的高水平文章编写带给我自己本身经验的不断进步,同时也希望让更多的Linux新手能接触到更加系统的文章学习。本次《百战RHCE》,会由浅入深,从最基本的命令行,到编写非常复杂的Ansible 自动化脚本
因为本人和你一样也是学习者,所以文章中出现的错误,还望多多指出。
还有注意了哦,我所用的系统为Centos7,如果你还没下载的话,可以在到我的第一章节,那里有下载教材和镜像地址哦~
最后最后我在说最后一句话,引用下我们老师的话:“不要尝试背下所有指令,多记笔记!多敲命令!”
首先说明,使用临时命令主要用于快速执行单个Ansible任务,这个临时命令不需要编写playo book 就可以运行。
目录
一.临时命令格式
首先讲解格式:
Ansible 主机名(主机组/嵌套组) -m 命令模块 -a '模块补充信息'
命令模块因为涉及到大量后面的教学所以这里我们就讲两个模块,带给你最直观的使用。
command : 使用这个模块后, 在 模块补充信息当中就输入我们日常在操作系统的使用命令即可
shell:和command 命令一样,唯一的不同是shell可以调用系统变量(能使用command就不要用shell)
ping:检查受控主机是否连接成功同时检查受控主机上运行的基于python模块
这里我们首先来看第一个红括号,这里我们使用 ansible all -m ping 对所有受控主机使用了 ping 模块的命令。发现所有受空主机一切正常。
注意看第二个红色括号,这里我们需要引入一个小概念,大部分模块都是幂等的,可以自动进行更改跟踪。他们可以测试系统的状态,在这些状态已经处于正确的状态下不执行任何操作。(command,shell不会,即使状态正常,依旧执行操作,所以我们后面学会大部分模块操作后,要学会不使用command,shell),这里因为主机已经可以正常运行基于python的模块,所以不发生改变,结果为false
这里先看第一个红色括号,这里我们使用 ansible all -m command -a "hostname",在所有受控主机上执行hostname命令操作,结果和我在centos0主机上使用hostname命令结果一样。
这里我们分别使用 command 和shell 模块来执行内建的Bash命令set,command模块因为无法访问shell环境变量所以会失败,而shell模块可以,所以可以正常执行
好了好了朋友们我们今天的内容到这就结束了,今天的内容到这里就结束了,今天的学习内容很多也很难需要多看很多遍才能学会,如果有啥不会的朋友记得论坛里面提问哈~
如果朋友你感觉文章的内容对你有帮助,可以点赞,关注文章和专栏以及关注我哈,嘿嘿嘿我会定期更新文章的,谢谢朋友你的支持哈