pbicskei.classify

替代文本

角色名称

一个简化从 ansible_facts 中进行简单分类的角色。

分类 Proxmox p24.xlarge 表示一个 Proxmox 主机,其 ansible_processor_count 等于 24,并且 ansible_memtotal_mb 大于 32456。 分类 Raspberry a4.large 表示一个 Arm 主机,其 ansible_processor_count 等于 4,并且 ansible_memtotal_mb40968096 之间。 分类 Generic g4.nano 表示一个 Generic 主机,其 ansible_processor_count 等于 4,并且 ansible_memtotal_mb40968096 之间。

在 Proxmox 示例中,前导字母基于 ansible_kernel,如下所示:

  - name: Proxmox Hypervisor
    set_fact:
      type: p
      type_desc: "{{ ansible_distribution }} Proxmox"
    when: '"pve" in ansible_kernel'

这些映射基于两个变量生成:size_maptype_map,这两个变量都可以在 defaults/main.yml 中找到。

要求

任何 Ansible 本身或角色未涵盖的先决条件应在此提及,例如,如果角色使用了 EC2 模块,可能需要在此部分提到需要 boto 包。

角色变量

这里应描述此角色可设置的变量,包括 defaults/main.yml、vars/main.yml 中的变量,以及通过参数可以/应该设置的任何变量。这里还应提及从其他角色和/或全局范围(即 hostvars,group vars 等)读取的任何变量。

依赖关系

此处应列出在 Galaxy 上托管的其他角色,并包括有关可能需要设置的其他角色的参数或来自其他角色的变量的详细信息。

示例剧本

包括一个如何使用你的角色的示例(例如,作为参数传入的变量)对用户来说总是很有帮助:

使用默认表:

    - hosts: servers
      roles:
         - pbicskei.classify

使用自定义表:

    - hosts: servers
      roles:
         - pbicskei.classify
      vars:
        type_map:
          - { name: "Hypervisor", letter: "hv", kernel_match: "pve" }
          - { name: "Compute(ARM)", letter: "a", kernel_match: "raspi" }
          - { name: "Generic", letter: "g", kernel_match: "default" }

        size_map:
          - { name: "nanite", min: 1, max: 1024 }
          - { name: "microbe", min: 1024, max: 2048 }
          - { name: "insect", min: 2048, max: 4092 }
          - { name: "hamster", min: 4092, max: 8184 }
          - { name: "dog", min: 8184, max: 16368 }
          - { name: "horse", min: 16368, max: 32736 }
          - { name: "elephant", min: 32736, max: 65472 }
          - { name: "whale", min: 65472, max: 130944 }  

      roles:
        - pbicskei.classify

许可证

BSD

作者信息

角色作者可以在此选填联系方式或网站(不允许使用 HTML)。

关于项目

Role which classifies hosts

安装
ansible-galaxy install pbicskei.classify
许可证
Unknown
下载
265
拥有者