<div dir="ltr">Hi all
<div><br></div><div>i'm using juju 2.1.2.1 (i didn't upgrade to 2.2 yet, that's why i didn't open a bug on launchpad) with openstack as cloud provider.</div><div><br></div><div>When i use as credentials an Admin user (but a specific tenant) i have issues with floating ip assignment: the admin user can see all the floating ips in the openstack region. </div><div>So, if another tenant allocates an IP without assigning to a VM (so, unused) juju tries to use it and attach to the VM it just deployed.</div><div><br></div><div>i.e.</div><div><br></div><div>user test1 is Admin and has primary project "tenant-one"</div><div>user test2 is member of project "tenant-two"</div><div><br></div><div>credentials given to juju are test1, test1_password, tenant-one and RegionOne.</div><div><br></div><div># source novarc_test1</div><div><br></div><div><div># neutron floatingip-list</div><div>+-----------------------------<wbr>---------+------------------+-<wbr>--------------------+---------<wbr>-----------------------------+</div><div>| id                                   | fixed_ip_address | floating_ip_address | port_id                              |</div><div>+-----------------------------<wbr>---------+------------------+-<wbr>--------------------+---------<wbr>-----------------------------+</div><div>| 03d1a8e8-fd55-4d6e-ab7e-<wbr>b62061ea6206 | 192.168.0.10     | 10.1.2.19         | b6ac7caf-0c6e-4d81-b055-<wbr>ecb8b4bdeebd |</div><div>| 2b4e48ba-aad6-4d78-aff6-<wbr>88b912f89bf5 | 192.168.0.20     | 10.1.2.9          | 17f69b3b-97d0-4cec-8208-<wbr>e4d2ac2f1034 |<br></div><div>| 3144b683-2cf5-43cf-bddd-<wbr>b06cb5662430 |                  | 10.1.2.22         |                                      |</div><div>| 55145d85-58ea-4f15-8a0c-<wbr>96a719c0fa8d | 192.168.0.22     | 10.1.2.4          | 6eeaa12b-0971-496c-bd38-<wbr>89e9b9d71818 |<br></div><div>+-----------------------------<wbr>---------+------------------+-<wbr>--------------------+---------<wbr>-----------------------------+<br></div></div><div><br></div><div>the third line shows and ip address assigned to tenant-two by test2.</div><div><br></div><div>User test1 has admin role so he has permission to see the ip.</div><div>Using a command like "neutron floatingip-show 3144b683-2cf5-43cf-bddd-<wbr>b06cb5662430" correctly shows the project_id uuid related to tenant-two and not tenant-one.</div><div><br></div><div>juju model is configured with</div><div><div>use-default-secgroup          model       true</div><div>use-floating-ip               model       true</div></div><div><br></div><div>When trying to deploy any application juju spawns a VM, but it never ends and logs:<br></div><div>







<div class="gmail-WordSection1">

<p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal"><span style="font-size:10pt;font-family:"Segoe UI",sans-serif;color:black">Unable to associate floating IP </span>10.1.2.22<span style="font-size:10pt;font-family:"Segoe UI",sans-serif;color:black"> to fixed IP
192.168.0.9 for instance </span><span style="color:black;font-family:"Segoe UI",sans-serif;font-size:10pt">3d95283c-69f2-4cf1-8980-99462a5904a2.</span></p>









</div></div><div><br></div><div>Removing the unused floating ip address or using a member-only (not admin user) bypass the problem: juju will allocate a new ip and associate with the new VM.</div><div><br></div><div>I didn't try but i do think that if an user is member of two different tenants it may try to mis-use the addresses and mess with them, failing to deploy.</div><div><br></div><div>Desiderata: juju should check if the allocated ip address is in the same tenant view of the given credentials.</div><div><br></div><div>Regards</div><div><br></div><div>Patrizio</div></div>