Doc -
https://cwiki.apache.org/confluence/display/STRATOS/4.1.0+Multiple+Network+Interfaces

On Sat, Dec 6, 2014 at 9:09 AM, Rajkumar Rajaratnam <rajkum...@wso2.com>
wrote:

> Multiple network interfaces support[1] now available in master branch.
>
> 1. https://issues.apache.org/jira/browse/STRATOS-698
>
> Thanks.
>
> On Thu, Nov 20, 2014 at 11:34 AM, Rajkumar Rajaratnam <rajkum...@wso2.com>
> wrote:
>
>> In the current code base also, we are considering the first private IP of
>> the member in LB.
>>
>> On Thu, Nov 20, 2014 at 11:27 AM, Rajkumar Rajaratnam <rajkum...@wso2.com
>> > wrote:
>>
>>> Hi Imesh,
>>>
>>> I am modifying topology to include multiple private/public IPs. So now
>>> member object is having a list of private IPs and a list of public IPs.
>>> Which public IP LB should use? Can we get the first IP as default for
>>> routing?
>>>
>>> Thanks.
>>>
>>> On Thu, Nov 20, 2014 at 1:05 AM, Rajkumar Rajaratnam <rajkum...@wso2.com
>>> > wrote:
>>>
>>>>
>>>>
>>>> On Thu, Nov 20, 2014 at 12:52 AM, Jeffrey Nguyen (jeffrngu) <
>>>> jeffr...@cisco.com> wrote:
>>>>
>>>>>
>>>>>  I think it's probably less confusing if we use the terms "private
>>>>> IP" and "fixed private IP" (or "predefined private IP").
>>>>>
>>>>
>>>> Yes. We will use the words *private IP*, *fixed private IP*, *floating
>>>> IP* and *fixed floating IP*.
>>>>
>>>> Thanks Jeffrey for pointing this out.
>>>>
>>>> Thanks.
>>>>
>>>>
>>>>>
>>>>>  -Jeffrey
>>>>>
>>>>>   From: Rajkumar Rajaratnam <rajkum...@wso2.com>
>>>>> Date: Wednesday, November 19, 2014 11:58 AM
>>>>> To: "dev@stratos.apache.org" <dev@stratos.apache.org>
>>>>> Cc: jeffrngu <jeffr...@cisco.com>, "Matt Turner (matttur)" <
>>>>> matt...@cisco.com>
>>>>> Subject: Re: Assigning floating IPs to any interfaces of our choice
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Nov 19, 2014 at 7:01 PM, Rajkumar Rajaratnam <
>>>>> rajkum...@wso2.com> wrote:
>>>>>
>>>>>>    Hi all,
>>>>>>
>>>>>>  I have implemented this feature and it is fully functional now. I
>>>>>> had to upgrade Jclouds version to 1.8.1 in order to implement it using
>>>>>> neutron networking API.
>>>>>>
>>>>>>  Let me explain how it works now. I will past network interfaces
>>>>>> section of cartridge definition and explain each features implemented 
>>>>>> here.
>>>>>>
>>>>>>  "networkInterfaces":[
>>>>>>     {
>>>>>>         "name":"eth0",
>>>>>>         "networkUuid":"512e1f54-1e85-4dac-b2e6-f0b30fc552cf",
>>>>>>         "floatingNetworks":[
>>>>>>             {
>>>>>>                 "name":"externalOne",
>>>>>>                 "networkUuid":"ba667f72-7ba8-4b24-b360-b74a0211c83c"
>>>>>>             }
>>>>>>         ]
>>>>>>     },
>>>>>>
>>>>>> // eth0 will get a fixed IP and a floating IP from floating network 
>>>>>> externalOne
>>>>>>
>>>>>>    Please don't confuse with word "fixed IP" here. It doesn't mean
>>>>> "predefined fixed IP". Each port has at least a fixed IP. From port's 
>>>>> point
>>>>> of view, it is a "fixed IP" of the port. That's why I used the word fixed
>>>>> IP.
>>>>>
>>>>>>        {
>>>>>>         "name":"eth1",
>>>>>>         "networkUuid":"68aab21d-fc9a-4c2f-8d15-b1e41f6f7bb8"
>>>>>>     },
>>>>>>
>>>>>> // eth1 will get a fixed IP
>>>>>>
>>>>>>     {
>>>>>>         "name":"eth2",
>>>>>>         "networkUuid":"b55f009a-1cc6-4b17-924f-4ae0ee18db5e",
>>>>>>         "floatingNetworks":[
>>>>>>             {
>>>>>>                 "name":"externalThree",
>>>>>>                 "floatingIP" : "192.168.17.227"
>>>>>>             }
>>>>>>         ]
>>>>>>     },
>>>>>>
>>>>>> // eth2 will get a fixed IP and a predefined floating IP 192.168.17.227
>>>>>>
>>>>>> // if predefined IP is not available, an exception will be thrown
>>>>>>
>>>>>>     {
>>>>>>         "name":"eth3",
>>>>>>         "networkUuid":"d343d343-1cc6-4b17-924f-4ae0ee18db5e",
>>>>>>         "floatingNetworks":[
>>>>>>             {
>>>>>>                 "name":"externalThree",
>>>>>>                 "networkUuid":"ba667f72-7ba8-4b24-b360-b74a0211c83c",
>>>>>>                 "floatingIP" : "192.168.17.227"
>>>>>>             }
>>>>>>         ]
>>>>>>     },
>>>>>>
>>>>>> // eth3 will get a fixed IP and a floating IP from the floating network 
>>>>>> externalThree
>>>>>>
>>>>>> // point here is that we are giving priority to networkUuid to floatingIP
>>>>>>
>>>>>>     {
>>>>>>         "name":"eth4",
>>>>>>         "portUuid":"d343d343-1cc6-4b17-924f-4ae0ee18db5e",
>>>>>>         "fixedIp":"10.5.62.3",
>>>>>>         "floatingNetworks":[
>>>>>>             {
>>>>>>                 "name":"external",
>>>>>>                 "networkUuid":"ba667f72-7ba8-4b24-b360-b74a0211c83c",
>>>>>>                 "floatingIP" : "192.168.17.227"
>>>>>>             }
>>>>>>         ]
>>>>>>     },
>>>>>>
>>>>>> // eth4 will get a predefined private IP 10.5.62.3 and a floating IP 
>>>>>> from network external
>>>>>>
>>>>>>     {
>>>>>>         "name":"eth5",
>>>>>>         "networkUuid":"d343d343-1cc6-4b17-924f-4ae0ee18db5e",
>>>>>>         "floatingNetworks":[
>>>>>>             {
>>>>>>                 "name":"externalOne",
>>>>>>                 "networkUuid":"ba667f72-7ba8-4b24-b360-b74a0211c83c",
>>>>>>                 "floatingIP" : "192.168.17.227"
>>>>>>             },
>>>>>>             {
>>>>>>                 "name":"externalTwo",
>>>>>>                 "networkUuid":"sddsdsd-7ba8-4b24-b360-b74a0211c83c",
>>>>>>             }
>>>>>>         ]
>>>>>>     }
>>>>>>
>>>>>> // eth5 will get a fixed IP and a predefined floating IP 192.168.17.227
>>>>>>
>>>>>> // and a floating IP from the floating network externalTwo as well
>>>>>>
>>>>>> // I couldn't test whether it is supported by openstack
>>>>>>
>>>>>> // if openstack supports this, you can also achieve it in stratos
>>>>>>
>>>>>> ]
>>>>>>
>>>>>>
>>>>>>  Please have look at the comments given in each network interfaces
>>>>>> definition.
>>>>>>
>>>>>>  And if you define multiple network interfaces and floating networks,
>>>>>> if even one IP allocation goes wrong, I am throwing exception and kill 
>>>>>> the
>>>>>> instance.
>>>>>>
>>>>>>  Having this implemented, now I am in the process of doing changes
>>>>>> to some topology events to incorporate multiple private/public IP
>>>>>> addresses.
>>>>>>
>>>>>>  Please feel free to share your concerns.
>>>>>>
>>>>>>  Thanks.
>>>>>>
>>>>>> On Fri, Nov 14, 2014 at 7:14 PM, Rajkumar Rajaratnam <
>>>>>> rajkum...@wso2.com> wrote:
>>>>>>
>>>>>>>  Update;
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Nov 14, 2014 at 3:44 PM, Rajkumar Rajaratnam <
>>>>>>> rajkum...@wso2.com> wrote:
>>>>>>>
>>>>>>>>  Update;
>>>>>>>>
>>>>>>>> Currently facing an issue with upstream openstack-neutron-1.8.1.jar.
>>>>>>>>
>>>>>>>> When I see the MANIFEST.MF file of openstack-neutron-1.8.1.jar, it
>>>>>>>> contains ${jclouds.version} in lot of places instead of actual 
>>>>>>>> version. Due
>>>>>>>> to this carbon feature installation is failing. Because it is 
>>>>>>>> processing
>>>>>>>> MANIFEST.MF and throwing number format exception.
>>>>>>>>
>>>>>>>>  I conveyed this in user@jclouds. For workaround, I am going to
>>>>>>>> manually put the jar into /repository/components/lib and continue the 
>>>>>>>> work
>>>>>>>> until it is sorted out in upstream.
>>>>>>>>
>>>>>>>
>>>>>>>  This is a bug. One sent a PR to solve it
>>>>>>>
>>>>>>>  Thanks.
>>>>>>>
>>>>>>>>
>>>>>>>>  Thanks.
>>>>>>>>
>>>>>>>> On Wed, Nov 12, 2014 at 4:48 PM, Rajkumar Rajaratnam <
>>>>>>>> rajkum...@wso2.com> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Nov 12, 2014 at 4:37 PM, Udara Liyanage <ud...@wso2.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Raj,
>>>>>>>>>>
>>>>>>>>>>  No I did not try since there were no multiple public networks
>>>>>>>>>> available.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  Okay Udara. I am setting up a second external network now. Will
>>>>>>>>> run a test soon.
>>>>>>>>>
>>>>>>>>>  Thanks.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, Nov 12, 2014 at 2:59 PM, Rajkumar Rajaratnam <
>>>>>>>>>> rajkum...@wso2.com> wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Nov 12, 2014 at 2:52 PM, Udara Liyanage <ud...@wso2.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Raj,
>>>>>>>>>>>>
>>>>>>>>>>>>  If I remember correctly, we can't assign folating ip to the
>>>>>>>>>>>> same port multiple times even I try with Openstack UI.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>  Horizon UI doesn't support most of the operations. Yes we
>>>>>>>>>>> can't assign multiple floating IPs from the same external network 
>>>>>>>>>>> to the
>>>>>>>>>>> same port. But I guess, we can assign multiple floating IPs from 
>>>>>>>>>>> different
>>>>>>>>>>> external network to the same port. Did you try this scenario?
>>>>>>>>>>>
>>>>>>>>>>>  Thanks.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Nov 12, 2014 at 2:47 PM, Rajkumar Rajaratnam <
>>>>>>>>>>>> rajkum...@wso2.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Devs,
>>>>>>>>>>>>>
>>>>>>>>>>>>>  I am working on $Subject. Please find the relevant JIRA at
>>>>>>>>>>>>> [1]
>>>>>>>>>>>>>
>>>>>>>>>>>>>  Currently Stratos will assign a floating IP to eth0 if
>>>>>>>>>>>>> *autoAssignIp* property is set to false in cartridge
>>>>>>>>>>>>> definition. AFAIU, stratos is using jclouds API to query the 
>>>>>>>>>>>>> available
>>>>>>>>>>>>> floating IPs, choose one and assign it to the instance. Correct 
>>>>>>>>>>>>> me if this
>>>>>>>>>>>>> is not the case.
>>>>>>>>>>>>>
>>>>>>>>>>>>>  In order to support $Subject, I am proposing the cartridge
>>>>>>>>>>>>> definition as below;
>>>>>>>>>>>>>
>>>>>>>>>>>>>    {    "type":"mysql",   "provider":"data",   "host":"
>>>>>>>>>>>>> apachestratos.org",   "displayName":"MySQL",   
>>>>>>>>>>>>> "description":"MySQL
>>>>>>>>>>>>> Cartridge",   "version":"5.5",   "multiTenant":"false",   "
>>>>>>>>>>>>> portMapping":[    {    "protocol":"http",   "port":"80",   "
>>>>>>>>>>>>> proxyPort":"8280"   }   ],   "deployment":{       },   "
>>>>>>>>>>>>> iaasProvider":[    {    "type":"openstack",   "imageId":"
>>>>>>>>>>>>> RegionOne/1cd412c1-54ce-405f-9894-ce1387073c6c",   "
>>>>>>>>>>>>> networkInterfaces":[    {    "name":"netOne",   "networkUuid":
>>>>>>>>>>>>> "84d52a6d-a9e5-472a-9935-a0e195fe5b4a",   "fixedIp":"10.0.1.4"
>>>>>>>>>>>>> },   {    "name":"netTwo",   "networkUuid":"
>>>>>>>>>>>>> 512e1f54-1e85-4dac-b2e6-f0b30fc552cf",   "publicNetworkUuids"
>>>>>>>>>>>>> :[   {   "name":"externalOne",   "networkUuid":"
>>>>>>>>>>>>> 8f08a69d-cb46-43c9-9ebe-b89dcc78dacc",   },   {   "name":"
>>>>>>>>>>>>> externalTwo",   "networkUuid":"
>>>>>>>>>>>>> b5504321-e7aa-4500-9e00-7bc1b10cb5e9",   }   ]   },   {    "
>>>>>>>>>>>>> name":"netThree",   "networkUuid":"
>>>>>>>>>>>>> b55f009a-1cc6-4b17-924f-4ae0ee18db5e",   "publicNetworkUuids"
>>>>>>>>>>>>> :[   {   "name":"externalThree",   "networkUuid":"
>>>>>>>>>>>>> 83d52a6d-a9e5-572a-9935-a0e195fe5b4r",   }   ]   }   ],   "
>>>>>>>>>>>>> maxInstanceLimit":"4",   "property":[    {    "name":"
>>>>>>>>>>>>> instanceType",   "value":"RegionOne/4"   },   {    "name":"
>>>>>>>>>>>>> keyPair",   "value":"raj"   },   {    "name":"autoAssignIp",
>>>>>>>>>>>>> "value":"false"   }   ]   }   ],   "loadBalancer":{    "type":
>>>>>>>>>>>>> "lb",   "property":{    "name":"no.load.balancer",   "value":"
>>>>>>>>>>>>> true"   }   }   }
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  So, I have introduced some additional elements here in
>>>>>>>>>>>>> networks section. publicNetworkUuids will hold one or many 
>>>>>>>>>>>>> external network
>>>>>>>>>>>>> UUIDs from where you want to select one IP and assign it the 
>>>>>>>>>>>>> corresponding
>>>>>>>>>>>>> interface. Let list me three behaviors, as of now, I have 
>>>>>>>>>>>>> identified.
>>>>>>>>>>>>>
>>>>>>>>>>>>>    1. If *autoAssignIp* property is *true*, stratos will not
>>>>>>>>>>>>>    do anything regarding floating IPs when creating instances for 
>>>>>>>>>>>>> this
>>>>>>>>>>>>>    cartridge. But openstack will assign a floating IP to the 
>>>>>>>>>>>>> instance.
>>>>>>>>>>>>>    2. If *autoAssignIp* property is *false*, and you *don't 
>>>>>>>>>>>>> *specify
>>>>>>>>>>>>>    any publicNetworkUuids for any interface, then stratos will 
>>>>>>>>>>>>> assign a
>>>>>>>>>>>>>    floating IP to the 1st interface
>>>>>>>>>>>>>    3. If *autoAssignIp* property is *false*, and you
>>>>>>>>>>>>>    specify publicNetworkUuids, then stratos will assign floating 
>>>>>>>>>>>>> IPs per
>>>>>>>>>>>>>    interfaces for which you specified publicNetworkUuids. If you 
>>>>>>>>>>>>> specify
>>>>>>>>>>>>>    two publicNetworkUuids for an interface, it will assign two 
>>>>>>>>>>>>> floating IPs to
>>>>>>>>>>>>>    that interface and so on.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  However, I tried to assign two floating IP addresses to an
>>>>>>>>>>>>> interface which resulted in the following error.
>>>>>>>>>>>>>
>>>>>>>>>>>>>  *Error: *409-{u'NeutronError': {u'message': u'Cannot
>>>>>>>>>>>>> associate floating IP 192.168.17.96 
>>>>>>>>>>>>> (5691eb81-3153-4ee1-b9d0-31fc84516b03)
>>>>>>>>>>>>> with port 7e9416ce-5077-44c4-97db-b4b14c10dfc9 using fixed IP 
>>>>>>>>>>>>> 10.0.0.167,
>>>>>>>>>>>>> as that fixed IP already has a floating IP on external network
>>>>>>>>>>>>> ba667f72-7ba8-4b24-b360-b74a0211c83c.', u'type':
>>>>>>>>>>>>> u'FloatingIPPortAlreadyAssociated', u'detail': u''}}
>>>>>>>>>>>>>
>>>>>>>>>>>>>  I guess we can't assign multiple floating IPs to the same
>>>>>>>>>>>>> interface from same network. We would be able to assign multiple 
>>>>>>>>>>>>> floating
>>>>>>>>>>>>> IPs to the same interface from multiple networks. Since I am 
>>>>>>>>>>>>> having only
>>>>>>>>>>>>> one external network, I couldn't test this. Any idea?
>>>>>>>>>>>>>
>>>>>>>>>>>>>  Feel free to share your thoughts.
>>>>>>>>>>>>>
>>>>>>>>>>>>>  1. https://issues.apache.org/jira/browse/STRATOS-698
>>>>>>>>>>>>>
>>>>>>>>>>>>>  Thanks.
>>>>>>>>>>>>>
>>>>>>>>>>>>>  --
>>>>>>>>>>>>>     Raj
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>   --
>>>>>>>>>>>>
>>>>>>>>>>>> Udara Liyanage
>>>>>>>>>>>> Software Engineer
>>>>>>>>>>>> WSO2, Inc.: http://wso2.com
>>>>>>>>>>>> lean. enterprise. middleware
>>>>>>>>>>>>
>>>>>>>>>>>>  web: http://udaraliyanage.wordpress.com
>>>>>>>>>>>>  phone: +94 71 443 6897
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>  --
>>>>>>>>>>>     Raj
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  --
>>>>>>>>>>
>>>>>>>>>> Udara Liyanage
>>>>>>>>>> Software Engineer
>>>>>>>>>> WSO2, Inc.: http://wso2.com
>>>>>>>>>> lean. enterprise. middleware
>>>>>>>>>>
>>>>>>>>>>  web: http://udaraliyanage.wordpress.com
>>>>>>>>>>  phone: +94 71 443 6897
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>>     Raj
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>  --
>>>>>>>>     Raj
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>>     Raj
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>  --
>>>>>>      Rajkumar Rajaratnam
>>>>>>  Committer & PMC Member, Apache Stratos
>>>>>>  Software Engineer, WSO2
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>      Rajkumar Rajaratnam
>>>>>  Committer & PMC Member, Apache Stratos
>>>>>  Software Engineer, WSO2
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Rajkumar Rajaratnam
>>>> Committer & PMC Member, Apache Stratos
>>>> Software Engineer, WSO2
>>>>
>>>
>>>
>>>
>>> --
>>> Rajkumar Rajaratnam
>>> Committer & PMC Member, Apache Stratos
>>> Software Engineer, WSO2
>>>
>>
>>
>>
>> --
>> Rajkumar Rajaratnam
>> Committer & PMC Member, Apache Stratos
>> Software Engineer, WSO2
>>
>
>
>
> --
> Rajkumar Rajaratnam
> Committer & PMC Member, Apache Stratos
> Software Engineer, WSO2
>



-- 
Rajkumar Rajaratnam
Committer & PMC Member, Apache Stratos
Software Engineer, WSO2

Reply via email to