<div dir="ltr"><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">Hi,gurus</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">I just launched a trove development environment, but the guest agent can not connect to amqp server which <a href="http://10.0.0.1:5672">10.0.0.1:5672</a>.</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">After create a dnat rule of neutron-l3-agent-PREROUTING chain within qrouter namespaces  whick forward the request from <a href="http://10.0.0.1:5672">10.0.0.1:5672</a> to</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">amqp server all works fine.</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">But the dnat rule won't exist after associate a floating ip to the guest.</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">I just wonder is it possiable to manually persist the iptables rules within neutron network namespaces </div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">or must i configure amqp server ip within trove-guestagent.conf to public address?</div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small">Below is configuration of trove guest agent</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style="font-family:'trebuchet ms',sans-serif;font-size:small"><br></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">root@tr-ubuntu-mysql-5-5-01:~# cat /etc/trove/trove-guestagent.conf </font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">[DEFAULT]</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Show more verbose log output (sets INFO log level output)</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">verbose = True</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Show debugging output in logs (sets DEBUG log level output)</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">debug = True</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Address to bind the API server</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">bind_host = 0.0.0.0</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Port the bind the API server to</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">bind_port = 8778</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># AMQP Connection info</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">rabbit_password=supersecret</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Path to the extensions</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">api_extensions_path = trove/extensions/routes</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Configuration options for talking to nova via the novaclient.</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># These options are for an admin user in your keystone config.</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># It proxies the token received from the user to send to nova via this admin users creds,</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># basically acting like the client via that proxy token.</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">nova_proxy_admin_user = admin</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">nova_proxy_admin_pass = supersecret</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">nova_proxy_admin_tenant_name = admin</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">trove_auth_url = <a href="http://10.0.0.1:5000/v2.0">http://10.0.0.1:5000/v2.0</a></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">swift_url = <a href="http://10.0.0.1:8080/v1/AUTH_">http://10.0.0.1:8080/v1/AUTH_</a></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Datastore management implementations. Format datastore:manager.impl</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># datastore_registry_ext = mysql:trove.guestagent.datastore.mysql.manager.Manager, percona:trove.guestagent.datastore.mysql.manager.Manager</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Root configuration</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">root_grant = ALL</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">root_grant_option = True</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">#root_grant = ALTER ROUTINE, CREATE, ALTER, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, CREATE USER, DELETE, DROP, EVENT, EXECUTE, INDEX, INSERT, LOCK TABLES, PROCESS, REFERENCES, SELECT, SHOW DATABASES, SHOW VIEW, TRIGGER, UPDATE, USAGE</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">#root_grant_option = False</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># used by passlib to generate root password</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">#default_password_length = 36</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># For communicating with trove-conductor</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">control_exchange = trove</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># ============ kombu connection options ========================</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">rabbit_host=10.0.0.1</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># ============ Logging information =============================</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">log_dir = /var/log/trove</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">log_file = trove-guestagent.log</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Users to ignore for user create/list/delete operations</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">ignore_users = os_admin</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">#ignore_users = os_admin, root</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">ignore_dbs = lost+found, mysql, information_schema, performance_schema</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Strategy information for backups</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_namespace = trove.guestagent.strategies.backup.mysql_impl</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># Additional commandline options to be passed to the backup runner (by strategy). For example:</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"># backup_runner_options = InnoBackupEx:--no-lock,  MySQLDump:--events --routines --triggers</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">restore_namespace = trove.guestagent.strategies.restore.mysql_impl</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">storage_strategy = SwiftStorage</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">storage_namespace = trove.guestagent.strategies.storage.swift</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_swift_container = database_backups</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_use_gzip_compression = True</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_use_openssl_encryption = True</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_aes_cbc_key = "default_aes_cbc_key"</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_use_snet = False</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_chunk_size = 65536</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">backup_segment_max_size = 2147483648</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif"><br></font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">datastore_manager = mysql</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">datastore_registry_ext = mysql:trove.guestagent.datastore.mysql.manager.Manager, percona:trove.guestagent.datastore.mysql.manager.Manager</font></div></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">hostname_require_ipv4 = false</font></div></div></blockquote></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_default" style><div class="gmail_default" style><br></div></div></blockquote></blockquote><div class="gmail_default" style><div class="gmail_default" style><font face="trebuchet ms, sans-serif">Many thanks.</font></div></div><div><div class="gmail_signature"><div dir="ltr"><div><font face="trebuchet ms, sans-serif"><br></font></div><font face="trebuchet ms, sans-serif">---<br>Thanks,<br>Yitao(依涛 姜)<br><a href="http://jiangyt.github.io" target="_blank">jiangyt.github.io</a></font></div></div></div>
</div>