<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta content="text/html; charset=utf-8">
</head>
<body>
This is a coin flip IMO. Heat can be deployed separately from other infrastructure.  If this does change, I'd like to see a fail over mechanism in the client plugin mechanism that will switch to the public URL if it can't access the private one.<br>
<br>
<div>-------- Original message --------</div>
<div>From: Matt Fischer </div>
<div>Date:10/24/2015 2:35 AM (GMT-06:00) </div>
<div>To: "OpenStack Development Mailing List (not for usage questions)" </div>
<div>Subject: Re: [openstack-dev] [Heat] publicURL vs internalURL for resource validation
</div>
<div><br>
</div>
<div>
<p dir="ltr">From an operations point of view I'd also prefer all service to service calls to go through the internalURL is there a reason it's not default?
</p>
<div class="gmail_quote">On Oct 24, 2015 7:56 AM, "Attila Szlovencsak" <<a href="mailto:attila@componentsoft.eu">attila@componentsoft.eu</a>> wrote:<br type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex; border-left:1px #ccc solid; padding-left:1ex">
Hi!<br>
<br>
I am using Openstack Kilo (2015.1.1)<br>
As I learned from the code, heat-engine uses the endpoint-type "publicURL",<br>
when validating templates. I also see that I can override that from<br>
heat.conf via [clients_XXX]/endpoint_type.<br>
<br>
<br>
heat/engine/clients/os/nova.py<br>
================================<br>
    def _create(self):<br>
        endpoint_type = self._get_client_option('nova', 'endpoint_type')<br>
        management_url = self.url_for(service_type='compute',<br>
                                      endpoint_type=endpoint_type)<br>
<br>
<br>
/heat/common/config.py<br>
=====================================<br>
# these options define baseline defaults that apply to all clients<br>
default_clients_opts = [<br>
    cfg.StrOpt('endpoint_type',<br>
               default='publicURL',<br>
<br>
============<br>
My questions:<br>
<br>
1. Shouldn't we use the  interalURL instead as default?  In a typical case,<br>
the controller node sits behind a load-balancer, and IP for the publicURLs<br>
are held by the load-balancer. The controller node (so heat-engine) might<br>
not have access to the publicURL at all.<br>
<br>
2. Instead of creating and "endpoint_type" entry in heat.conf for each and<br>
every service,  is there a simpler way to force using the internalURL?<br>
<br>
Thanks in advance,<br>
Attila<br>
<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote>
</div>
</div>
</body>
</html>