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.pem
、mgmt_cert.key
和 chain.pem
存在于 roles/sgws_config/files
中。存储 API SSL 证书文件为 stor_cert.pem
、stor_cert.key
和 chain.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
ansible-galaxy install adlytaibi.sgws_config