Seems like we need someone to step up and document the process of this. I would offer however I am not a coder so I would not get far.
How is "in charge" of documentation of ACS? Regards, Marty Godsey -----Original Message----- From: Matthew Smart [mailto:msm...@smartsoftwareinc.com] Sent: Thursday, September 22, 2016 2:35 PM To: dev@cloudstack.apache.org Subject: Re: [DISCUSS] Replacing the VR Thanks Will. That is the answer I expected tbh. But it never hurts to ask! Matthew Smart President Smart Software Solutions Inc. 108 S Pierre St. Pierre, SD 57501 Phone: (605) 280-0383 Skype: msmart13 Email: msm...@smartsoftwareinc.com On 09/22/2016 01:24 PM, Will Stevens wrote: > Unfortunately there is not much documentation around the network > plugin functionality. When I wrote the Palo Alto integration I > basically figured out how to do it by reviewing existing plugins and just > figuring it out. > > So if you were to begin to implement a new hardware firewall for > example, I would point you to the Palo Alto integration code [1] and > the functional spec [2] and then make myself available to try to > answer any questions you have (like how the NetworkGuru works, where > the different pieces are registered, etc)... > > Unfortunately it is not trivial, mainly because we don't have any > documentation to follow, but the plugin interface IS there. It just > requires people who have worked it in the past to offer guidance. > > [1] > https://github.com/apache/cloudstack/tree/master/plugins/network-eleme > nts/palo-alto > [2] > https://cwiki.apache.org/confluence/display/CLOUDSTACK/Palo+Alto+Firew > all+Integration > > *Will STEVENS* > Lead Developer > > *CloudOps* *| *Cloud Solutions Experts > 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w cloudops.com *|* tw > @CloudOps_ > > On Thu, Sep 22, 2016 at 1:53 PM, Matthew Smart > <msm...@smartsoftwareinc.com> > wrote: > >> Hey Murali, >> >> I have been reading through the API and other documentation to try to >> get a basic understanding of the network service offering abstraction >> methodology in CS. I have not dove into the code yet but before I did >> I thought I would try a different approach. >> >> Imagine I were to come to this list and say that I have a network >> offering that I sell and that I wanted to write whatever I needed to >> in order to integrate it as an offering in CloudStack. Is there some >> specific documentation and guidelines you would direct me to read in >> order to gather the knowledge necessary to create a cloudstack >> compatible interface for my product? >> >> I don't know the history but I see several products that have >> navigated this process (Nuage, Nicira, ...etc) and am wondering how a >> new provider would work with you guys to navigate that process. If >> this is too vague, we can pretend my new offering is a hardware firewall >> device. >> >> My goal here is to gain an understanding of how CS interacts with >> third party offerings underneath the hood. I have some thoughts (I >> think inline with Will Steven's brain dump and diagram) but want to >> make sure I am not suffering some misapprehensions about the >> architecture and, short of tracing code, was not successful at >> finding the information I needed to satisfy myself that I know how it is >> designed. >> >> Thanks, >> >> Matthew Smart >> President >> Smart Software Solutions Inc. >> 108 S Pierre St. >> Pierre, SD 57501 >> >> Phone: (605) 280-0383 >> Skype: msmart13 >> Email: msm...@smartsoftwareinc.com >> >> On 09/20/2016 04:54 AM, Murali Reddy wrote: >> >>> Configuration management of network appliances particularly for >>> Cloud and NFV scenarios is still evolving area. Programmability is >>> the not the strength for even the most popular network operating >>> systems like IOS, JunoS etc. So its not surprising why CloudStack >>> integrates in a archaic way with stock linux for the VR. >>> >>> VR was never integral/hardcoded option in CloudStack. Its always >>> been a plugin. CloudStack network orchestration is well abstracted >>> and designed with vision to compose a network with different set of >>> providers for different services. Yes that vision is not fully >>> realised yet, and we don’t have true service function chains. That would be >>> different discussion topic. >>> >>> I tend to agree with Simon, as alternate/interim option we can take >>> hard look whats causing the problems with current VR integration. >>> Personally, I think it would be easier we take a cue from >>> configuration managers and network configuration solutions out there >>> (for e.g promise theory based Cisco ACI) move to more declarative >>> model of expressing desired state of network configuration. Infact >>> current VR from 4.6, actually holds the desired state per service basis, >>> seems to be in that direction. >>> >>> It does make sense to evaluate new appliances which can provide rich >>> semantics (like programmable API, declarative configuration, >>> versioning, commit/rollback etc), but will need significant >>> engineering effort and time to stabilise. We may make same mistakes >>> with integration of other appliance as well, if we fully don’t >>> understand the nature of the current problems with CloudStack core >>> and service provider interaction and current VR integration. >>> >>> >>> On 16/09/16, 11:59 PM, "Simon Weller" <swel...@ena.com> wrote: >>> >>> I think our other option is to take a real look at what it would >>> take to >>>> fix the VR. In my opinion, a lot of the problems are related to the >>>> monolithic python code base and the fact nothing is actually separated. >>>> >>>> Secondly, the python scripts (and bash scripts) don't use any >>>> established libraries to complete tasks and instead shell out and >>>> run commands that are both hard to track and hard to parse on return. >>>> >>>> >>>> If we daemonized this, used a real api for Agent to VR >>>> communication, used common already existing libraries for the >>>> system service and network interactions and spent a bit of time >>>> separating out code into distinct modules, everything would behave a lot >>>> better. >>>> >>>> >>>> The pain and suffering is due to years and years of patches and >>>> constant shelling out to complete tasks in my opinion. If we spend >>>> time to rethink how we interact with the VR in general and we >>>> abstract the systems and networking stuff and use well known and >>>> stable libraries to do the work, the VR would be much easier to maintain. >>>> >>>> >>>> - Si >>>> >>>> >>>> >>>> >>>> ________________________________ >>>> From: Marty Godsey <ma...@gonsource.com> >>>> Sent: Friday, September 16, 2016 12:24 PM >>>> To: dev@cloudstack.apache.org >>>> Subject: RE: [DISCUSS] Replacing the VR >>>> >>>> So based upon this discussion would it be prudent to wait on VyOS 2.0? >>>> The current VR is giving us issues but would the time invested in >>>> another "solution" be wasted especially if by the time another >>>> option is chose, then coded, then tested, then implemented and >>>> right as that time happened to be when VyOS 2.0 is released. Of >>>> course you said they are just in the scoping range so this could still be >>>> a year or more out. >>>> >>>> Thoughts? >>>> >>>> Regards, >>>> Marty Godsey >>>> nSource Solutions >>>> >>>> -----Original Message----- >>>> From: williamstev...@gmail.com [mailto:williamstev...@gmail.com] On >>>> Behalf Of Will Stevens >>>> Sent: Friday, September 16, 2016 10:31 AM >>>> To: dev@cloudstack.apache.org >>>> Cc: dan...@baturin.org >>>> Subject: Re: [DISCUSS] Replacing the VR >>>> >>>> I just had a quick chat with a couple of the guys over on the VyOS chat. >>>> I have CC'ed one of them in case we have more licensing questions. >>>> >>>> So here is the status with the license "the code inherited from >>>> Vyatta and our modifications from it is GPLv2 (strict, not v2+). >>>> The config reading library is GPLv2 too, so anything that links to is is >>>> GPLv2. >>>> Some auxiliary components we made after the fork are more >>>> permissive, >>>> LGPLv2+ or MIT." >>>> >>>> They are currently in the process of scoping a redesign (VyOS 2.0), >>>> "we are planning a clean rewrite that will solve issues of the >>>> current config system". >>>> This will include the ability to configure via the API. >>>> >>>> If we have more questions for VyOS, they are very friendly and >>>> responsive, so we should be able to get answers. >>>> >>>> *Will STEVENS* >>>> Lead Developer >>>> >>>> *CloudOps* *| *Cloud Solutions Experts >>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w cloudops.com *|* >>>> tw @CloudOps_ >>>> >>>> On Fri, Sep 16, 2016 at 9:37 AM, Syed Ahmed <sah...@cloudops.com> wrote: >>>> >>>> I agree with Will Ilya. There are so many problems with the VR right now. >>>>> Most of the outages we've had recently have somehow involved the VR. >>>>> We set custom iptables rules on the VR which can and have easily >>>>> gone wrong. >>>>> Openswan is broken, Strongswan replacement still needs to be tested. >>>>> VVRP with redundant router still needs work, and not to mention >>>>> the problems we will have when we introduce IPv6 into the whole picture. >>>>> >>>>> I think the spirit of the discussion is to rely on a 3rd party to >>>>> do the networking for us (eg VyOS) and have us handle just the >>>>> orchestration. All the problems that I've described have already >>>>> been solved in VyOS. We also get the advantage of a potential >>>>> wider community to fix and maintain the VR and given our current >>>>> development velocity, it think it totally makes sense to look for >>>>> a 3rd party option. >>>>> >>>>> -Syed >>>>> >>>>> >>>>> On Fri, Sep 16, 2016 at 9:18 AM, Will Stevens >>>>> <wstev...@cloudops.com> >>>>> wrote: >>>>> >>>>> The VR has been biting us far too often recently, which is why we >>>>>> have started looking into alternative implementations. >>>>>> >>>>>> One of the things that is nice about potentially using the VyOS >>>>>> is that >>>>>> >>>>> it >>>>> >>>>>> is based on Debian, so we should be able to run the other >>>>>> services that >>>>>> >>>>> we >>>>> >>>>>> currently have like the password server and userdata on the VyOS. >>>>>> This means we would not have to change our architecture initially >>>>>> and could focus on only replacing the networking paths. >>>>>> >>>>>> *Will STEVENS* >>>>>> Lead Developer >>>>>> >>>>>> *CloudOps* *| *Cloud Solutions Experts >>>>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w cloudops.com >>>>>> *|* tw @CloudOps_ >>>>>> >>>>>> On Fri, Sep 16, 2016 at 6:20 AM, Nux! <n...@li.nux.ro> wrote: >>>>>> >>>>>> The more this is discussed the more I think we should stick with >>>>>>> our >>>>>>> >>>>>> VR. >>>>>> All these other options either seem unfinished or with >>>>>>> incompatible license. >>>>>>> >>>>>>> VyOS looks the most promising so far, it's a serious, mature project. >>>>>>> Adopting it though means we'll have to microservice our way out >>>>>>> of it >>>>>>> >>>>>> with >>>>>> >>>>>>> extra machines for DNS/USERDATA/etc, unless we can make VyOS >>>>>>> serve >>>>>>> >>>>>> those >>>>>> too. Imho this adds complexity we should void. >>>>>>> -- >>>>>>> Sent from the Delta quadrant using Borg technology! >>>>>>> >>>>>>> Nux! >>>>>>> www.nux.ro >>>>>>> >>>>>>> ----- Original Message ----- >>>>>>> >>>>>>>> From: "Will Stevens" <wstev...@cloudops.com> >>>>>>>> To: dev@cloudstack.apache.org >>>>>>>> Sent: Thursday, 15 September, 2016 17:21:28 >>>>>>>> Subject: Re: [DISCUSS] Replacing the VR Ya, we would need to >>>>>>>> add a daemon for VPN as well. Load balancing is another aspect >>>>>>>> which we will need to consider if we went this route. >>>>>>>> Something like https://traefik.io/ could potentially be a good >>>>>>>> fit >>>>>>>> >>>>>>> due >>>>>> to >>>>>>>> its API driven configuration, but it may be more than what we need. >>>>>>>> >>>>>>>> We should probably try define which pieces make sense to be >>>>>>>> solved >>>>>>>> >>>>>>> together >>>>>>> >>>>>>>> and which pieces would be best suited to be broken out. >>>>>>>> >>>>>>>> I think the network connectivity, routing and firewalling >>>>>>>> should >>>>>>>> >>>>>>> probably >>>>>>> all stay together since the majority of the tools we would >>>>>>> potentially >>>>>> use >>>>>>>> would handle all of that together in a single implementation. >>>>>>>> >>>>>>>> The password server and userdata seems like a good option for >>>>>>>> being >>>>>>>> >>>>>>> broken >>>>>>> >>>>>>>> out and handled independently (and probably rewritten >>>>>>>> completely >>>>>>>> >>>>>>> since >>>>>> they >>>>>>>> currently have some issues). >>>>>>>> >>>>>>>> Load balancing is another that could warrant splitting out, but >>>>>>>> that depends on what direction we go and how we would be managing it. >>>>>>>> >>>>>>> DHCP >>>>>> and >>>>>>>> DNS are others which could go either way. >>>>>>>> >>>>>>>> If we do split out services, I think we should consolidate as >>>>>>>> much as >>>>>>>> >>>>>>> we >>>>>>> can into each service we break out. Ideally a network packet >>>>>>>> would >>>>>>>> >>>>>>> never >>>>>>> hit more than one, maybe two, services. I don't think we should >>>>>>>> be splitting services 'just because', I think we need a valid >>>>>>>> case for splitting any service out because it adds complexity. >>>>>>>> Our project is already complex enough, we need to avoid adding >>>>>>>> complexity unless it >>>>>>>> >>>>>>> is >>>>>> really needed. >>>>>>>> Some more of my thoughts on this anyway... >>>>>>>> >>>>>>>> *Will STEVENS* >>>>>>>> Lead Developer >>>>>>>> >>>>>>>> *CloudOps* *| *Cloud Solutions Experts >>>>>>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w cloudops.com >>>>>>>> *|* tw @CloudOps_ >>>>>>>> >>>>>>>> On Thu, Sep 15, 2016 at 10:28 AM, Simon Weller >>>>>>>> <swel...@ena.com> >>>>>>>> >>>>>>> wrote: >>>>>>> I do agree with you that this probably isn't the right place >>>>>>>>> the >>>>>>>>> >>>>>>>> password >>>>>>>> service and user data. >>>>>>>>> >>>>>>>>> Having said that, after taking a cursory look at the dev docs, >>>>>>>>> it >>>>>>>>> >>>>>>>> doesn't >>>>>>>> seem that difficult to add new daemons: >>>>>>>> https://opensnaproute.github. >>>>>> io/docs/developer.html#creating-new-component >>>>>>>>> <https://opensnaproute.github.io/docs/developer.html# >>>>>>>>> creating-new-component> >>>>>>>>> >>>>>>>>> >>>>>>>>> They've definitely build it with a microservices architecture >>>>>>>>> in >>>>>>>>> >>>>>>>> mind, >>>>>> so >>>>>>>> each individual feature is abstracted into it's own small >>>>>>>>> daemon >>>>>>>>> >>>>>>>> process. >>>>>>>> We could just create a daemon for the password server and the >>>>>>>> userdata >>>>>> components if we really had to. >>>>>>>>> >>>>>>>>> - Si >>>>>>>>> >>>>>>>>> >>>>>>>>> ________________________________ >>>>>>>>> From: williamstev...@gmail.com <williamstev...@gmail.com> on >>>>>>>>> behalf >>>>>>>>> >>>>>>>> of >>>>>>> Will Stevens <wstev...@cloudops.com> >>>>>>>>> Sent: Thursday, September 15, 2016 9:17 AM >>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>> Subject: Re: [DISCUSS] Replacing the VR >>>>>>>>> >>>>>>>>> A big part of why I know about it is because it is written in Go. >>>>>>>>> >>>>>>>> :P >>>>>> Yes, it is definitely interesting for the routing and traffic >>>>>>>> handling >>>>>> aspects of the VR. We will likely have to rethink some of the >>>>>>>> pieces >>>>>> a >>>>>> >>>>>>> little bit like the password server and userdata if we are to >>>>>>>>> adopt >>>>>>>>> >>>>>>>> a >>>>>> different VR approach. This is where I think some of JohnB and >>>>>>>> Chiradeep's >>>>>>>> ideas make sense. In many ways, it does not make sense for the >>>>>>>> device >>>>>> handling routing and network traffic to also be responsible for >>>>>>>> passwords >>>>>>>> and userdata. >>>>>>>>> *Will STEVENS* >>>>>>>>> Lead Developer >>>>>>>>> >>>>>>>>> *CloudOps* *| *Cloud Solutions Experts >>>>>>>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w cloudops.com >>>>>>>>> *|* tw @CloudOps_ >>>>>>>>> >>>>>>>>> On Thu, Sep 15, 2016 at 9:10 AM, Simon Weller >>>>>>>>> <swel...@ena.com> >>>>>>>>> >>>>>>>> wrote: >>>>>>> I hadn't heard of Flexswitch until you mentioned it. It looks >>>>>>>>> pretty >>>>>> cool! >>>>>>>>>> It even supports ONIE install. >>>>>>>>>> >>>>>>>>>> To be honest, the ipsec feature could be added, or we could >>>>>>>>>> >>>>>>>>> offload >>>>>> it to >>>>>>>> separate vm if we needed to. The fact it is so feature rich >>>>>>>>>> from a >>>>>>>>>> >>>>>>>>> routing >>>>>>>>> >>>>>>>>>> perspective (and all API driven) is really nice. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Based on the roadmap, it looks like they plan to also support >>>>>>>>>> >>>>>>>>> capabilities >>>>>>>>> >>>>>>>>>> such as BGP-MPLS based L3VPN, EVPN, VPLS in the future. This >>>>>>>>>> will >>>>>>>>>> >>>>>>>>> be >>>>>> huge >>>>>>>> for our carrier community that rely on these technologies to >>>>>>>>>> do >>>>>>>>>> >>>>>>>>> private >>>>>>>> gateway and inter-VPC interconnections today. We handle this >>>>>>>>>> stuff >>>>>>>>>> >>>>>>>>> on >>>>>>> our >>>>>>> >>>>>>>> ASRs right now with a vlan interconnect into the VR. Being >>>>>>>>>> able to >>>>>>>>>> >>>>>>>>> do >>>>>>> MPLS >>>>>>>>>> all the way to the VR would be awesome. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> It also seems to be written in GO (a language here at ENA we >>>>>>>>>> know >>>>>>>>>> >>>>>>>>> very >>>>>>> well). >>>>>>>>>> >>>>>>>>>> - Si >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ________________________________ >>>>>>>>>> From: Will Stevens <williamstev...@gmail.com> >>>>>>>>>> Sent: Thursday, September 15, 2016 7:06 AM >>>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>>> Subject: RE: [DISCUSS] Replacing the VR >>>>>>>>>> >>>>>>>>>> Ya. I don't think it covers our whole use case, but what it >>>>>>>>>> does >>>>>>>>>> >>>>>>>>> cover is >>>>>>>> all api driven... >>>>>>>>>> On Sep 15, 2016 1:48 AM, "Marty Godsey" <ma...@gonsource.com> >>>>>>>>>> >>>>>>>>> wrote: >>>>>>> Though I don’t see VPN in Snaproute.. Makes sense since it >>>>>>>>>>> was >>>>>>>>>>> >>>>>>>>>> not >>>>>> intended to do IPSec. >>>>>>>>>>> It seems as though VyOS is starting to look like the best >>>>>>>>>>> >>>>>>>>>> option. >>>>>> Regards, >>>>>>>>>>> Marty Godsey >>>>>>>>>>> nSource Solutions >>>>>>>>>>> >>>>>>>>>>> -----Original Message----- >>>>>>>>>>> From: williamstev...@gmail.com >>>>>>>>>>> [mailto:williamstev...@gmail.com >>>>>>>>>>> >>>>>>>>>> ] >>>>>> On >>>>>> >>>>>>> Behalf Of Will Stevens >>>>>>>>>>> Sent: Wednesday, September 14, 2016 11:06 PM >>>>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>>>> Subject: Re: [DISCUSS] Replacing the VR >>>>>>>>>>> >>>>>>>>>>> Or we could go completely crazy and go with something like >>>>>>>>>>> >>>>>>>>>> FlexSwitch >>>>>>>> from >>>>>>>>>>> SnapRoute >>>>>>>>>>> - http://www.snaproute.com/ >>>>>>>>>>> - https://opensnaproute.github.io/docs/apis.html >>>>>>>>>>> >>>>>>>>>>> *Will STEVENS* >>>>>>>>>>> Lead Developer >>>>>>>>>>> >>>>>>>>>>> *CloudOps* *| *Cloud Solutions Experts >>>>>>>>>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w >>>>>>>>>>> cloudops.com >>>>>>>>>>> >>>>>>>>>> *|* >>>>>>> tw >>>>>>> >>>>>>>> @CloudOps_ >>>>>>>>>>> On Wed, Sep 14, 2016 at 10:55 PM, Will Stevens < >>>>>>>>>>> >>>>>>>>>> wstev...@cloudops.com> >>>>>>>> wrote: >>>>>>>>>>> I tend to agree with Syed and Marty. I am not sure what >>>>>>>>>>> problems >>>>>>> are >>>>>>> >>>>>>>> solved by splitting up the function of the VR into a >>>>>>>>>>>> bunch of >>>>>>>>>>>> >>>>>>>>>>> separate >>>>>>>>>> services. As Syed points out, the complexity added is >>>>>>>>>>> non-trivial. >>>>>>>> We now have to manage all the intercontainer networking >>>>>>>>>>>> as >>>>>>>>>>>> >>>>>>>>>>> well >>>>>> as >>>>>> >>>>>>> the >>>>>>>>>> orchestrated ACS networking. >>>>>>>>>>>> VyOS is interesting to me because it covers the majority of >>>>>>>>>>>> >>>>>>>>>>> our >>>>>> use >>>>>>>> case with a single unified control plane. It also has >>>>>>>>>>>> good >>>>>>>>>>>> >>>>>>>>>>> support >>>>>>>> for extending features we care about, like IPv6, VXLAN, >>>>>>>>>>>> VRRP, transactions, etc... >>>>>>>>>>>> >>>>>>>>>>>> *Will STEVENS* >>>>>>>>>>>> Lead Developer >>>>>>>>>>>> >>>>>>>>>>>> *CloudOps* *| *Cloud Solutions Experts >>>>>>>>>>>> 420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6 w >>>>>>>>>>>> >>>>>>>>>>> cloudops.com >>>>>> *|* >>>>>>>> tw >>>>>>>>>> @CloudOps_ >>>>>>>>>>>> On Wed, Sep 14, 2016 at 9:49 PM, Syed Ahmed < >>>>>>>>>>>> >>>>>>>>>>> sah...@cloudops.com> >>>>>>> wrote: >>>>>>>>>>> Agree with Marty, adding Docker containers to the >>>>>>>>>>>>> picture >>>>>>>>>>>>> >>>>>>>>>>>> although >>>>>>>> can make the VR more flexible but the added complexity >>>>>>>>>>>>> is >>>>>>>>>>>>> >>>>>>>>>>>> just >>>>>> not >>>>>>>> worth it. Not to mention we would need to take care of >>>>>>>>>>>> networking >>>>>>> each container manually and given that our iptable rules >>>>>>>>>>>>> are >>>>>>>>>>>>> >>>>>>>>>>>> very >>>>>>> unstable at the moment I don't see a big value add. >>>>>>>>>>>>> Vyos looks like a better solution to me. I know that it >>>>>>>>>>>>> does >>>>>>>>>>>>> >>>>>>>>>>>> not >>>>>>> provide an api but it does fit the bill quite well >>>>>>>>>>>> otherwise. I >>>>>> specially like the fact that it has a transaction based >>>>>>>>>>>>> model >>>>>>>>>>>>> >>>>>>>>>>>> and >>>>>>> you >>>>>>>>>> can rollback changes if something goes wrong. >>>>>>>>>>>>> On Wed, Sep 14, 2016 at 9:06 PM Marty Godsey < >>>>>>>>>>>>> >>>>>>>>>>>> ma...@gonsource.com> >>>>>>>> wrote: >>>>>>>>>>>> Licensing aside, I think splitting the various >>>>>>>>>>>>>> functions >>>>>>>>>>>>>> >>>>>>>>>>>>> into >>>>>> containers is not a good route either. This will force >>>>>>>>>>>>> users >>>>>> to >>>>>> >>>>>>> have to maintain >>>>>>>>>>>>> and >>>>>>>>>>>>> >>>>>>>>>>>>>> use containers and adds complexity to the networking >>>>>>>>>>>>>> >>>>>>>>>>>>> aspects >>>>>> of >>>>>> >>>>>>> ACS. >>>>>>>>>> Complexity decreases stability. Now I understand the >>>>>>>>>>>>> argument >>>>>> that >>>>>>>> a monolithic approach also brings its own set of >>>>>>>>>>>>>> issues but >>>>>>>>>>>>>> >>>>>>>>>>>>> it >>>>>>> also >>>>>>>>>> simplifies it. >>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>> Marty Godsey >>>>>>>>>>>>>> nSource Solutions >>>>>>>>>>>>>> >>>>>>>>>>>>>> -----Original Message----- >>>>>>>>>>>>>> From: Chiradeep Vittal [mailto:chirade...@gmail.com] >>>>>>>>>>>>>> Sent: Wednesday, September 14, 2016 5:37 PM >>>>>>>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>>>>>>> Subject: Re: [DISCUSS] Replacing the VR >>>>>>>>>>>>>> >>>>>>>>>>>>>> I rather doubt that the Cloudrouter will fit the needs of >>>>>>>>>>>>>> >>>>>>>>>>>>> the >>>>>> CloudStack project >>>>>>>>>>>>>> - it is AGPL licensed. Many enterprises will not touch >>>>>>>>>>>>>> >>>>>>>>>>>>> anything >>>>>>>> that >>>>>>>>>>>>> has >>>>>>>>>>>>> >>>>>>>>>>>>>> AGPL >>>>>>>>>>>>>> - the github repo shows rather infrequent updates. >>>>>>>>>>>>>> Quite >>>>>>>>>>>>>> >>>>>>>>>>>>> likely >>>>>>>> they aren't considering the use cases of the >>>>>>>>>>>>>> CloudStack >>>>>>>>>>>>>> >>>>>>>>>>>>> community >>>>>>>> I'd back John B's comments on disaggregating the VR. >>>>>>>>>>>>>> Split >>>>>>>>>>>>>> >>>>>>>>>>>>> it >>>>>> into >>>>>>>> many docker containers >>>>>>>>>>>>>> - password server >>>>>>>>>>>>>> - userdata server >>>>>>>>>>>>>> - DHCP / DNS >>>>>>>>>>>>>> - s2s VPN >>>>>>>>>>>>>> - RA VPN >>>>>>>>>>>>>> - intra-VPC routing and ACL >>>>>>>>>>>>>> - Port forwarding + NAT >>>>>>>>>>>>>> - FW >>>>>>>>>>>>>> - LB (public) >>>>>>>>>>>>>> - LB (internal), >>>>>>>>>>>>>> - secondary storage >>>>>>>>>>>>>> - agent >>>>>>>>>>>>>> Glue them together with docker compose files (one per >>>>>>>>>>>>>> use >>>>>>>>>>>>>> >>>>>>>>>>>>> case - >>>>>>>> basic zone, isolated, VPC, SSVM, etc). >>>>>>>>>>>>>> The VR image then becomes a JeOS + docker. You can test >>>>>>>>>>>>>> >>>>>>>>>>>>> each >>>>>> of >>>>>> >>>>>>> the >>>>>>>>>> components independently and fixing one bug in the >>>>>>>>>>>>>> field >>>>>>>>>>>>>> >>>>>>>>>>>>> (say >>>>>> DHCP) >>>>>>>>>> is hitless to the other components. You don't need to >>>>>>>>>>>>>> build per-hypervisor VRs. You could even run on baremetal. >>>>>>>>>>>>>> >>>>>>>>>>>>>> Along the way you need to figure out how to >>>>>>>>>>>>>> - make the traffic traverse the containers that are >>>>>>>>>>>>>> needed >>>>>>>>>>>>>> >>>>>>>>>>>>> to >>>>>>> be >>>>>>> >>>>>>>> traversed (in most cases just 1) >>>>>>>>>>>>>> - bootstrap the router (how does it find its compose file? >>>>>>>>>>>>>> >>>>>>>>>>>>> where >>>>>>>> is the >>>>>>>>>>>>>> registry?) >>>>>>>>>>>>>> - rethink the command and control of the VR functions. >>>>>>>>>>>>>> SSH >>>>>>>>>>>>>> >>>>>>>>>>>>> works, >>>>>>>> but something more declarative, idempotent should be >>>>>>>>>>>>> explored. >>>>>>> As you do this, it becomes clearer which of the >>>>>>>>>>>>>> functions >>>>>>>>>>>>>> >>>>>>>>>>>>> can >>>>>> be >>>>>>>> substituted by for example CloudRouter. Command and >>>>>>>>>>>>>> Control >>>>>>>>>>>>>> >>>>>>>>>>>>> of >>>>>>> the >>>>>>> >>>>>>>> docker >>>>>>>>>>>>>> containers can be moved out to another container. Etc. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Wed, Sep 14, 2016 at 12:59 AM, Marty Godsey >>>>>>>>>>>>>> <ma...@gonsource.com> >>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>> This one does look nice. My biggest concern is the >>>>>>>>>>>>>>> lack >>>>>>>>>>>>>>> >>>>>>>>>>>>>> of >>>>>> VXLANs. It seems that any of the ones we mentioned >>>>>>>>>>>>>>> do not >>>>>>>>>>>>>>> >>>>>>>>>>>>>> have >>>>>>>> an >>>>>>>>>> API so we may be stuck at the SSH method. >>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>> Marty Godsey >>>>>>>>>>>>>>> nSource Solutions >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -----Original Message----- >>>>>>>>>>>>>>> From: Abhinandan Prateek >>>>>>>>>>>>>>> [mailto:abhinandan.prat...@shapeblue.com] >>>>>>>>>>>>>>> Sent: Wednesday, September 14, 2016 2:26 AM >>>>>>>>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>>>>>>>> Subject: Re: [DISCUSS] Replacing the VR >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Cloudrouter looks promising. These have potential to >>>>>>>>>>>>>>> save >>>>>>>>>>>>>>> >>>>>>>>>>>>>> future >>>>>>>> engineering effort for example on ipv6 routing, OSPF etc. >>>>>>>>>>>>>>> And the best part is they come with test automation >>>>>>>>>>>>>>> >>>>>>>>>>>>>> framework. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On 13/09/16, 4:22 PM, "Jayapal Uradi" >>>>>>>>>>>>>>> <jayapal.ur...@accelerite.com> >>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>> Instead of replacing the VR in first place we should >>>>>>>>>>>>>>>> add VyOS/cloudrouter >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> as provider. Once it is stable, network offerings (on >>>>>>>>>>>>>>> >>>>>>>>>>>>>> upgrade) >>>>>>>> can be updated to use it and we can drop the VR if >>>>>>>>>>>>>>> we >>>>>>>>>>>>>>> >>>>>>>>>>>>>> want >>>>>> at >>>>>> >>>>>>> that release >>>>>>>>>>>>>> onwards. >>>>>>>>>>>>>> >>>>>>>>>>>>>>> VR is stabilized over a period of time and some of >>>>>>>>>>>>>>>> them >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> are >>>>>>> running >>>>>>>>>>>>>>> without issues. When we replicate the ACS VR features >>>>>>>>>>>>>>> in >>>>>>>>>>>>>>> >>>>>>>>>>>>>> new >>>>>>> solution it takes some to find the missing pieces >>>>>>>>>>>>>>> (hidden >>>>>>>>>>>>>>> >>>>>>>>>>>>>> bugs). >>>>>>>> Thanks, >>>>>>>>>>>>>>>> Jayapal >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Sep 13, 2016, at 2:52 PM, Nux! < >>>>>>>>>>>>>>>>> n...@li.nux.ro> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> I like the idea. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Cloudrouter looks really promising, I'm not too keen >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> on >>>>>> VyOS >>>>>>>> (it >>>>>>>>>>>>>>>> doesn't have a proper http api etc). >>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> Sent from the Delta quadrant using Borg technology! >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Nux! >>>>>>>>>>>>>>>>> www.nux.ro >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> abhinandan.prat...@shapeblue.com >>>>>>>>>>>>>>> www.shapeblue.com<http://www.shapeblue.com> >>>>>>>>>>>>>>> 53 Chandos Place, Covent Garden, London WC2N 4HSUK >>>>>>>>>>>>>>> >>>>>>>>>>>>>> @shapeblue >>>>>>>>>>>>>>> ----- Original Message ----- >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> From: "Will Stevens" <williamstev...@gmail.com> >>>>>>>>>>>>>>>>>> To: dev@cloudstack.apache.org >>>>>>>>>>>>>>>>>> Sent: Monday, 12 September, 2016 21:20:11 >>>>>>>>>>>>>>>>>> Subject: [DISCUSS] Replacing the VR >>>>>>>>>>>>>>>>>> *Disclaimer:* This is a thought experiment and should >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> be >>>>>>> treated as >>>>>>>>>>>>>>>>> such. >>>>>>>>>>>>>>>> Please weigh in with the good and bad of this idea... >>>>>>>>>>>>>>>>>> A couple of us have been discussing the idea of >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> potentially >>>>>>>> replacing the ACS VR with the VyOS [1] (Open >>>>>>>>>>>>>>>>>> Source >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Vyatta >>>>>>>> VM). >>>>>>>>>>> There may be a license issue because I think it >>>>>>>>>>>>>>>>>> is >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> licensed >>>>>>>> under GPL, but for the sake of discussion, let's >>>>>>>>>>>>>>>>> assume >>>>>> we >>>>>>>> can overcome any >>>>>>>>>>>>>>>>> license issues. >>>>>>>>>>>>>>>> I have spent some time recently with the VyOS >>>>>>>>>>>>>>>>>> and I >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> have >>>>>>> to >>>>>>> >>>>>>>> admit, I was pretty impressed. It is simple and >>>>>>>>>>>>>>>>> intuitive >>>>>>>> and it gives you a lot more options for auditing >>>>>>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> configuration etc... >>>>>>>>>>>> Items of potential interest: >>>>>>>>>>>>>>>>>> - Clean up our current VR script spaghetti to a >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> simpler >>>>>> more >>>>>>>> auditable configuration workflow. >>>>>>>>>>>>>>>>>> - Gives a cleaner path for IPv6 support. >>>>>>>>>>>>>>>>>> - Handles VPN configuration via the same >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> configuration >>>>>> interface. >>>>>>>>>>