本篇内容介绍了“Ansible模块有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
authorized_key
SSH 是 Ansible 的核心,至少对于除了 Windows 以外的几乎所有其他功能都是如此。在 Ansible 中高效使用 SSH 的关键(没有双关语)是……密钥!顺便提一下,你可以用 SSH 密钥为安全性做很多非常酷的事情。值得仔细阅读 sshd 手册页中的 “authorized_keys” 部分。如果你需要精细的用户访问控制,管理 SSH 密钥可能会变得很费力,尽管我可以用接下来的两个我最爱的模块中的任何一个,但我更喜欢使用 authorized_key 这个模块,因为它可以通过变量轻松管理。
file
除了显而易见的将文件放置在某个地方的功能外,file 模块还可以设置所有权和权限。我想说的是,这样一个模块就能带来很多的好处。很大一部分安全问题也与设置权限有关,所以 file 模块和 authorized_key 可以很好地配合在一起使用。
template
操作文件内容的方法太多了,我看到很多人都在使用 lineinfile。我自己也用它做过小任务。但是,template 模块就清晰多了,因为你维护了整个文件的上下文。我更喜欢以任何人都可以轻松理解的方式编写 Ansible 的内容 —— 对我而言,这意味着容易理解正在发生的事情。template 的使用意味着能够看到你正在放置内容的整个文件、全部你正在改变的变量。
uri
当前发布版中的许多模块利用 Ansible 作为编排工具。它们与另一个服务对话,而不是做一些具体的事情,比如把一个文件放到一个地方。通常,这种对话也是通过 HTTP 进行的。在许多这样的模块出现之前,你可以直接使用 uri 模块对 API 进行编程。它是一个强大的访问工具,可以使你能够做很多事情。在我的 Ansible 虚拟棚子里,我不会少了它。
shell
这是我们工具包里的王牌、瑞士军 刀。如果你为如何控制其他东西而非常苦恼,别说,说就是 shell。有人会说,我们这样说是让 Ansible 成为了 Bash 脚本 —— 但是,我想说的是,这还是有点好处的,因为可以在你的剧本和角色中使用 name 参数记录下每一步。对我来说,这就像一个很大的奖励一样。早在我还在做咨询的时候,我曾经帮助一个数据库管理员(DBA)迁移到 Ansible。这位 DBA 并不喜欢改变,对改变工作方法也是推三阻四。于是,为了简化迁移到 Ansible 方式,我们在 Ansible 中使用 shell 模块调用了一些现有的数据库管理 脚本。并在任务中附带了翔实的 name 声明。
通过这五个模块,你可以实现很多事情。是的,为完成特定任务而设计的模块会让你的生活更加轻松。但是,借助简单的工程设计,你几乎可以事半功倍。
“Ansible模块有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。