Red Hat Training

A Red Hat training course is available for RHEL 8

37.6. 使用 Ansible 添加新的本地 IdM ID 范围

在某些情况下,您可能需要创建新的 Identity Management (IdM) ID 范围以及原始的 ID 范围;例如,当副本退出 ID 且原始 IdM ID 范围相同时,原始 IdM ID 范围会被处理。以下示例演示了如何使用 Ansible playbook 创建新 IdM ID 范围。

注意

添加新 IdM ID 范围不会自动创建新的 DNA ID 范围。您需要根据需要手动分配新的 DNA ID 范围。有关如何进行此操作的更多信息,请参阅 手动分配 DNA ID 范围

先决条件

  • 您需要知道 IdM admin 密码。
  • 您已配置了 Ansible 控制节点以满足以下要求:

    • 您使用 Ansible 版本 2.14 或更高版本。
    • 您已在 Ansible 控制器上安装了 ansible-freeipa 软件包。
    • 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件
    • 示例假定 secret.yml Ansible 库存储了 ipaadmin_password

流程

  1. 进入您的 ~/MyPlaybooks/ 目录:

    $ cd ~/MyPlaybooks/
  2. 使用以下内容创建 idrange-present.yml playbook:

    ---
    - name: Playbook to manage idrange
      hosts: ipaserver
      become: no
    
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      - name: Ensure local idrange is present
        ipaidrange:
          ipaadmin_password: "{{ ipaadmin_password }}"
          name: new_id_range
          base_id: 12000000
          range_size: 200000
          rid_base: 1000000
          secondary_rid_base: 200000000
  3. 保存该文件。
  4. 运行 Ansible playbook。指定 playbook 文件、存储密码的文件保护 secret.yml 文件以及清单文件:

    $ ansible-playbook --vault-password-file=password_file -v -i inventory idrange-present.yml
  5. 可选:立即更新 ID 范围:

    1. 清除系统安全服务守护进程(SSSD)缓存:

      # sss_cache -E
    2. 重启 SSSD 守护进程:

      # systemctl restart sssd
    注意

    如果您没有清除 SSSD 缓存并重启服务,SSSD 仅在更新域列表和其他存储在 IdM 服务器中的配置数据时检测到新的 ID 范围。

验证步骤

  • 您可以使用 ipa idrange-find 命令检查新范围是否设置正确:
# ipa idrange-find
----------------
2 ranges matched
----------------
  Range name: IDM.EXAMPLE.COM_id_range
  First Posix ID of the range: 882200000
  Number of IDs in the range: 200000
  Range type: local domain range

  Range name: IDM.EXAMPLE.COM_new_id_range
  First Posix ID of the range: 12000000
  Number of IDs in the range: 200000
  Range type: local domain range
----------------------------
Number of entries returned 2
----------------------------