type
status
date
slug
summary
tags
category
icon
password
主机模式(Host Pattern)是 Ansible 中用于选择和定义要操作的受管主机的方式。通过主机模式,您可以指定哪些主机将被包含在执行任务或 Playbook 的范围内。主机模式的灵活性使得用户能够根据需要选择特定的主机、主机组或使用通配符来匹配多个主机。

主机模式的关键点

  1. 主机名:可以使用具体的主机名来直接选择特定的主机。
  1. 主机组:可以通过定义的主机组(在 Inventory 文件中)来选择一组主机。
  1. 通配符:使用 ? 等通配符符号可以匹配多个主机,提供了更大的灵活性。
  1. 逻辑组合:可以使用逗号(,)来选择多个主机,或使用感叹号(!)来排除特定主机。

示例

  • 选择特定主机
    • 选择主机组
      • 使用通配符
        • 选择多个主机
          • 排除特定主机

            结论

            主机模式是 Ansible 中非常重要的一个概念,能够帮助用户灵活地定义和管理自动化任务的执行对象。通过有效使用主机模式,可以提高运维和自动化管理的效率。
             

            练习:

            Ansible 实操练习:主机清单与 Playbook 管理

            在这篇实操练习中,我们将使用 Ansible 管理多个主机,展示如何设置项目环境、配置主机清单文件以及编写和运行 Playbook 来执行任务。

            一、环境准备

            1. 启动项目

            首先,启动一个新的项目并进入项目目录:

            2. 查看目录内容

            使用以下命令查看当前目录下的文件:
            您应该会看到如下文件:
            • ansible.cfg:Ansible 的配置文件
            • inventory1:主机清单文件 1
            • inventory2:主机清单文件 2
            • playbook.yml:Ansible 的 Playbook 文件

            二、主机清单文件

            1. inventory1 文件

            inventory1 文件中,定义了多个服务器及其分组。下面是 inventory1 的内容:

            说明

            • 该文件定义了不同的服务器及其分组,如 [web][db] 等。
            • 可以通过分组管理主机,方便后续的任务执行。

            2. inventory2 文件

            inventory2 文件中,定义了另一组主机清单,示例如下:

            说明

            • 该文件同样定义了分组,[europe:children] 使得 Londonberlin 成为其子组。

            三、编写 Playbook

            playbook.yml 文件中编写以下内容,主要用于解析主机模式:

            4. 修改主机目标

            在练习过程中,您可以尝试不同的主机匹配模式。以下是一些示例及其解释:
            1. 特定主机
                • 选择单个特定主机。
            1. 所有主机
                • 选择所有在主机清单中定义的主机。
            1. 使用通配符选择主机
                • 匹配所有以 example.com 结尾的主机。
            1. 排除特定主机
                • 匹配所有以 example.com 结尾的主机,但排除所有以 .lab.example.com 结尾的主机。
            1. 组合多个主机
                • 选择多个特定的主机。
            1. 使用更广泛的通配符
                • 匹配所有以 172.25. 开头的主机。
            1. 以特定字母开头的主机
                • 匹配所有以 s 开头的主机。
            1. 组合环境和主机
                • 匹配 prod 环境及所有以 172 开头或包含 .lab 的主机。
            1. 组合组名
                • 匹配 db 组和 london 组中的主机。

            5. 修改 Playbook

            您需要将 playbook.yml 中的 hosts 值修改为 London 组中的所有服务器,内容如下:

            四、运行 Playbook

            运行修改后的 Playbook:

            运行结果

            • 此命令将执行 Playbook 中定义的任务,显示匹配到的主机。

            五、结束项目

            完成所有步骤后,结束项目:

            总结

            通过本实操练习,您成功设置了 Ansible 项目,创建了主机清单,并编写了 Playbook 来解析主机模式。您也学习了如何使用不同的匹配模式选择目标主机。这为后续更复杂的自动化任务打下了基础。
             
            相关文章
            RHCE 9版本考试资料
            Lazy loaded image
            40.总复习-4 实验手册:galaxy角色配置与部署
            Lazy loaded image
            39.总复习-3 实验手册:配置 RHEL 系统角色和用户管理
            Lazy loaded image
            38.总复习-2 实验手册:Ansible Web 服务器配置和测试
            Lazy loaded image
            37.总复习-1 实验手册:配置和运行Ansible脚本
            Lazy loaded image
            36:总复习
            Lazy loaded image
            19:管理复杂的Play和Playbook-2 包含和导入文件17:将文件部署到受管主机-3 开放实验
            Loading...
            みなみ
            みなみ
            一个普通的干饭人🍚
            最新发布
            02-生成AIパスポート試験対策:第2章「生成AI」
            2025-2-1
            01-生成AIパスポート試験対策:第1章「人口知能」
            2025-2-1
            究極のAWS認定 AI 実践者 AIF-C01 - 学習メモ
            2025-1-27
            不要再傻傻的直接买NISA啦
            2025-1-27
            Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!
            2025-1-24
            529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
            2025-1-22
            公告
            🎉欢迎访问我的博客🎉
            - 感谢您的支持 --
            本站点于2024/09/01建立
            👏主要分享IT相关主题👏
            系统管理:
            Redhat…
            容器和编排:
            Kubernetes、Openshift…
            云计算:
            AWS、IBM…
            AI入门
            以及技术笔记和考证经验
            定期更新,欢迎互动。
            感谢访问!
            快速浏览相关标签