网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
3. 在Ansible中解释基本术语或概念?
-
控制器计算机:控制器计算机用于配置服务器, 该服务器是受管理的。这是安装Ansible的机器。
-
清单:清单是一个初始化文件,
其中包含有关你管理的不同服务器的详细信息。
-
剧本:这是一个以YAML格式编写的代码文件。剧本包含需要自动化或执行的任务。
-
任务:每个任务代表一个需要执行的过程, 例如, 安装一个库。 模块:模块是可以执行的一组任务。 Ansible有100多个内置模块,
-
你也可以创建自定义模块。
-
角色:角色是用于组织剧本和其他文件的预定义方式, 以促进共享和重用部分配置。
-
播放:从头到尾执行的任务或执行剧本的过程称为播放。
-
事实:事实是全局变量, 用于存储有关系统的详细信息, 例如网络接口或操作系统。
-
处理程序:处理程序用于触发服务的状态, 例如重新启动或停止服务。
4. ansible中shell模块和command模块以及raw的区别
Ansible中有一个很重要的功能就是可以执行ad-hoc命令,表示即时的意思,或者说随意的意思。
ad-hoc命令中有两个模块:command, shell。
command模块不能调用shell指令,所以没有bash环境变量,也不能使用一些shell的操作方法,其他的和shell区别不大。
shell模块可以调用/bin/sh指令
raw模块: 与shell类似,但是是老版本Python的产物,比如客户端是路由器,没有Python,那就可以使用raw,其他情况下建议使用shell
5. 其他常用模块
setup: 收集远程主机的信息,比如架构信息,ip,时间,网卡,主机名,cpu
service: 服务模块
linefile: 文件的编辑模块
file: 对远程文件管理的模块
copy :用户将文件拷贝到目标主机上
fetch: 将远程的文件拷贝到本地
cron: 计划任务模块
script: 脚本模块,传输远程节点后执行本地脚本
6. ansible的功能
配置管理 Configuration(cfengine,chef,puppet)
部署发布 Deployment(Capistrano,Fabric)
命令行批量执行 Ad-Host Task(func)
多层次任务编排 Multi-Ter Orchestration(Juju,sort of
7. shell命令运行符号& ; &&区别
& 表示三个命令同时执行
; 表示不管前面执行有没有成功,后面都会执行
&& : 只有前面的执行成功了,后面才继续执行
8. shell中() [ ] [[ ]] 区别
( ) 和 ‘ ‘ 都 可 以 作 为 命 令 替 换 用 用 于 变 量 替 换 , 一 般 情 况 下 , v a r 与 () 和`` 都可以作为命令替换用 用于变量替换,一般情况下,var 与 ()和‘‘都可以作为命令替换用用于变量替换,一般情况下,var与{var} 并没有什么不一样,但是用 ${ } 会比较精确的界定变量名称的范围。
[root@itlaoxin163 ~]# echo $varA
[root@itlaoxin163 ~]# echo ${var}A
a1A
[root@itlaoxin163 ~]#
[]和(()) 做数学运算的
[root@itlaoxin163 ~]# a=5
[root@itlaoxin163 ~]# b=6
[root@itlaoxin163 ~]# c=7
[root@itlaoxin163 ~]# echo $((a+b*c))
47
[root@itlaoxin163 ~]# echo $[a+b*c]
47
总结:
字符串的比较可以用[[]]
算术比较可以用[]
算术运算可以用(())
shell命令输出可以用()和反单引号一样
快速替换{}
反单引号是命令替换
9. ∗ 和 * 和 ∗和# 的区别
$* 与 $@ 区别:
相同点:都是引用所有参数。
不同点:只有在双引号中体现出来
假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 “1 2 3”(传递了一个参数),而 “@” 等价于 “1” “2” “3”(传递了三个参数)
10. shell命令 && || 区别
&& 且 左边执行完了且成功,后边才能执行
|| 或 左边无论执行成功还是失败,后面的都会执行
11. shell中的比较?
[ = ] 比较两个字符串是否相当
-eq 整数的比较,a>b
== >< 字符串的比较
字符串(ASCII)比较必须使用>,<,==,!=
数字比较建议使用-gt,-lt-,eq这类,>也可以
12. Docker容器有几种状态
四种状态:运行、已暂停、重新启动、已退出。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!