Клад Openstack: сбой при создании экземпляра базы данных с ошибкой «Указано недопустимое имя ключа».

#database #openstack #key-pair

#База данных #openstack #пара ключей

Вопрос:

Во время создания экземпляра базы данных Trove я столкнулся с ошибкой «Предоставлено неверное имя ключа».

 openstack database instance create mysql_instance_4   --flavor 6   --volume-type __DEFAULT__   --size 6   --nic net-id=c45740a2-8846-4e51-afba-ed8983e27748   --databases test --users userA:password   --datastore mysql --datastore-version mysql_5.7   --is-public   --debug  ... 2021-12-04 23:41:15.170 1729 DEBUG trove.common.clients_admin [-] Re-use admin nova client nova_client_trove_admin /usr/lib/python3/dist-packages/trove/common/clients_admin.py:65 2021-12-04 23:41:15.440 1729 ERROR trove.taskmanager.models [-] Failed to create server for instance f3ca7c57-77ff-43d0-b20e-53f555b70d33 Invalid key_name provided. (HTTP 400) (Request-ID: req-f3893f97-130c-4047-8520-760b6311b201) Traceback (most recent call last): ...  

Однако можно запустить экземпляр с созданного тома вручную. Это моя конфигурация:

 root@control:~# nova flavor-create mysql-minimum 6 512 5 1  ---- --------------- ------------ ------ ----------- ------ ------- ------------- ----------- -------------  | ID | Name | Memory_MiB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |  ---- --------------- ------------ ------ ----------- ------ ------- ------------- ----------- -------------  | 6 | mysql-minimum | 512 | 5 | 0 | 0 | 1 | 1.0 | True | - |  ---- --------------- ------------ ------ ----------- ------ ------- ------------- ----------- -------------   root@control:/etc/trove# cat trove.conf [DEFAULT] network_driver = trove.network.neutron.NeutronDriver management_networks = c5b9c743-d74b-47d8-a85b-751bde6ee6d4 management_security_groups = 0380d519-00b5-4673-bd28-29e0f81335d1 cinder_volume_type = lvm nova_keypair = trove-mgmt default_datastore = mysql taskmanager_manager = trove.taskmanager.manager.Manager trove_api_workers = 5 transport_url = rabbit://openstack:pass@control:5672/ control_exchange = trove rpc_backend = rabbit reboot_time_out = 300 usage_timeout = 900 agent_call_high_timeout = 1200 use_syslog = False debug = True [keystone_authtoken] memcached_servers = control:11211 cafile = /devstack/stack/data/ca-bundle.pem project_domain_name = Default project_name = service user_domain_name = Default password = pass username = trove auth_url = http://control:5000/identity auth_type = password [service_credentials] auth_url = http://control:5000/identity/v3 region_name = RegionOne project_name = service password = pass project_domain_name = Default user_domain_name = Default username = trove [database] connection = mysql pymysql://trove:pass@control/trove?charset=utf8 [mariadb] tcp_ports = 3306,4444,4567,4568 [mysql] tcp_ports = 3306 [postgresql] tcp_ports = 5432 [oslo_messaging_amqp] [oslo_messaging_kafka] [oslo_messaging_notifications] [oslo_messaging_rabbit] [oslo_policy]  root@control:/etc/trove# cat trove-guestagent.conf [DEFAULT] log_file = trove-guestagent.log log_dir = /var/log/trove/ ignore_users = os_admin control_exchange = trove transport_url = rabbit://openstack:pass@control:5672/ rpc_backend = rabbit command_process_timeout = 60 use_syslog = False debug = True [service_credentials] auth_url = http://control:5000/v3 region_name = RegionOne project_name = service password = pass project_domain_name = Default user_domain_name = Default username = trove  

Я также поиграл с « nova_keypair = trove-mgmt » в trove.conf, но безуспешно. Он существует для администратора и/или демонстрационного пользователя, но не влияет. Любая помощь будет признательна!