[OpenStack-Infra] [nodepool] unable to get a floating IP

Alex Burmashev alexander.burmashev at oracle.com
Mon Apr 3 17:32:42 UTC 2017


Follow up:

i have added some crude debug to 
/usr/local/lib/python2.7/dist-packages/shade/openstackcloud.py and seems 
that private ip is really treated as public, this condition is triggered:

         if server['public_v4']:
             return False

so basically shade figures out that started instance already has a 
public IP.

If i "hack" it and just change it to return True, so that def 
_needs_floating_ip(self, server, nat_destination): despite thinking that 
instance already has public_v4 returnes True, instance gets floating IP 
adress auto assigned.

Now i have to figure out why private IP is considered as public...


03.04.2017 17:21, Alex Burmashev пишет:
> Yeah, i thought about it, but i think automatic IP assigning is only 
> supported with nova-network, and i use neutron.
>
> Moreover at least for some time nodepool definitely was assigning IPs 
> to the VMs, it is starting, it is mentioned in docs, maillists and irc 
> discussions.  Maybe at some moment automatic floating IP assigning on 
> a cloud became a must-have, but it is not mentioned in 
> nodepool/openstack CI docs anywhere...
>
>
>
> 03.04.2017 17:07, Lenny Verkhovsky пишет:
>> If I am not mistaken,
>> You can configure your cloud/network to assign automatically floating 
>> IP to the VM.
>> This is related to the cloud and not to the nodepool
>>
>> -----Original Message-----
>> From: Alex Burmashev [mailto:alexander.burmashev at oracle.com]
>> Sent: Monday, April 3, 2017 6:03 PM
>> To: Lenny Verkhovsky <lennyb at mellanox.com>; 
>> openstack-infra at lists.openstack.org
>> Subject: Re: [OpenStack-Infra] [nodepool] unable to get a floating IP
>>
>> Hi!
>>
>> * private ip is assigned without a problem automatically.
>>
>> * VM is inaccessible from the external network using private IP, 
>> available from inside the private network. Which is normal, i think.
>> When i manually assign public IP, machine is accessible via that 
>> public IP from elsewhere.
>>
>> * This is the problem. I am a bit stuck debugging, because i do not 
>> see any failures in logs, except for "Timeout waiting for ssh access" 
>> in nodepool logs.
>>
>> Here is some more info:
>>
>> nodepool logs already have DEBUG enabled, at least according to 
>> logging.conf
>>
>> [handler_debug]
>> level=DEBUG
>> class=logging.handlers.TimedRotatingFileHandler
>> formatter=simple
>> args=('/var/log/nodepool/debug.log', 'H', 8, 30,)
>>
>>
>> The only error i am getting is
>>
>> ERROR nodepool.NodeLauncher: Timeout launching node id: 155 in provider:
>> local_01 error: Timeout waiting for ssh access
>>
>> but it is obvious why it is happening:
>>
>>    DEBUG nodepool.TaskManager: Manager local_01 ran task ServerList 
>> in 0.138505220413s
>>    DEBUG nodepool.TaskManager: Manager local_01 running task PortList
>> (queue: 0)
>>    DEBUG nodepool.TaskManager: Manager local_01 ran task PortList in 
>> 0.0317981243134s
>>    DEBUG nodepool.TaskManager: Manager local_01 running task 
>> NeutronFloatingIPList (queue: 0)
>>    DEBUG nodepool.NodeLauncher: Node id: 155 is running, ipv4: 
>> 8.8.8.151, ipv6:.
>>    DEBUG nodepool.NodeLauncher: Node id: 155 testing ssh at ip: 
>> 8.8.8.151
>>
>> It looks like nodepool assumes that private IP is the one, needed, 
>> and tries to access the instance using it, and i do not see any 
>> attempts to assign a public floating ip at all.
>>
>> I tried adding "public: true/false" to networks field in 
>> nodepool.yaml and it did not help at all.
>>
>>
>> 03.04.2017 15:12, Lenny Verkhovsky пишет:
>>> Hi Alex,
>>>     Please set DEBUG level in nodepool to see more info
>>> Few questions:
>>>     Do you get private ip?
>>>     Can you ping the vm?
>>>     What is the failure?
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: Alex Burmashev [mailto:alexander.burmashev at oracle.com]
>>> Sent: Monday, April 3, 2017 4:03 PM
>>> To: openstack-infra at lists.openstack.org
>>> Subject: [OpenStack-Infra] [nodepool] unable to get a floating IP
>>>
>>> Hello!
>>>
>>> I am setting up a CI instance and currently face a problem with 
>>> auto-assigning floating IPs.
>>>
>>> Instances are started, no error in /var/log/nodepool/debug.log, but 
>>> floating ip is not assigned and nodepool tries to access instance 
>>> via private ip, and it fails obviously.
>>>
>>> Manual IP assigning both from cli and horizon works without any 
>>> problems.
>>>
>>> I am using nodepool 0.4.0 + zookeeper.
>>>
>>> Here is my nodepool provider config:
>>>
>>>        username: '***'
>>>        password: '***'
>>>        auth-url: 'http://****:5000/v2.0'
>>>        project-name: 'openstackci'
>>>        max-servers: 4
>>>        pool: public-net
>>>        clean-floating-ips: true
>>>        networks:
>>>          - name: net2
>>>        images:
>>>          - name: oracle7
>>>            min-ram: 8192
>>>            diskimage: oracle7
>>>            username: jenkins
>>>            private-key: '/home/nodepool/.ssh/id_rsa'
>>>
>>> targets:
>>>      - name: jenkins1
>>>
>>>
>>> net2 - is a private network, public-net is a pool of floating ips on 
>>> public network,
>>>
>>> net2 is connected to public network through router. Manual VM 
>>> creation on net2 and assigning a floating IP works without any 
>>> problems.
>>>
>>>     docker-ostk neutron net-list
>>> +--------------------------------------+------------+------------------------------------------------------+ 
>>>
>>> | id                                   | name       |
>>> subnets                                              |
>>> +--------------------------------------+------------+------------------------------------------------------+ 
>>>
>>> | 38a6b5c4-fb04-47fd-bc4e-8cc9e341bbd2 | public-net |
>>> ebf6fb2e-f423-47ef-9f09-3e007c15817f                 |
>>> | 632ed77c-f913-4576-90c3-4404a7e2fbc6 | net2       |
>>> 6ad037cf-2177-4159-9676-99e01ca0b15b 8.8.8.0/24      |
>>> +--------------------------------------+------------+------------------------------------------------------+ 
>>>
>>>
>>> docker-ostk nova floating-ip-pool-list
>>> +------------+
>>> | name       |
>>> +------------+
>>> | public-net |
>>> +------------+
>>>
>>>
>>> _______________________________________________
>>> OpenStack-Infra mailing list
>>> OpenStack-Infra at lists.openstack.org
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>




More information about the OpenStack-Infra mailing list