Doc Text:
|
In Red Hat OpenStack Platform 16.0, a Workflow service (mistral) task is in technology preview that allows you to implement password rotation by doing the following:
Execute the rotate-password workflow to generate new passwords and store them in the plan environment.
Redeploy your overcloud.
You can also obtain your passwords after you have changed them.
To implement password rotation, follow these steps:
NOTE: The workflow task modifies the default passwords. The task does not modify passwords that are specified in a user-provided environment file.
1. Execute the new workflow task to regenerate the passwords:
$ source ./stackrc
$ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud"}'
This command generates new passwords for all passwords except for BarbicanSimpleCryptoKek and KeystoneFernet* and KeystoneCredential*. There are special procedures to rotate these passwords.
It is also possible to specify specific passwords to be rotated. The following command rotates only the specified passwords.
$ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud", "password_list": ["BarbicanPassword", "SaharaPassword", "ManilaPassword"]}'
2. Redeploy your overcloud:
$ ./overcloud-deploy.sh
To retrieve the passwords, including the newly generated ones, follow these steps:
1. Run the following command:
$ openstack workflow execution create tripleo.plan_management.v1.get_passwords '{"container": "overcloud"}'
You should see output from the command, similar to the following:
+--------------------+---------------------------------------------+
| Field | Value |
+--------------------+---------------------------------------------+
| ID | edcf9103-e1a8-42f9-85c1-e505c055e0ed |
| Workflow ID | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a |
| Workflow name | tripleo.plan_management.v1.rotate_passwords |
| Workflow namespace | |
| Description | |
| Task Execution ID | <none> |
| Root Execution ID | <none> |
| State | RUNNING |
| State info | None |
| Created at | 2020-01-22 15:47:57 |
| Updated at | 2020-01-22 15:47:57 |
+--------------------+---------------------------------------------+
In the earlier example output, the value of State is RUNNING. State should eventually read SUCCESS.
2. Re-check the value of State:
$ openstack workflow execution show edcf9103-e1a8-42f9-85c1-e505c055e0ed
+--------------------+---------------------------------------------+
| Field | Value |
+--------------------+---------------------------------------------+
| ID | edcf9103-e1a8-42f9-85c1-e505c055e0ed |
| Workflow ID | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a |
| Workflow name | tripleo.plan_management.v1.rotate_passwords |
| Workflow namespace | |
| Description | |
| Task Execution ID | <none> |
| Root Execution ID | <none> |
| State | SUCCESS |
| State info | None |
| Created at | 2020-01-22 15:47:57 |
| Updated at | 2020-01-22 15:48:39 |
+--------------------+---------------------------------------------+
3. When the value of State is SUCCESS, you can retrieve passwords:
$ openstack workflow execution output show edcf9103-e1a8-42f9-85c1-e505c055e0ed
You should see output similar to the following:
{
"status": "SUCCESS",
"message": {
"AdminPassword": "FSn0sS1aAHp8YK2fU5niM3rxu",
"AdminToken": "dTP0Wdy7DtblG80M54r4a2yoC",
"AodhPassword": "fB5NQdRe37BaBVEWDHVuj4etk",
"BarbicanPassword": "rn7yk7KPafKw2PWN71MvXpnBt",
"BarbicanSimpleCryptoKek": "lrC3sGlV7-D7-V_PI4vbDfF1Ujm5OjnAVFcnihOpbCg=",
"CeilometerMeteringSecret": "DQ69HdlJobhnGWoBC0jM3drPF",
"CeilometerPassword": "qI6xOpofuiXZnG95iUe8Oxv5d",
"CephAdminKey": "AQDGVPpdAAAAABAAZMP56/VY+zCVcDT81+TOjg==",
"CephClientKey": "AQDGVPpdAAAAABAAanYtA0ggpcoCbS1nLeDN7w==",
"CephClusterFSID": "141a5ede-21b4-11ea-8132-52540031f76b",
"CephDashboardAdminPassword": "AQDGVPpdAAAAABAAKhsx630YKDhQrocS4o4KzA==",
"CephGrafanaAdminPassword": "AQDGVPpdAAAAABAAKBojG+CO72B0TdBRR0paEg==",
"CephManilaClientKey": "AQDGVPpdAAAAABAAA1TVHrTVCC8xQ4skG4+d5A=="
}
}
|