Проверка установки
Для входа в веб-интерфейс мониторинга используйте адрес, указанный в Техпаспорте (закладка 1. Требования к инфраструктуре, п.2.5b Список DNS-записей, п.7 Портал мониторинга (Zabbix)).
Адрес и регистрационные данные содержатся в файлах inventory/group_vars/vkcloud/vars.yml и inventory/group_vars/vkcloud/vault.yml:
- Адрес в переменной
monitoring_endpoint_fqdn. - Логин в переменной
vault_zabbix_api_user. - Пароль в переменной
vault_zabbix_api_pass.
Чтобы вывести эти данные в удобном формате, выполните запрос Ansible:
$ ansible -m debug -i vkcloud.yml -a "msg=\"\n\nZabbix URL: https://{{ monitoring_endpoint_fqdn }}Zabbix Login/Pass: {{ vault_zabbix_api_user }} / {{ vault_zabbix_api_pass }}\n\n\"" all[0] | sed 's/\\n/\n/g'cpn001 | SUCCESS => {"msg": "Zabbix URL: https://mon.private.infra.devmail.ruZabbix Login/Pass: Admin / QB7214T62z6n63guc3gl"}
Проверьте функционирование Платформы в соответствии с документом Программа и методика испытаний VK Private Cloud.
-
Проверьте, что появилась связность по BGP с control-нодами и с соседней AS (если rs1 присутствует в Платформе).
Команда проверки BGP (запускается на RS-сервере)$ gobgp neighborПример ожидаемого результата10.30.3.111 65433 23:52:58 Establ | 6 610.30.3.113 65433 23:52:48 Establ | 6 610.30.3.12 65433 23:43:52 Establ | 7 710.30.3.11 65433 23:43:48 Establ | 7 710.30.3.13 65433 23:41:03 Establ | 7 710.30.3.112 65433 23:53:25 Establ | 6 610.30.3.22 65431 23:53:21 Establ | 23 23- -
Проверьте, что все
systemdсервисы на всех серверах кластера запущены без ошибок:Команда проверки запуска сервисов$ systemctl list-units --failedПример ожидаемого результата0 loaded units listed. Pass --all to see loaded but inactive units, too.To show all installed unit files use 'systemctl list-unit-files'.Если обнаружены сервисы с ошибкой, проверьте логи и перезапустите сервис.
Просмотр логов и перезапуск сервиса на примере public_haproxy$ sudo journalctl -f -u public_haproxy$ sudo systemctl restart public_haproxy -
Проверьте состояние серверов Kubernetes — все ноды должны быть в статусе
Ready:Пример команды проверки состояния сервисов Kubernetes (выполняется на Master-нодах Kubernetes)$ sudo kubectl get nodesПример ожидаемого результатаNAME STATUS ROLES AGE VERSIONcpn001 Ready <none> 24h v1.24.12cpn002 Ready <none> 24h v1.24.12cpn003 Ready <none> 24h v1.24.12 -
Проверьте состояние подов в Kubernetes — все они должны находиться в статусе
Running:$ sudo kubectl get pods -A | grep -v -e Running -e Completed -
Загрузите переменные для доступа к стенду (на любом узле Controlplane):
$ sudo bash# . ~/openrc.sh -
Проверьте состояние сетевых агентов в OpenStack:
Команда проверки состояния сетевых агентов# openstack network agent list -c Host -c Alive -c State -c BinaryПример ожидаемого результата+----------+-------+-------+---------------------------+| Host | Alive | State | Binary |+----------+-------+-------+---------------------------+| kcn002 | :-) | UP | neutron-openvswitch-agent || network1 | :-) | UP | neutron-l3-agent || cpn003 | :-) | UP | neutron-openvswitch-agent || cpn002 | :-) | UP | neutron-openvswitch-agent || network1 | :-) | UP | neutron-dhcp-agent || network1 | :-) | UP | neutron-metadata-agent || network1 | :-) | UP | neutron-openvswitch-agent || kcn001 | :-) | UP | neutron-metadata-agent || kcn002 | :-) | UP | neutron-metadata-agent || kcn001 | :-) | UP | neutron-l3-agent || kcn002 | :-) | UP | neutron-l3-agent || cpn001 | :-) | UP | neutron-openvswitch-agent || kcn001 | :-) | UP | neutron-openvswitch-agent |+----------+-------+-------+---------------------------+Поле
Aliveдолжно иметь значение:-), полеState—UP(для всех сетевых агентов).Если есть сервисы с отключенным агентом, выполните шаги:
-
Подключитесь к серверу из колонки
Hostпо SSH. -
Проверьте логи и перезагрузите отключенные сервисы:
Просмотр логов и перезапуск сервиса на примере neutron-l3-agent$ sudo journalctl -f --no-pager -u neutron-l3-agent$ sudo systemctl restart neutron-l3-agent
-
-
Проверьте число актуальных реплик у
deploymentsиstatefulsetна Master-узлах Kubernetes: в столбцеREADYпервое и второе значения с разделителем/должны совпадать.Команды проверки числа актуальных реплик$ sudo kubectl get deploy -A$ sudo kubectl get sts -AПример ожидаемого результатаNAMESPACE NAME READY UP-TO-DATE AVAILABLE AGEbs-vkcloud billing-account-service-bas 2/2 2 2 18hbs-vkcloud billing-account-service-celery-metrics 1/1 1 1 18h...NAMESPACE NAME READY AGEiaas-vkcloud cinder-billing-processing 1/1 18hiaas-vkcloud cinder-billing-processing-snapshots 1/1 18h...
Для входа в веб-интерфейс OpenSearch Dashboard используйте адрес, указанный в Техпаспорте (закладка 1. Требования к инфраструктуре, п.2.5b Список DNS-записей, п.6 Портал просмотра журналов событий (OpenSearch)).
Адрес и регистрационные данные содержатся в файлах inventory/group_vars/vkcloud/vars.yml и inventory/group_vars/vkcloud/vault.yml:
- Адрес в переменной
logs_endpoint_fqdn. - Пароль в переменной
vault_opensearch_users_admin_password.
Чтобы вывести эти данные в удобном формате, выполните запрос Ansible:
$ ansible -m debug -i vkcloud.yml -a "msg=\"\n\nOpenSearch URL: https://{{ logs_endpoint_fqdn }}OpenSearch Login/Pass: admin / {{ vault_opensearch_users_admin_password }}\n\n\"" all[0] | sed 's/\\n/\n/g'cpn001 | SUCCESS => {"msg": "OpenSearch URL: https://logs.private.infra.devmail.ruOpenSearch Login/Pass: admin / 59z74BX288E4Y8VRKz9Q"}
Для входа в Портал администратора используйте адрес, указанный в Техпаспорте (закладка 1. Требования к инфраструктуре, п.2.5b Список DNS-записей, п.2 Веб-портал: интерфейс суперадминистратора).
Адрес и регистрационные данные содержатся в файлах inventory/group_vars/vkcloud/vars.yml и inventory/group_vars/vkcloud/vault.yml:
- Адрес в переменной
superadmin_public_endpoint_domain. - Логин в переменной
iam_sync_user_name. - Пароль в переменной
vault_iam_sync_user_password.
Чтобы вывести эти данные в удобном формате, выполните запрос Ansible:
$ ansible -m debug -i vkcloud.yml -a "msg=\"\n\nAdmin URL: https://{{ superadmin_public_endpoint_domain }}Admin Login/Pass: {{ iam_sync_user_name }} / {{ vault_iam_sync_user_password }}\n\n\"" all[0] | sed 's/\\n/\n/g'cpn001 | SUCCESS => {"msg": "Admin URL: https://admin.private.infra.devmail.ruAdmin Login/Pass: superadmin / Lf0j1T69H1081c0o2exm"}
Создайте первый проект и назначьте группе пользователей доступ на проект (роль mcs_co_owner). Инструкция по предоставлению доступа приведена в Руководстве администратора VK Private Cloud в разделе Предоставление доступа к проекту.
Для входа в Keycloak используйте адрес, указанный в Техпаспорте (закладка 1. Требования к инфраструктуре, п.2.5b Список DNS-записей, п.3 Портал управления доступом (Keycloak)).
Адрес и регистрационные данные содержатся в файлах inventory/group_vars/vkcloud/vars.yml и inventory/group_vars/vkcloud/vault.yml:
- Адрес в переменной
keycloak_public_endpoint_domain. - Пароль в переменной
vault_keycloak_password.
Чтобы вывести эти данные в удобном формате, выполните запрос Ansible:
$ ansible -m debug -i vkcloud.yml -a "msg=\"\n\nKeycloak URL: https://{{ keycloak_public_endpoint_domain }}Keycloak Login/Pass: admin / {{ vault_keycloak_password }}\n\n\"" all[0] | sed 's/\\n/\n/g'cpn001 | SUCCESS => {"msg": "Keycloak URL: https://keycloak.private.infra.devmail.ruKeycloak Login/Pass: admin / 0r91jFT60gU6TK0v10k2"}
Если ранее был выполнен импорт пользователей и групп из LDAP-провайдеров, убедитесь в наличии импортированных пользователей и групп в областях безопасности (realm) mcs_users, mcs_admins.
Для входа в Портал самообслуживания используйте адрес, указанный в Техпаспорте (закладка 1. Требования к инфраструктуре, п.2.5b Список DNS-записей, п.1 Веб-портал: личный кабинет). Также он содержится в переменной openstack_public_endpoint_ip файла inventory/group_vars/vkcloud/vars.yml.
Используйте логин/пароль пользователей, которым был предоставлен доступ к проекту через Портал администратора (подробнее — в разделе Портал администратора). Если при подготовке файла конфигурации minimal.yml, в разделах KBG и keycloak_test_users были указаны тестовые пользователи, можно воспользоваться ими для входа в Портал самообслуживания.
Чтобы вывести адрес и регистрационные данные в удобном формате, выполните запрос Ansible:
$ ansible -m debug -i vkcloud.yml -a "msg=\"\n\nFront URL: https://{{ openstack_public_endpoint_ip }}Front Login/Pass:{% for user in keycloak_test_users | dict2items %}** {{ user.value.username }} / {{ user.value.password }} (groups: {{ user.value.groups | join(', ') }}){% endfor %}{% for user in freeipa_users %}** {{ user[0] }}@{{ freeipa_realm | lower }} / {{ user[1] }} (group: {{ user[2] }}){% endfor %}\n\n\"" all[0] | sed 's/\\n/\n/g'cpn001 | SUCCESS => {"msg": "Front URL: https://lk.private.infra.devmail.ruFront Login/Pass:** proj1@vk.team / Q2k6a18A (groups: proj1-users)** proj2@vk.team / K3W6S8K5 (groups: proj2-users)** keycloak@vk.team / MAkGA1UECgwCVks (group: ldap_admins)** user01@vk.team / wy902Ln9 (group: ldap_users01)** user02@vk.team / 658nqDn9 (group: ldap_users02)"}