<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>body{font-family:Helvetica,Arial;font-size:13px}</style>
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">
<br>
</div>
<br>
<div id="bloop_sign_1522937411145494016" class="bloop_sign"></div>
<br>
<p class="airmail_on">On April 4, 2018 at 4:21:58 PM, Michał Jastrzębski (<a href="mailto:inc007@gmail.com">inc007@gmail.com</a>) wrote:</p>
<blockquote type="cite" class="clean_bq"><span>
<div>
<div></div>
<div>On 4 April 2018 at 14:45, Brandon Jozsa <bjozsa@jinkit.com> wrote:<br>
> I’ve been a part of the OpenStack-Helm project from the very beginning, and<br>
> there was a lot of early brainstorming on how we could collaborate and<br>
> contribute directly to Kolla-Kubernetes. In fact, this was the original<br>
> intent when we met with Kolla back in Barcelona. We didn’t like the idea of<br>
> fragmenting interested Kubernetes developers/operators in the<br>
> OpenStack-via-Kubernetes space. Whatever the project, we wanted all the<br>
> domain expertise concentrated on a single deployment effort. Even though<br>
> OSH/K-k8s couldn’t reach an agreement on how to handle configmaps (our<br>
> biggest difference from the start), there was a lot of early collaboration<br>
> between the project cores. Early K-k8s contributors may remember Halcyon,<br>
> which cores from both sides promoted for early development of<br>
> OpenStack-via-Kubernetes, regardless of the project.<br>
><br>
> One of the requests from the initial OSH team (in Barcelona) was to formally<br>
> separate Kolla from Kolla-foo deployment projects, both at a project level<br>
> and from a core perspective. Why have the same cores giving +2’s to Kolla,<br>
> Kolla-Ansible, Kolla-Mesos (now dead) and Kolla-Kubernetes, who may not have<br>
> any interest in another given discipline? We wanted reviews to be timely,<br>
> and laser-focused, and we felt that this more atomic approach would benefit<br>
> Kolla in the end. But unfortunately there was heavy resistance with limited<br>
> yet very influential cores. I honestly think pushback was also because it<br>
> would mean that any Kolla sub-projects would be subject to re-acceptance as<br>
> big tent projects.<br>
<br>
Limited, but very influential cores sounds like bad community, and as<br>
it happens I was leading this community at that time, so I feel I<br>
should comment. We would love to increase number of cores (raise a<br>
limit) of images, but that comes with a cost. Cost being that person<br>
who would like to become a core would need to contribute to project in<br>
question and review other people contributions. Proper way to address<br>
this problem would be just that - contributing to Kolla and reviewing<br>
code. If I failed to notice contributions from someone who did that a<br>
lot (I hope I didn't), I'm sorry. This is best and only way to solve<br>
problem in question.<br>
<br>
</div>
</div>
</span></blockquote>
<div><br>
</div>
I think you did the best you could, Michal. As I understand it there are essentially three active projects under Kolla today; Kolla, Kolla-Ansible, Kolla-Kubernetes (and others that have been abandoned or dead), and only Kolla shows up under the project navigator.
I assume this means they are all still under one project umbrella? I think this is a bit of a stretch for a single-project core team, especially since there are fundamental differences between Ansible and Kubernetes.
<div><br>
</div>
<div>So my comment was far less about you or anyone personally as a PTL or core, but really more about the “laser-focused” discipline of the group as a whole. Kolla is the only project I am aware of that has this catch all mission allowing it to be any type
of deployment that consumes Kolla as a base, and it leverages the same resources. In fact, any other container-based OpenStack projects have been met with a bit of a strange resistance. See: https://review.openstack.org/#/c/449224/
<div>
<div><br>
</div>
<div>
<div><br>
</div>
<div>
<div>
<blockquote type="cite" class="clean_bq" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">
<span>
<div>
<div>><br>
> There were also countless discussions about the preservation of the Kolla<br>
> API, or Ansible + Jinja portions of Kolla-Ansible. It became clear to us<br>
> that Kubernetes wasn’t going to be the first class citizen for the<br>
> deployment model in Kolla-Kubernetes, forcing operators to troubleshoot<br>
> between OpenStack, Kolla (container builds), Ansible, Kubernetes, and Helm.<br>
> This is apparent still today. And while I understand the hesitation to<br>
> change Kolla/Kolla-Ansible, I think this code-debt has somewhat contributed<br>
> to sustainability of Kolla-Kubernetes. Somewhat to the point of tension, I<br>
> very much agree with Thierry’s comments earlier.<br>
<br>
How k8s wasn't first class citizen? I don't understand. All processes<br>
were the same, time in PTG was generous compared to ansible etc. More<br>
people uses Ansible due to it's maturity so it's obvious it's going to<br>
have better testing etc, but again, solved by contributions.</div>
</div>
</span></blockquote>
</div>
<p>I’m not talking about at a project level. I think Kolla has done a wonderful job in that respect. All of my comments above are about the mixed-use of technologies leveraged to drive the project. Compare how Kubernetes configmaps are generated for each of
the projects. Then ask yourself what drove that design? Was it simplicity or adherence to previous debt/models?</p>
<p>Technical details like these need to be called out (good/bad/indifferent), and planned for accordingly in the event that the projects do merge at some point. I think this is the most confusing part for new users, because both communities have been asked
countless times “what are the differences between x and y”. I think the suggestion of combining the projects would really benefit OpenStack operators/users.</p>
<div>
<blockquote type="cite" class="clean_bq" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">
<span>
<div>
<div><br>
<br>
> I want all of these projects to succeed but consolidation with purposeful<br>
> and deliberate planning, which Rich has so kindly agreed to do, could be the<br>
> right answer. So I +1 the idea, because I think it puts all like-minded<br>
> individuals on the same focus (for the overall benefit of OpenStack and the<br>
> overall OpenStack community). But we have to make sure there isn’t a lot of<br>
> fallout from the decision either. To Steve Dake's previous point, there<br>
> could be orphaned users/operators who feel “forced” into another project. I<br>
> would hate to see that. It would be nice to at least plan this with the<br>
> user-base and give them fair warning. And to this point, what is the active<br>
> specific Kolla-Kubernetes core? Who is “PTL” of Kolla-Kubernetes today?<br>
<br>
As per election results it's Jeffrey.<br>
<br>
> On the other hand, I think that OSH has some improvements to make as well.<br>
> Gating could use some help and the OpenStack-Infra team has been kindly<br>
> helping out recently (a huge "thank you" to them). Docs…I think docs could<br>
> always use some love. Please offer your experiences to the OSH team! We<br>
> would love to hear your user input. Ultimately, if users/operators want to<br>
> run something that even closely resembles production, then we need some<br>
> decent production quality docs as opposed to leveraging the nascent gate<br>
> scripts (Zuulv3 ansible+heat). Releases and release planning should be<br>
> addressed, as users/vendors are going to want to be closer to OpenStack<br>
> release dates (recent versions of OpenStack, Helm and Kubernetes). Clear and<br>
> open roadmaps, with potential use of community-led planning tools. Open<br>
> elections for PTL. Finally, the OSH team may still be be interested in<br>
> diversifying it’s core-base. Matt M. would have to address this. I know that<br>
> I was actively seeking cores when I was initially PTL, and<br>
> truthfully…there’s nobody nicer or easier to work with than Matt. He’s an<br>
> awesome PTL, and any project would be fortunate to have him. All these<br>
> things could all be improved on, but it requires a diverse base with a lot<br>
> of great ideas.<br>
<br>
Kolla has one of most diverse core team in OpenStack. As I said, all<br>
it takes is valuable reviews to become core.<br>
<br>
> That said, I am in favor of consolidation…if it makes sense and if there's a<br>
> strong argument for it. We just need to think what’s best for the OpenStack<br>
> community as a whole, and put away the positions of the individual projects<br>
> for a moment. To me, that makes things pretty clear, regardless of where the<br>
> commits are going. And with the +1’s, I think we’re hearing you. Now we just<br>
> have to plan it out and take action (on both sides).<br>
><br>
> Brandon<br>
><br>
><br>
> On April 2, 2018 at 11:14:01 AM, Martin André (m.andre@redhat.com) wrote:<br>
><br>
> On Mon, Apr 2, 2018 at 4:38 PM, Steven Dake (stdake) <stdake@cisco.com><br>
> wrote:<br>
>><br>
>><br>
>><br>
>> On April 2, 2018 at 6:00:15 AM, Martin André (m.andre@redhat.com) wrote:<br>
>><br>
>> On Sun, Apr 1, 2018 at 12:07 AM, Steven Dake (stdake) <stdake@cisco.com><br>
>> wrote:<br>
>>> My viewpoint is as all deployments projects are already on an equal<br>
>>> footing<br>
>>> when using Kolla containers.<br>
>><br>
>> While I acknowledge Kolla reviewers are doing a very good job at<br>
>> treating all incoming reviews equally, we can't realistically state<br>
>> these projects stand on an equal footing today.<br>
>><br>
>><br>
>> At the very least we need to have kolla changes _gating_ on TripleO<br>
>> and OSH jobs before we can say so. Of course, I'm not saying other<br>
>> kolla devs are opposed to adding more CI jobs to kolla, I'm pretty<br>
>> sure they would welcome the changes if someone volunteers for it, but<br>
>> right now when I'm approving a kolla patches I can only say with<br>
>> confidence that it does not break kolla-ansible. In that sense,<br>
>> kolla_ansible is special.<br>
>><br>
>> Martin,<br>
>><br>
>> Personally I think all of OpenStack projects that have a dependency or<br>
>> inverse dependency should cross-gate. For example, Nova should gate on<br>
>> kolla-ansible, and at one point I think they agreed to this, if we<br>
>> submitted<br>
>> gate work to do so. We never did that.<br>
>><br>
>> Nobody from TripleO or OSH has submitted gates for Kolla. Submit them and<br>
>> they will follow the standard mechanism used in OpenStack<br>
>> experimental->non-voting->voting (if people are on-call to resolve<br>
>> problems). I don't think gating is relevant to equal footing. TripleO for<br>
>> the moment has chosen to gate on their own image builds, which is fine. If<br>
>> the gating should be enhanced, write the gates :)<br>
>><br>
>> Here is a simple definition from the internet:<br>
>><br>
>> "with the same rights and conditions as someone you are competing with"<br>
>><br>
>> Does that mean if you want to split the kolla repo into 40+ repos for each<br>
>> separate project, the core team will do that? No. Does that mean if there<br>
>> is a reasonable addition to the API the patch would merge? Yes.<br>
>><br>
>> Thats right, deployment tools compete, but they also cooperate and<br>
>> collaborate. The containers (atleast from my perspective) are an area<br>
>> where<br>
>> Kolla has chosen to collaborate. FWIW I also think we have chosen to<br>
>> collobrate a bit in areas we compete (the deployment tooling itself). Its<br>
>> a<br>
>> very complex topic. Splitting the governance and PTLs doesn't change the<br>
>> makeup of the core review team who ultimately makes the decision about<br>
>> what<br>
>> is reasonable.<br>
><br>
> Collaboration is good, there is no question about it.<br>
> I suppose the question we need to answer is "would splitting kolla and<br>
> kolla-ansible further benefit kolla and the projects that consume<br>
> it?". I believe if you look at it from this angle maybe you'll find<br>
> areas that are neglected because they are lower priority for<br>
> kolla-ansible developers.<br>
><br>
>>> I would invite the TripleO team who did integration with the Kolla API to<br>
>>> provide their thoughts.<br>
>><br>
>> The Kolla API is stable and incredibly useful... it's also<br>
>> undocumented. I have a stub for a documentation change that's been<br>
>> collecting dust on my hard drive for month, maybe it's time I brush it<br>
>><br>
>> Most of Kolla unfortunately is undocumented. The API is simple and<br>
>> straightforward enough that TripleO, OSH, and several proprietary vendors<br>
>> (the ones Jeffrey mentioned) have managed to implement deployment tooling<br>
>> that consume the API. Documentation for any part of Kolla would be highly<br>
>> valued - IMO it is the Kolla project's biggest weakness.<br>
>><br>
>><br>
>> up and finally submit it. Today unless you're a kolla developer<br>
>> yourself, it's difficult to understand how to use the API, not the<br>
>> most user friendly.<br>
>><br>
>> Another thing that comes for free with Kolla, the extend_start.sh<br>
>> scripts are for the most part only useful in the context of<br>
>> kolla_ansible. For instance, hardcoding path for log dirs to<br>
>> /var/log/kolla and changing groups to 'kolla'.<br>
>> In TripleO, we've chosen to not depend on the extend_start.sh scripts<br>
>> whenever possible for this exact reason.<br>
>><br>
>> I don't disagree. I was never fond of extend_start, and thought any<br>
>> special<br>
>> operations it provided belong in the API itself. This is why there are<br>
>> mkdir operations and chmod/chown -R operations in the API. The JSON blob<br>
>> handed to the API during runtime is where the API begins and ends. The<br>
>> implementation (what set_cfg.py does with start.sh and extend_start.sh)<br>
>> are<br>
>> not part of the API but part of the API implementation.<br>
><br>
> One could argue that the environment variables we pass to the<br>
> containers to control what extend_start.sh does are also part of the<br>
> API. That's not my point. There is a lot of cruft in these scripts<br>
> that remain from the days where kolla-ansible was the only consumer of<br>
> kolla images.<br>
><br>
>> I don't think I said anywhere the API is perfectly implemented. I'm not<br>
>> sure I've ever seen this mythical perfection thing in an API anyway :)<br>
>><br>
>> Patches are welcome to improve the API to make it more general, as long as<br>
>> they maintain backward compatibility.<br>
>><br>
>><br>
>><br>
>> The other critical kolla feature we're making extensive use of in<br>
>> TripleO is the ability to customize the image in any imaginable way<br>
>> thanks to the template override mechanism. There would be no<br>
>> containerized deployments via TripleO without it.<br>
>><br>
>><br>
>> We knew people would find creative ways to use the plugin templating<br>
>> technology, and help drive adoption of Kolla as a standard...<br>
>><br>
>> Kolla is a great framework for building container images for OpenStack<br>
>> services any project can consume. We could do a better job at<br>
>> advertising it. I guess bringing kolla and kolla-kubernetes under<br>
>> separate governance (even it the team remains mostly the same) is one<br>
>> way to enforce the independence of kolla-the-images project and<br>
>> recognize people may be interested in the images but not the<br>
>> deployment tools.<br>
>><br>
>> One last though. Would you imagine a kolla PTL who is not heavily<br>
>> invested in kolla_ansible?<br>
>><br>
>><br>
>> Do you mean to imply a conflict of interest? I guess I don't understand<br>
>> the<br>
>> statement. Would you clarify please?<br>
><br>
> All I'm saying is that we can't truly claim we've fully decoupled<br>
> Kolla and Kolla-ansible until we're ready to accept someone who is not<br>
> a dedicated contributor to kolla-ansible as kolla PTL. Until then,<br>
> some might rightfully say kolla-ansible is driving the kolla project.<br>
> It's OK, maybe as the kolla community that's what we want, but we<br>
> can't legitimately say all consumers are on an equal footing.<br>
><br>
> Martin<br>
><br>
> __________________________________________________________________________<br>
> OpenStack Development Mailing List (not for usage questions)<br>
> Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev<br>
><br>
><br>
> __________________________________________________________________________<br>
> OpenStack Development Mailing List (not for usage questions)<br>
> Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev<br>
><br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev<br>
</div>
</div>
</span></blockquote>
</div>
</div>
</div>
</div>
</div>
</body>
</html>