VxRail. Как запросить или обновить учетную запись управления в VxRail версий 7.0.x и 8.0.x
Summary: В этой статье объясняется, как запрашивать и обновлять сохраненные учетные данные VxRail в VxRail Manager версий 7.0.x и 8.0.x.
Instructions
Начиная с VxRail версии 7.0.010, учетные записи управления хостами vCenter и ESXi хранятся в микрослужбе защищенного хранилища.
Метод запроса или обновления учетной записи управления изменился по сравнению с предыдущими версиями.
Представленные ниже пароли имеют кодировку base64 и не представлены в виде обычного текста.
Необходимые условия
- Подключитесь по SSH к VxRail Manager в качестве администратора mystic
- Переключитесь на пользователя root.
su -
Запрос существующих сохраненных учетных данных:
Запрос учетной записи управления vCenter:
Команда для выполнения:
curl --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -X GET 'http://localhost/rest/vxm/internal/lockbox/v1/credentials?lockbox_name=SYSTEM&credential_names=management_account_vc'|jq
Пример результата:
{
"items": [
{
"connection_type": "OK",
"credential_name": "management_account_vc",
"is_found": true,
"password": "xxxxxxxxxxx",
"username": "management@localos"
}
]
}
В данном примере имя пользователя учетной записи управления vCenter — management@localos, а закодированный пароль — xxxxxxxxxxx.
Чтобы расшифровать пароль, используйте следующую команду.
echo -n 'xxxxxxxxxxx' | base64 -d
Запросите учетную запись управления хостом ESXi:
1. Чтобы получить доступ к учетной записи, необходимо знать сервисный код PowerEdge (ST) — семизначный серийный номер, например AB1CDE2 — для доступа к конкретным учетным данным.
Замените все разделы, в которых есть <host-SN> с сервисным кодом.
Например, для просмотра серийных номеров и имени узла можно использовать следующий раздел подключаемого модуля VxRail:
2. Используйте следующую команду для сбора учетных данных хоста VxRail, заменив <host-SN> с сервисным кодом сервера.
curl --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -X GET 'http://localhost/rest/vxm/internal/lockbox/v1/credentials?lockbox_name=SYSTEM&credential_names=management_account_esxi__<host-SN>'| jq
Использование сервисного кода из предыдущего примера:
curl --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -X GET 'http://localhost/rest/vxm/internal/lockbox/v1/credentials?lockbox_name=SYSTEM&credential_names=management_account_esxi__AB1CDE2'| jq
Выпуск:
{
"items": [
{
"credential_name": "management_account_esxi__V015001",
"is_found": true,
"password": "XXXXXXXX",
"username": "management"
}
]
}
В данном примере имя пользователя учетной записи управления хостом ESXi — management. Закодированный пароль — XXXXXXXX.
Для декодирования используйте следующую команду:
echo -n 'XXXXXXXX' | base64 -d
Обновление сохраненных учетных данных:
Обновите учетную запись управления vCenter:
1. Остановка vmware-marvin служба:
systemctl stop vmware-marvin
2. Чтобы закодировать пароль, выполните следующую команду, подставив свой пароль:
echo -n 'Password123!' | base64 UGFzc3dvcmQxMjMh
Параметр -n необходим для того, чтобы избежать вставки символа новой строки; В противном случае этот пароль будет отличаться от задуманного.
3. Запросите имя пользователя текущей учетной записи управления vCenter. Если имя пользователя учетной записи управления vCenter неизвестно, см. раздел выше «Запрос учетной записи управления vCenter», чтобы запросить имя пользователя.
4. Чтобы обновить учетную запись управления vCenter, выполните следующую команду и замените VC_MGMT_USER_NAME and ENCODED_PASSWD_FROM_STEP_1.
curl -X PUT --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -H "accept: application/json" -H "Content-Type: application/json" -d '{"lockbox_name":"SYSTEM","credentials":[{"credential_name":"management_account_vc","username":"VC_MGMT_USER_NAME","password":"ENCODED_PASSWD_FROM_STEP_1"}]}' 'http://localhost/rest/vxm/internal/lockbox/v1/credentials'
Пример.
curl -X PUT --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -H "accept: application/json" -H "Content-Type: application/json" -d '{"lockbox_name":"SYSTEM","credentials":[{"credential_name":"management_account_vc","username":"vxrm@localos","password":"UGFzc3dvcmQxMjMh"}]}' 'http://localhost/rest/vxm/internal/lockbox/v1/credentials'
5. Обновите пароль учетной записи управления из vCenter, перейдите вменю «Администраторы>>» в vSphere> HamburgerПользователи и группы>Отфильтруйте по домену, в котором существует учетная запись управления vCenter, измените учетную запись и задайте новый пароль в открытом виде.
6. Запуск vmware-marvin служба:
systemctl start vmware-marvin
Обновление учетной записи управления хостом ESXi
1. Чтобы закодировать пароль, выполните команду, как показано в примере ниже:
Пример:
echo -n 'Password123!' | base64 UGFzc3dvcmQxMjMh
2. Необходимо знать серийный номер (SN) или сервисный код хоста ESXi.
3. Необходимо знать имя пользователя учетной записи управления хостом ESXi (примечание. Пользователи учетной записи управления и серийные номера перечислены в выходном файле VxVerify: vxverify_tests.json)
4. Остановка vmware-marvin служба:
systemctl stop vmware-marvin
5. Чтобы обновить учетную запись управления хостом ESXi, выполните следующую команду и замените ESX_MGMT_USER_NAME и ENCODED_PASSWD_FROM_STEP_1 и <host-SN>.
curl -X PUT --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -H "Accept: application/json" -H "Content-Type: application/json" -d '{"lockbox_name":"SYSTEM","credentials":[{"credential_name":"management_account_esxi__<host-SN>","username":"ESXI_MGMT_USER_NAME","password":"ENCODED_PASSWD_FROM_STEP_1"}]}' 'http://localhost/rest/vxm/internal/lockbox/v1/credentials'
Пример.
curl -X PUT --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -H "Accept: application/json" -H "Content-Type: application/json" -d '{"lockbox_name":"SYSTEM","credentials":[{"credential_name":"management_account_esxi__V010101","username":"esxmgmt","password":"UGFzc3dvcmQxMjMh"}]}' 'http://localhost/rest/vxm/internal/lockbox/v1/credentials'
Как расшифровать пароль:
echo -n "VnhsYWJSQGlsMSE=" | base64 -d VxlabR@il1!
6. Перейдите в раздел https://ESXiIPAddress и войдите в систему как root. Нажмите «Управление>пользователями и группами>». Измените значение Пользователь>управления ESXi задал новый пароль в открытом виде.
7. Запуск vmware-marvin служба:
systemctl start vmware-marvin
После изменения пароля:
1. Включите мониторинг работоспособности в пользовательском интерфейсе > VxRail Health Monitoring Health Monitoring >Health Monitoring Health Status Enable или с помощью интерфейса командной строки.>
curl -X PUT --unix-socket /var/lib/vxrail/nginx/socket/nginx.sock -H "Accept: application/json" -H "Content-Type: application/json" http://127.0.0.1/rest/vxm/internal/configservice/v1/configuration/keys/state_cluster_suppressed -d '{"value": "false"}'
2. Перезапустите vmware-marvin .
systemctl restart vmware-marvin
Additional Information
Учетные данные можно проверить, запустив VxVerify, см. статью: VxRail. Как запустить инструмент VxRail Verify.