No problem Franck! I will postpone this week's meeting to next week and we
can continue the discussion on the ML.

Patrick

On Thu, Sep 24, 2020 at 9:23 AM <franck.de...@orange.com> wrote:

> I can share Orange’s view of the situation, sorry it is a long story!
>
> We started CassKop at the end of 2018 after betting on K8S which was not
> so simple as far as C* was concerned.
> Lack of support for local storage, IPs that change all the time, different
> network plugins to try to implement a non standard K8s way of having nodes
> see each other from different dcs…
> We hesitated with Mesos but could not have both and K8S was already
> tracting so much you could not not choose it.
>
> Anyway, we looked around and did not see anyone with such requirements so
> we said: why not try it ourselves but on github so that we may give it back
> to the community.
> We have used C* for quite a few years with great success on production
> with massive load and perfect availability. We love C* @ Orange :) Thanks!
>
> So we started writing support for mono-dc cluster (CassKop) and added the
> multi dc support with MultiCassKop which is another operator included in
> the CassKop repo.
> For more details we tried to document our designs as much as possible
> here:
> https://orange-opensource.github.io/casskop/docs/1_concepts/3_design_principes#multi-site-management
>
> In the middle of last year we had some talks with Datastax about working
> together around their new management sidecar. Their position on open source
> was not clear at that time so we said please come back when you have
> decided to go open source with it.
> Which they did in the beginning of this year. But at that time I guess
> work had started on cass-operator so we kept our separate ways.
>
> Since the beginning of the years, we have been working with our OPS team
> to have it in production. It is not simple as the team has to learn K8S and
> trust a newborn operator.
> This takes time especially as our internal cluster has been tweaked for
> multi-tenancy with obscure options being set by our K8s team…
>
> We also developed with Instaclustr the Backup & Restore functionnality (we
> have new CRDs (Custom Resource Definition) for backup and restore and a
> reconcile loop that calls out Instaclustr sidecar for these operations).
> We now support multiple backups in parallel and can write to s3/ google or
> azur (but Stefan could give more details here if needed)
>
> During the SIG calls we mentioned our desire to donate CassKop once it
> satisfies our basics requirements (v1 coming just now but I said it too
> many times already)
> I am actually not sure Datastax mentioned their desire to donate
> cass-operator but we decided to compare the designs and the functionalities
> based on respective CRDs.
> The CRD is the interface with the user as it is where you describe the
> cluster that you want to have.
> These talks were very interesting and we found out that the CassKop team
> had made good choices most of the time but was may be too open.
> Indeed our intention was to give all the possibilities for our OPS team to
> work.
> This includes :
> - very open topology definition using any configuration of labels to map
> dcs / racks and nodes to labels on clusters (we have labels on dcs / rooms
> / rows and server racks so we can map C* racks to storage or network arrays
> internaly)
> - possibility to have multiple C* nodes on a single K8S host (because
> internal clouds are not really clouds, they have limited resources)
> - custom C* image selection,
> - custom bootstrap script that lets you configure C* as you want using
> ConfigMaps,
> -  the ability to mount different volumes wherever they wanted,
> -  the possibility to run any number of sidecars alongside C* for custom
> probes in our case
>
> This makes CassKop quite powerful and flexible.
> We made sure that all those options are not enabled by default so one can
> just pop a simple 3 node cluster quickly
>
> On the other hand cass-operator had an interesting way of configuring C*
> just inside the CRD using cass-config. This is simple and elegant so we are
> implementing it as well for the support of C* 4
>
> Now for the future, there are 3 choices in my opinion:
> - start from scratch (or John’s repo) by cherry picking bits from all
> operators. This is possible but will take some time / effort to have
> something usable. And then it will be compared to cass-operator and CassKop.
> I don’t see Orange contributing too much here as we believe CassKop to be
> a much better starting point
> - choose cass-operator: it is not on offer right now so let’s see if it
> does. I think Orange could contribute some bits inherited from CassKop if
> it is agreed by the community. Not sure it would be enough for us to use it.
> - choose CassKop: we would be delighted to donate it and contribute with
> some committers (including the original author who now works for AWS). It
> would then become the community operator but there would be cass-operator
> alongside probably.
> But Cass-operator is made to make it easier for Datastax to manage
> customer clusters by imposing some configuration. It make sense for their
> needs, so may be 2 operators. We don’t know how backup/restore will be
> handled here with medusa being adapted to K8s
>
> Sorry again for being long but 2 years of work deserve some lines of text
> :)
>
> I just saw your message Patrick but this was written already so we gain a
> week.
>
> Franck
>
> On 24 Sep 2020, at 10:08, Benjamin Lerer <benjamin.le...@datastax.com
> <mailto:benjamin.le...@datastax.com>> wrote:
>
>
> I realise there are meeting logs, but getting a wider discourse with
> non-stakeholder input might help to build a community consensus?  It
> doesn't seem like it can hurt at this point, anyway.
>
>
> +1
>
>
>
> On Wed, Sep 23, 2020 at 9:21 PM Benedict Elliott Smith <
> bened...@apache.org<mailto:bened...@apache.org>>
> wrote:
>
> Perhaps it helps to widen the field of discussion to the dev list?
>
> It might help if each of the stakeholder organisations state their view on
> the situation, including why they would or would not support a given
> approach/operator, and what (preferably specific) circumstances might lead
> them to change their mind?
>
> I realise there are meeting logs, but getting a wider discourse with
> non-stakeholder input might help to build a community consensus?  It
> doesn't seem like it can hurt at this point, anyway.
>
>
> On 23/09/2020, 17:13, "John Sanda" <john.sa...@gmail.com<mailto:
> john.sa...@gmail.com>> wrote:
>
>    I want to point out that pretty much everything being  discussed in
> this
>    thread has been discussed at length during the SIG meetings. I think
> it is
>    worth noting because we are pretty much still have the same
> conversation.
>
>    On Wed, Sep 23, 2020 at 12:03 PM Benedict Elliott Smith <
> bened...@apache.org<mailto:bened...@apache.org>>
>    wrote:
>
> I don't think there's anything about a code drop that's not "The
> Apache
> Way"
>
> If there's a consensus (or even strong majority) amongst invested
> parties,
> I don't see why we could not adopt an operator directly into the
> project.
>
> It's possible a green field approach might lead to fewer hard
> feelings, as
> everyone is in the same boat. Perhaps all operators are also
> suboptimal and
> could be improved with a rewrite? But I think coordinating a lot of
> different entities around an empty codebase is particularly
> challenging.  I
> actually think it could be better for cohesion and collaboration to
> have a
> suboptimal but substantive starting point.
>
>
> On 23/09/2020, 16:11, "Stefan Miklosovic" <
> stefan.mikloso...@instaclustr.com<mailto:stefan.mikloso...@instaclustr.com>>
> wrote:
>
>    I think that from Instaclustr it was stated quite clearly
> multiple
>    times that we are "fine to throw it away" if there is something
> better
>    and more wide-spread.Indeed, we have invested a lot of time in
> the
>    operator but it was not useless at all, we gained a lot of quite
>    unique knowledge how to put all pieces together. However, I
> think that
>    this space is going to be quite fragmented and "balkanized",
> which is
>    not always a bad thing, but in a quite narrow area as Kubernetes
>    operator is, I just do not see how 4 operators are going to be
>    beneficial for ordinary people ("official" from community, ours,
>    Datastax one and CassKop (without any significant order)). Sure,
>    innovation and healthy competition is important but to what
> extent ...
>    One can start a Cassandra cluster on Kubernetes just so many
> times
>    differently and nobody really likes a vendor lock-in. People
> wanting
>    to run a cluster on K8S realise that there are three operators,
> each
>    backed by a private business entity, and the community operator
> is not
>    there ... Huh, interesting ... One may even start to question
> what is
>    wrong with these folks that it takes three companies to build
> their
>    own solution.
>
>    Having said that, to my perception, Cassandra community just
> does not
>    have enough engineers nor contributors to keep 4 operators alive
> at
>    the same time (I wish I was wrong) so the idea of selecting the
> best
>    one or to merge obvious things and approaches together is
>    understandable, even if it meant we eventually sunset ours. In
>    addition, nobody from big players is going to contribute to the
> code
>    base of the other one, for obvious reasons, so channeling and
>    directing this effort into something common for a community
> seems to
>    be the only reasonable way of cooperation.
>
>    It is quite hard to bootstrap this if the donation of the code
> in big
>    chunks / whole repo is out of question as it is not the "Apache
> way"
>    (there was some thread running here about this in more depth a
> while
>    ago) and we basically need to start from scratch which is quite
>    demotivating, we are just inventing the wheel and nobody is up
> to it.
>    It is like people are waiting for that to happen so they can
> jump in
>    "once it is the thing" but it will never materialise or at least
> the
>    hurdle to kick it off is unnecessarily high. Nobody is going to
> invest
>    in this heavily if there is already a working operator from
> companies
>    mentioned above. As I understood it, one reason of not choosing
> the
>    way of donating it all is that "the learning and community
> building
>    should happen in organic manner and we just can not accept the
>    donation", but is not it true that it is easier to build a
> community
>    around something which is already there rather than trying to
> build it
>    around an idea which is quite hard to dedicate to?
>
>    On Wed, 23 Sep 2020 at 15:28, Joshua McKenzie <
> jmcken...@apache.org<mailto:jmcken...@apache.org>>
> wrote:
>
> I think there's significant value to the community in trying
> to
> coalesce
> on a single approach,
> I agree. Unfortunately in this case, the parties with a vested
> interest and
> written operators came to the table and couldn't agree to
> coalesce
> on a
> single approach. John Sanda attempted to start an initiative to
> write a
> best-of-breed combining choice parts of each operator, but that
> effort did
> not gain traction.
>
> Which is where my hypothesis comes from that if there were a
> clear
> "better
> fit" operator to start from we wouldn't be in a deadlock; the
> correct
> choice would be obvious. Reasonably so, every engineer that's
> written
> something is going to want that something to be used and not
> thrown
> away in
> favor of another something without strong evidence as to why
> that's
> the
> better choice.
>
> As far as I know, nobody has made a clear case as to a more
> compelling
> place to start in terms of an operator donation the project
> then
> collaborates on. There's no mass adoption evidence nor feature
> enumeration
> that I know of for any of the approaches anyone's taken, so the
> discussions
> remain stalled.
>
>
>
> On Wed, Sep 23, 2020 at 7:18 AM, Benedict Elliott Smith <
> bened...@apache.org<mailto:bened...@apache.org>
> wrote:
>
> I think there's significant value to the community in trying
> to
> coalesce
> on a single approach, earlier than later. This is an
> opportunity
> to expand
> the number of active organisations involved directly in the
> Apache
> Cassandra project, as well as to more quickly expand the
> project's
> functionality into an area we consider urgent and important.
> I
> think it
> would be a real shame to waste this opportunity. No doubt it
> will
> be hard,
> as organisations have certain built-in investments in their
> own
> approaches.
>
> I haven't participated in these calls as I do not consider
> myself
> to have
> the relevant experience and expertise, and have other
> focuses on
> the
> project. I just wanted to voice a vote in favour of trying to
> bring the
> different organisations together on a single approach if
> possible.
> Is there
> anything the project can do to help this happen?
>
> On 23/09/2020, 03:04, "Ben Bromhead" <b...@instaclustr.com<mailto:
> b...@instaclustr.com>>
> wrote:
>
> I think there is certainly an appetite to donate and
> standardise
> on a
> given operator (as mentioned in this thread).
>
> I personally found the SIG hard to participate in due to time
> zones and
> the synchronous nature of it.
>
> So while it was a great forum to dive into certain details
> for a
> subset of
> participants and a worthwhile endeavour, I wouldn't paint it
> as an
> accurate
> reflection of community intent.
>
> I don't think that any participants want to continue down
> the path
> of "let
> a thousand flowers bloom". That's why we are looking towards
> CasKop (as
> well as a number of technical reasons).
>
> Some of the recorded meetings and outputs can also be found
> if you
> are
> interested in some primary sources
> https://cwiki.apache.org/confluence/display/CASSANDRA/
> Cassandra+Kubernetes+Operator+SIG
> .
>
> From what I understand second-hand from talking to people on
> the
> SIG
> calls,
>
> there was a general inability to agree on an existing
> operator as a
> starting point and not much engagement on taking best of
> breed
> from the
> various to combine them. Seems to leave us in the "let a
> thousand
> flowers
> bloom" stage of letting operators grow in the ecosystem and
> seeing
> which
> ones meet the needs of end users before talking about
> adopting one
> into the
> foundation.
>
> Great to hear that you folks are joining forces though!
> Bodes well
> for C*
> users that are wanting to run things on k8s.
>
> On Tue, Sep 22, 2020 at 4:26 AM, Ben Bromhead <
> b...@instaclustr.com<mailto:b...@instaclustr.com>
>
> wrote:
>
> For what it's worth, a quick update from me:
>
> CassKop now has at least two organisations working on it
> substantially
> (Orange and Instaclustr) as well as the numerous other
> contributors.
>
> Internally we will also start pointing others towards CasKop
> once
> a few
> things get merged. While we are not yet sunsetting our
> operator
> yet, it
>
> is
>
> certainly looking that way.
>
> I'd love to see the community adopt it as a starting point
> for
> working
> towards whatever level of functionality is desired.
>
> Cheers
>
> Ben
>
> On Fri, Sep 11, 2020 at 2:37 PM John Sanda <
> john.sa...@gmail.com>
> wrote:
>
> On Thu, Sep 10, 2020 at 5:27 PM Josh McKenzie <
> jmcken...@apache.org>
> wrote:
>
> There's basically 1 java driver in the C* ecosystem. We have
> 3? 4?
> or
>
> more
>
> operators in the ecosystem. Has one of them hit a clear
> supermajority of
> adoption that makes it the de facto default and makes sense
> to
> pull it
>
> into
>
> the project?
>
> We as a project community were pretty slow to move on
> building a
> PoV
>
> around
>
> kubernetes so we find ourselves in a situation with a bunch
> of
> contenders
> for inclusion in the project. It's not clear to me what
> heuristics
> we'd
>
> use
>
> to gauge which one would be the best fit for inclusion
> outside
> letting
> community adoption speak.
>
> ---
> Josh McKenzie
>
> We actually talked a good bit on the SIG call earlier today
> about
> heuristics. We need to document what functionality an
> operator
> should
> include at level 0, level 1, etc. We did discuss this a good
> bit
> during
> some of the initial SIG meetings, but I guess it wasn't
> really a
> focal
> point at the time. I think we should also provide references
> to
> existing
> operator projects and possibly other related projects. This
> would
> benefit
> both community users as well as people working on these
> projects.
>
> - John
>
> --
>
> Ben Bromhead
>
> Instaclustr | www.instaclustr.com | @instaclustr
> <http://twitter.com/instaclustr> | (650) 284 9692
>
> --
>
> Ben Bromhead
>
> Instaclustr | www.instaclustr.com | @instaclustr
> <http://twitter.com/instaclustr> | (650) 284 9692
>
>
>
> --------------------------------------------------------------------- To
> unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For
> additional
> commands, e-mail: dev-h...@cassandra.apache.org
>
>
>
> ---------------------------------------------------------------------
>    To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
>    For additional commands, e-mail: dev-h...@cassandra.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: dev-h...@cassandra.apache.org
>
> --
>
>    - John
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: dev-h...@cassandra.apache.org
>
>
>
>
>
> _________________________________________________________________________________________________________________________
>
> Ce message et ses pieces jointes peuvent contenir des informations
> confidentielles ou privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez
> recu ce message par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages
> electroniques etant susceptibles d'alteration,
> Orange decline toute responsabilite si ce message a ete altere, deforme ou
> falsifie. Merci.
>
> This message and its attachments may contain confidential or privileged
> information that may be protected by law;
> they should not be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and
> delete this message and its attachments.
> As emails may be altered, Orange is not liable for messages that have been
> modified, changed or falsified.
> Thank you.
>
>

Reply via email to