[Openstack] Compute Instance not found when trying to launch trove db instance on Icehouse release

Ankush Grover ankushcentos at gmail.com
Fri Sep 26 10:08:30 UTC 2014


Hi Friends,

I have installed & configured Openstack Icehouse release via RDO on Centos
6.5 64-bit with Nova Network & Rabbitmq. Now I am trying to integrated
Trove add-on. Whenever I try to launch an instance the
trove-taskmanager.log show that it is not able to find the compute
instance.  Please see the below errors.

I am using ubuntu 14.04(trusty) Cloud image downloaded from the Ubuntu
site, installed the troveagent & mysql-server-5.5 on this image. If I ran
this image as a normal instance on Openstack I can see troveguest is
running. Also, this instance is able to talk to rabbitmq server.


14-09-26 13:56:06.603 31271 ERROR trove.extensions.mgmt.instances.models
[req-f6bcd974-85e0-4d93-9e88-7926d8dbab8f admin trove - - -] Resource
285db24b-91b3-47e7-9f0f-e44e1f2b8816 can not be retrieved.
2014-09-26 13:56:06.603 31271 ERROR trove.common.exception
[req-f6bcd974-85e0-4d93-9e88-7926d8dbab8f admin trove - - -] Cannot find
compute instance None for instance 79531a56-273a-4e2f-b119-5f41ee06d3f5.
2014-09-26 13:56:06.603 31271 ERROR trove.extensions.mgmt.instances.models
[req-f6bcd974-85e0-4d93-9e88-7926d8dbab8f admin trove - - -] Resource
79531a56-273a-4e2f-b119-5f41ee06d3f5 can not be retrieved.

trove list shows that trove db instance is in the build state and there is
nothing in the logs of nova-scheduler or nova-compute for this instance
that means this instance gets never went to the nova.

Can somebody guide me what can be the issue and the solution for this
problem


Below are the trove configuration files


trove-conductor.conf

[DEFAULT]
verbose = True
debug = True
control_exchange = trove
rabbit_password = guest
log_dir = /var/log/trove
trove_auth_url = http://172.31.31.205:5000/v2.0
nova_compute_url = http://172.31.31.205:8774/v2
cinder_url = http://172.31.31.205:8776/v1
swift_url = http://172.31.31.205:8080/v1/AUTH_
sql_connection = mysql://trove:trove@172.31.31.205/trove
rabbit_host = 172.31.31.205
nova_proxy_admin_user = admin
nova_proxy_admin_tenant_name = services
nova_proxy_admin_pass = admin
rpc_backend = trove.openstack.common.rpc.impl_kombu


trove.conf

[DEFAULT]
verbose=True
debug=True
rabbit_password = guest
log_dir=/var/log/trove
trove_auth_url = http://172.31.31.205:5000/v2.0
nova_compute_url = http://172.31.31.205:8774/v2
cinder_url = http://172.31.31.205:8776/v1
swift_url = http://172.31.31.205:8080/v1/AUTH_
sql_connection = mysql://trove:trove@172.31.31.205/trove
notifier_queue_hostname=172.31.31.205
default_datastore = mysql
add_addresses = True
network_label_regex = ^NETWORK_LABEL$
api_extensions_path=/usr/lib/python2.6/site-packages/trove/extensions/routes
max_accepted_volume_size=50
api_paste_config=/usr/share/trove/trove-dist-paste.ini


trove-taskmanager.conf

[DEFAULT]
verbose = True
debug = True
update_status_on_fail = False
log_dir = /var/log/trove
trove_auth_url = http://172.31.31.205:5000/v2.0
nova_compute_url = http://172.31.31.205:8774/v2
cinder_url = http://172.31.31.205:8776/v1
swift_url = http://172.31.31.205:8080/v1/AUTH_
sql_connection = mysql://trove:trove@172.31.31.205/trove
notifier_queue_hostname = 172.31.31.205
rabbit_host = 172.31.31.205
rabbit_password = guest
nova_proxy_admin_user = admin
nova_proxy_admin_pass = admin
nova_proxy_admin_tenant_name = trove
sql_idle_timeout = 3600
db_api_implementation = trove.db.sqlalchemy.api
trove_volume_support = True
block_device_mapping = vdb
device_path = /dev/vdb
mount_point = /var/lib/mysql
volume_time_out=30
server_delete_time_out=480
taskmanager_manager=trove.taskmanager.manager.Manager
exists_notification_transformer =
trove.extensions.mgmt.instances.models.NovaNotificationTransformer
exists_notification_ticks = 30
notification_service_id = mysql:2f3ff068-2bfb-4f70-9a9d-a6bb65bc084b
trove_dns_support = False
dns_account_id = 123456
dns_auth_url = http://172.31.31.205:5000/v2.0
dns_username = user
dns_passkey = password
dns_ttl = 3600
dns_domain_name = 'trove.com.'
dns_domain_id = 11111111-1111-1111-1111-111111111111
dns_driver = trove.dns.designate.driver.DesignateDriver
dns_instance_entry_factory =
trove.dns.designate.driver.DesignateInstanceEntryFactory
dns_endpoint_url = http://127.0.0.1/v1/
dns_service_type = dns
trove_security_groups_support = True
trove_security_group_rule_cidr = 0.0.0.0/0
agent_heartbeat_time = 10
agent_call_low_timeout = 5
agent_call_high_timeout = 150
use_nova_server_volume = False
network_label_regex = ^NETWORK_LABEL$
template_path = /etc/trove/templates/
notifier_queue_hostname = 172.31.31.205
notifier_queue_userid = guest
notifier_queue_password = guest
notifier_queue_ssl = False
notifier_queue_port = 5672
notifier_queue_virtual_host = /
notifier_queue_transport = memory
notification_driver=trove.openstack.common.notifier.rpc_notifier
control_exchange=trove
log_file = trove-taskmanager.log
pydev_debug = disabled
rpc_backend = trove.openstack.common.rpc.impl_kombu
[mysql]
tcp_ports = 3306
[redis]
tcp_ports = 6379
[cassandra]
tcp_ports = 7000, 7001, 9042, 9160
[couchbase]
tcp_ports = 8091, 8092, 4369, 11209-11211, 21100-21199


trove-dist-paste.ini

[composite:trove]
use = call:trove.common.wsgi:versioned_urlmap
/: versions
/v1.0: troveapi
[app:versions]
paste.app_factory = trove.versions:app_factory
[pipeline:troveapi]
pipeline = faultwrapper authtoken authorization contextwrapper ratelimit
extensions troveapp
[filter:extensions]
paste.filter_factory = trove.common.extensions:factory
[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
auth_host=172.31.31.205
auth_port=35357
auth_protocol=http
admin_user=trove
admin_password=TROVE_PASS
admin_token=12d95a75dc774f8c94bba9f4939354ca
admin_tenant_name=services
signing_dir=/var/cache/trove
[filter:authorization]
paste.filter_factory = trove.common.auth:AuthorizationMiddleware.factory
[filter:contextwrapper]
paste.filter_factory = trove.common.wsgi:ContextMiddleware.factory
[filter:faultwrapper]
paste.filter_factory = trove.common.wsgi:FaultWrapper.factory
[filter:ratelimit]
paste.filter_factory = trove.common.limits:RateLimitingMiddleware.factory
[app:troveapp]
paste.app_factory = trove.common.api:app_factory
[filter:debug]
paste.filter_factory = trove.common.wsgi:Debug

trove-api.conf

[DEFAULT]
log_file = /var/log/trove/trove.log
sql_connection = mysql://trove:trove@localhost/trove
api_paste_config = /usr/share/trove/trove-dist-paste.ini
rabbit_host = 172.31.31.205
rpc_backend = trove.openstack.common.rpc.impl_kombu
trove_auth_url = http://172.31.31.205:5000/v2.0
nova_compute_url = http://172.31.31.205:8774/v2
cinder_url = http://172.31.31.205:8776/v1
swift_url = http://172.31.31.205:8080/v1/AUTH_
notifier_queue_hostname =  172.31.31.205


troveguestagent.conf (on the ubuntu trove image)

[DEFAULT]
datastore_manager = mysql
rabbit_host = 172.31.31.205
verbose = True
debug = True
bind_port = 8778
bind_host = 0.0.0.0
nova_proxy_admin_user = admin
nova_proxy_admin_pass = admin
nova_proxy_admin_tenant_name = trove
trove_auth_url = http://172.31.31.205:35357/v2.0
control_exchange = trove
root_grant = ALL
root_grant_option = True
log_dir = /tmp
log_file = guest.log
ignore_users = os_admin
ignore_dbs = lost+found, mysql, information_schema
rpc_backend = trove.openstack.common.rpc.impl_kombu

# Backups
backup_namespace = trove.guestagent.strategies.backup.mysql_impl
restore_namespace = trove.guestagent.strategies.restore.mysql_impl
storage_strategy = SwiftStorage
storage_namespace = trove.guestagent.strategies.storage.swift
swift_url = http://172.31.31.205:8080/v1/AUTH_
backup_swift_container = database_backups
backup_use_gzip_compression = True
backup_use_openssl_encryption = True
backup_aes_cbc_key = "default_aes_cbc_key"
backup_use_snet = False
backup_chunk_size = 65536
backup_segment_max_size = 2147483648

[mysql]
backup_strategy = MySQLDump


/etc/init/troveguestagent.conf (on the ubuntu trove image)

more trove-guestagent.conf
description "Trove Guest Agent"
author "Thomas Goirand <zigo at debian.org>"

start on runlevel [2345]
stop on runlevel [!2345]

respawn

exec start-stop-daemon --start --chuid trove:trove \
            --chdir /var/lib/trove --name trove-guestagent \
            --exec /usr/bin/trove-guestagent --
--config-file=/etc/guest_info
--config-file=/etc/trove/trove-guestagent.conf --log-dir=/var/log/trove
--logfile=guestagent.log
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20140926/13b4abbd/attachment.html>


More information about the Openstack mailing list