#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, но безуспешно. Он существует для администратора и/или демонстрационного пользователя, но не влияет. Любая помощь будет признательна!