adlytaibi.sgws_config

sgws_config

此角色和模块用于配置 NetApp StorageGRID。可以执行以下任务:

网格任务:

  • 授权以获取网格令牌
  • 为 API 管理安装签名的 SSL 证书
  • 为存储管理安装签名的 SSL 证书
  • 设置身份提供者
  • 创建本地或联合管理组
  • 创建本地管理员用户
  • 创建新租户

租户任务:

  • 授权以获取租户令牌(使用新创建的或现有的账户 ID)
  • 为租户设置身份提供者
  • 创建本地或联合组
  • 为租户创建本地用户
  • 为租户生成 S3 密钥
  • 为租户创建桶

注意:

  • 设置身份提供者是创建联合组的前提条件。
  • 可以在一次运行中创建联合组和本地组。
  • 联合组中的本地用户将被忽略。

要求

角色变量

可以在 roles/sgws_config/vars/main.yml 中设置该角色的变量。密码和凭证使用 ansible-vault进行保护,或 参考下文。其他变量在 roles/sgws_config/vars/ 下,以对应的任务为准。

安装签名的 API 管理 SSL 证书需要三个文件 mgmt_cert.pemmgmt_cert.keychain.pem 存在于 roles/sgws_config/files 中。存储 API SSL 证书文件为 stor_cert.pemstor_cert.keychain.pem。我添加了助手脚本 参考下文

通过注释或取消注释相应的行来开启或关闭 roles/adlytaibi.sgws_config/tasks/main.yml 中的任务。

由于在使用某些任务之前需要执行前提工作,因此默认情况下注释掉了 SSL 证书和身份提供者的任务。

依赖关系

没有依赖关系。

如何操作

如果您愿意,可以 观看视频(适用于 1.1.x 版本)。

示例剧本

# ansible-playbook --vault-password-file ~/.passwd ~/.ansible/roles/adlytaibi.sgws_config/sgws_config.yml

PLAY [sgws] *********************************************************************************************************

TASK [adlytaibi.sgws_config : 获取网格授权令牌] *********************************************************
ok: [localhost]

任务(同样以此类推)...

PLAY RECAP **********************************************************************************************************
localhost                  : ok=53   changed=1    unreachable=0    failed=0    skipped=13   rescued=0    ignored=0

使用 ansible-vault

随意进行个性化修改,此处仅为启动指引。 文件 ~/.passwd 包含 vault 密码。

# echo -n NetApp123 > ~/.passwd

使用上述 vault 密码,您可以加密任何值并集成到 yml 文件中。

# echo -n netapp01|ansible-vault encrypt --vault-password-file ~/.passwd > vault.txt
# cat vault.txt
$ANSIBLE_VAULT;1.1;AES256
62383435316236346137383364373438623661653665363939616231376464643762333364663733
3430313661363761386536373135663733323764666561630a383736363562363864393037646531
61383566333332356339376561336239396634626433666434306566386134343031653339333531
3964356263643134610a346138616566643533346365326662343762346432386563393331306239
3835

如果您需要验证加密的值:

# cat vault.txt|ansible-vault decrypt --vault-password-file ~/.passwd
解密成功
netapp01

助手脚本

位于 ~/.ansible/roles/adlytaibi.sgws_config/files/scripts 的脚本目录包含 mgmt_ssl.cnf 和 stor_ssl.cnf 文件以方便使用,请根据您的网格管理界面和网关进行修改。 切换到存放 SSL 密钥的目录。执行两个脚本,这将创建私钥和 CSR。

# cd ~/.ansible/roles/adlytaibi.sgws_config/files
# scripts/mgmt_sign
# scripts/stor_sign

签署 SSL 证书后,请确保将其重命名为 mgmt_cert.pem 和 stor_cert.pem,并将它们与链包 certnew.p7b 一起复制到 ~/.ansible/roles/adlytaibi.sgws_config/files 目录。您现在可以执行 bundle 脚本,将链从 p7b 转换为 pem。

# scripts/bundle

这些文件将被 Ansible 使用。

# chain.pem      CA 捆绑包
# mgmt_cert.pem  API 管理用签名证书
# mgmt_cert.key  上述证书的私钥
# stor_cert.pem  存储管理用签名证书
# stor_cert.key  上述证书的私钥

许可证

GPL

作者信息

  • Adly Taibi
关于项目

StorageGRID configuration

安装
ansible-galaxy install adlytaibi.sgws_config
许可证
gpl-3.0
下载
90
拥有者