incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Devins <badev...@gmail.com>
Subject Re: [VOTE] Accept Zipkin into the Apache Incubator
Date Mon, 27 Aug 2018 21:48:28 GMT
+1 (non-binding)

On Mon, Aug 27, 2018 at 3:29 PM Kevin A. McGrail <kmcgrail@apache.org>
wrote:

> +1 (binding)
> On 8/27/2018 3:27 PM, Josh Elser wrote:
> > +1 (binding)
> >
> > On 8/26/18 11:14 PM, Mick Semb Wever wrote:
> >> After a brief discussion¹ I would like to call a VOTE to accept
> >> Zipkin into the Apache Incubator.
> >> The full proposal is available on the wiki² and is pasted below in
> >> text form as well.
> >>
> >> This vote will run at least 72 hours. Please VOTE as follows:
> >>
> >> [ ] +1 Accept Zipkin into the Apache Incubator
> >> [ ] +0 No opinion
> >> [ ] -1 Do not accept Zipkin into the Apache Incubator because…
> >>
> >> regards,
> >> Mick
> >>
> >> [1]
> >>
> https://lists.apache.org/thread.html/54798a5059db1d5716ed9910a15c92945509a25ec3b7ccb6b1215c53@%3Cgeneral.incubator.apache.org%3E
> >> [2] https://wiki.apache.org/incubator/ZipkinProposal
> >>
> >>
> >>
> >> = Abstract =
> >> Zipkin is a distributed tracing system. It helps gather timing data
> >> needed to troubleshoot latency problems in microservice
> >> architectures. It manages both the collection and lookup of this
> >> data. Zipkin’s design is based on the Google Dapper paper.
> >>
> >> = Proposal =
> >> Zipkin provides a defined data model and payload type for distributed
> >> trace data collection. It also provides an UI and http api for
> >> querying the data. Its server implements this api and includes
> >> abstractions for storage and transport of trace payloads. The
> >> combination of these parts avoid lock-in to a specific tracing
> >> backend. For example, Zipkin includes integration with different open
> >> source storage mechanisms like Apache Cassandra and Elasticsearch. It
> >> also includes bridges to convert collected data and forward it to
> >> service offerings such as Amazon X-Ray and Google Stackdriver.
> >> Ecosystem offering extend this portability further.
> >>
> >> While primarily focused on the system, Zipkin also includes tracing
> >> libraries which applications use to report timing information.
> >> Zipkin's core organization includes tracer libraries written in Java,
> >> Javascript, Go, PHP and Ruby. These libraries use the formats
> >> mentioned above to report data, as well "B3" which is a header format
> >> needed to send trace identifiers along with production requests. Many
> >> Zipkin libraries can also send data directly to other services such
> >> as Amazon X-Ray and Google Stackdriver, skipping any Zipkin
> >> infrastructure. There are also more Zipkin tracing libraries outside
> >> the core organization than inside it. This is due to the "OpenZipkin"
> >> culture of promoting ecosystem work.
> >>
> >> = Background =
> >> Zipkin began in 2012 at Twitter during a time they were investigating
> >> performance problems underlying the "fail whale" seen by users. The
> >> name Zipkin is from the Turkish word for harpoon: the harpoon that
> >> will kill the failures! Incidentally, Zipkin was not the first
> >> tracing system, it had roots in a former system at Twitter named
> >> BigBrotherBird. It is due to BigBrotherBird that the de-facto tracing
> >> headers we still use today include the prefix "X-B3".
> >>
> >> In 2015, a community of users noticed the project was not healthy in
> >> so far as it hadn't progressed and often didn't accept pull requests,
> >> and the Cassandra backend was stuck on an unmaintained library. For
> >> example, the Apache Incubator H-Trace project started in some ways as
> >> a reaction to the inability to customize the code. The root cause of
> >> this was Twitter moving to internal storage (Manhattan) and also the
> >> project not being managed as a product. By mid 2015, the community
> >> regrouped as OpenZipkin and the codebase moved from Twitter to an org
> >> also named OpenZipkin. This led to fast progress on concerns
> >> including initially a server rewrite and Docker based deployment.
> >>
> >> In 2018, the second version of the data model completed, and along
> >> the way, many new libraries became standard, including javascript,
> >> golang and PHP. The community is dramatically larger than 2015, and
> >> Zipkin remains the most popular tracing system despite heavy
> >> competition.
> >>
> >> = Rationale =
> >> Zipkin is a de-facto distributed tracing system, which is more
> >> important as architectures become more fine grained due to popularity
> >> of microservice or even serverless architectures. Applications
> >> transition to use more complex communication including asynchronous
> >> code and service mesh, increasing the need for tools that visualize
> >> the behavior of requests as they map across an architecture.
> >>
> >> Zipkin's server is focused only on distributed tracing. It is meant
> >> to be used alongside existing logging and metrics systems. Generally,
> >> the community optimizes brown field concerns such as interop over
> >> breaking changes such as experimental features. The combination of
> >> code and community make Zipkin a safe and easier choice for various
> >> sites to introduce or grow their observability practice.
> >>
> >> = Initial Goals =
> >> The initial goals are to mature OpenZipkin's community process. For
> >> example, while OpenZipkin has a good collaborative process, it lacks
> >> formality around project management functions defined in the Apache
> >> Software Foundation (ASF). We also seek out help with brand abuse
> >> which is becoming common practice in the competitive landscape, yet
> >> demotivates volunteers. Towards volunteers, help with on boarding
> >> summer of code and funding for those who cannot afford to get to
> >> conferences on their own would be nice. Finally, we occasionally have
> >> organizations who are constrained to only work with foundation
> >> projects: ASF is often mentioned, and being in the ASF removes this
> >> collaboration roadblock.
> >>
> >> Zipkin will not move all existing code into Apache. In fact, most
> >> Zipkin ecosystem exists outside our org! The goal is to start with
> >> the data formats and server code. Possibly the java client-side
> >> libraries can move initially as well, depending on community feedback.
> >>
> >> = Current Status =
> >> == Meritocracy ==
> >> Zipkin is an active community of contributors who are encouraged to
> >> become committers. A Zipkin committer understands the importance of
> >> seeking community feedback, and the gravity of brown field concerns.
> >> Committers express diverse interest by contributing beyond their
> >> sites immediate needs and acknowledging features require diverse need
> >> before being merged into the core repositories. A camaraderie between
> >> committers and not yet committers exists and is re-inforced with face
> >> to face meetups where possible. We expect this to continue and build
> >> with incubation and ideally acceptance into the Apache Software
> >> Foundation (ASF).
> >>
> >> Zipkin encourages involvement from its community members, and the
> >> issues are open and available to any developers who wish to
> >> contribute to the project. The Zipkin team currently seeks help and
> >> asks for suggestions utilizing zipkin-user and zipkin-dev Google
> >> groups and Gitter chat on https://gitter.im/openzipkin/zipkin. While
> >> all contributions are reviewed, generally a "rule of three" policy on
> >> diverse need must be met before a feature is considered standard.
> >>
> >> == Community ==
> >> Zipkin has a highly active and growing community of users and
> >> developers. The community is currently fostered on chat
> >> https://gitter.im/openzipkin/zipkin and issues in their respective
> >> GitHub repositories, notably the main server:
> >> https://github.com/openzipkin/zipkin
> >>
> >> There are well over 1000 users in the chat room and hundreds who
> >> contributed code to code in the main OpenZipkin GitHub org. Interest
> >> metrics have grown dramatically: For example, in three years and a
> >> month from when Zipkin began until the time OpenZipkin formed, its
> >> main repository accumulated 2400 GitHub stars. In the same time
> >> after, it accumulated over 6700. Other metrics such as blog count and
> >> community meetings have similarly gone way up. We expect further
> >> growth as more learn about Zipkin and can engage with Zipkin through
> >> the guidance of the Apache Software Foundation (ASF).
> >>
> >> == Core Developers ==
> >> The core contributors are a diverse group comprised of both
> >> unaffiliated developers and those hailing from small to large
> >> companies. They are scattered geographically, and some are highly
> >> experienced industry as well as open source developers. Though their
> >> backgrounds may be diverse, the contributors are united in their
> >> belief in community driven software development.
> >>
> >> More detailed information on the core developers and contributors in
> >> general can be found under the section on homogeneous developers.
> >>
> >> == Alignment ==
> >> Zipkin adoption is growing, and it is no longer feasible for it to
> >> remain as an isolated project. Apache is experienced in dealing with
> >> software that is very widely accepted and has a growing audience. The
> >> proposers believe that the Zipkin team can benefit from the ASF's
> >> experience and its broad array of users and developers.
> >>
> >> Zipkin supports several Apache projects and options exist for
> >> integration with others. Apache CXF, Apache Camel, Apache Incubator
> >> SkyWalking and Apache Incubator HTrace all utilize Zipkin APIs in
> >> their core repositories. Many more do via community extensions.
> >> Apache Maven is primarily use by Zipkin, and can be used by projects
> >> who build upon Zipkin projects.
> >>
> >> == Known Risks ==
> >> === Orphaned products ===
> >> Zipkin is already being utilized at multiple companies that are
> >> actively participating in improving the code. The thriving community
> >> centered around Zipkin has seen steady growth, and the project is
> >> gaining traction with developers. The risks of the code being
> >> abandoned are minimal.
> >>
> >> === Inexperience with Open Source ===
> >> Zipkin rebooted its community in July 2015 and grown there for over
> >> three years. Additionally, many of the committers have extensive
> >> experience with other open source projects. Zipkin fosters a
> >> collaborative and community-driven environment.
> >>
> >> In the interest of openly sharing technology and attracting more
> >> community members, several of our developers also regularly attend
> >> conferences in North America and Europe to give talks about Zipkin.
> >> Zipkin meetups are also planned every few months for developers and
> >> community members to come together in person and discuss ideas.
> >>
> >> === Homogenous Developers ===
> >> At the time of the writing, OpenZipkin's core 12 developers all work
> >> at different companies around the globe. Most operate their own
> >> tracing sites, but some no longer operate sites at all: staying for
> >> the community we've built. Our ASF champion, Mick Semb Wever, is both
> >> a committer and an experienced ASF member.
> >>
> >> The Zipkin developers thrive upon the diversity of the community. The
> >> Zipkin gitter channel is always active, and the developers often
> >> collaborate on fixes and changes in the code. They are always happy
> >> to answer users' questions as well.
> >>
> >> Zipkin is interested in continuing to expand and strengthen its
> >> network of developers and community members through the ASF.
> >>
> >> === Reliance on Salaried Developers ===
> >> Zipkin has one full time salaried developer, Adrian Cole. Though some
> >> of the developers are paid by their employer to contribute to Zipkin,
> >> many Zipkin developers contribute code and documentation on their own
> >> time and have done so for a lengthy period. Given the current stream
> >> of development requests and the committers' sense of ownership of the
> >> Zipkin code, this arrangement is expected to continue with Zipkin'
> >> induction into the ASF.
> >>
> >> === Relationships with Other Apache Products ===
> >> Zipkin, Apache Incubator Skywalking and Apache Incubator HTrace
> >> address similiar use cases. Most similarities are between Zipkin and
> >> HTrace: Zipkin hopes to help serve the community formerly served by
> >> HTrace, but understands the data services focus of HTrace may require
> >> different tooling. SkyWalking addresses more feature surface than
> >> Zipkin. For example, metrics collection is not a goal of Zipkin, yet
> >> it is a goal of SkyWalking. SkyWalking accepts Zipkin formats and can
> >> be used as a replacement server. SkyWalking PPMC member, Sheng Wu,
> >> has been a routine member of Zipkin design discussions and has
> >> offered to help Zipkin through ASF process.
> >>
> >> While Zipkin does not directly rely upon any Apache project, zipkin
> >> supports several Apache projects. Apache CXF, Apache Camel, Apache
> >> Incubator SkyWalking, Apache Incubator Dubbo, Apache Incubator
> >> ServiceComb and Apache Incubator HTrace all utilize Zipkin APIs in
> >> their core repositories. Many more do via community extensions.
> >> Apache Maven is primarily use by Zipkin, and can be used by projects
> >> who build upon Zipkin projects.
> >>
> >> === A Excessive Fascination with the Apache Brand ===
> >> Zipkin recognizes the fortitude of the Apache brand, but the
> >> motivation for becoming an Apache project is to strengthen and expand
> >> the Zipkin community and its user base. While the Zipkin community
> >> has seen steady growth over the past several years, association with
> >> the ASF is expected to expedite this pattern of growth. Development
> >> is expected to continue on Zipkin under the Apache license whether or
> >> not it is supported by the ASF.
> >>
> >> == Documentation ==
> >> The Zipkin project documentation is publicly available at the
> >> following sites:
> >>
> >>    * https://zipkin.io: project overview
> >>    * http://zipkin.io/zipkin-api/#/: swagger specification
> >>    * https://github.com/openzipkin/b3-propagation: header formats
> >>    * https://zipkin.io/zipkin/: Javadocs for the Zipkin server
> >>
> >> == Initial Source ==
> >> The initial source is located on GitHub in the following repositories:
> >>
> >>    * git://github.com/OpenZipkin/zipkin.git
> >>    * git://github.com/OpenZipkin/zipkin-dependencies.git
> >>    * git://github.com/OpenZipkin/zipkin-api.git
> >>    * git://github.com/OpenZipkin/b3-propagation.git
> >>    * git://github.com/OpenZipkin/docker-zipkin.git
> >>    * git://github.com/OpenZipkin/docker-zipkin-dependencies.git
> >>    * git://github.com/openzipkin/zipkin-reporter-java
> >>    * git://github.com/openzipkin/brave
> >>    * git://github.com/openzipkin/zipkin-aws
> >>    * git://github.com/openzipkin/docker-zipkin-aws
> >>    * git://github.com/openzipkin/zipkin-azure
> >>    * git://github.com/openzipkin/docker-zipkin-azure
> >>    * git://github.com/openzipkin/zipkin-gcp
> >>    * git://github.com/openzipkin/docker-zipkin-gcp
> >>    * git://github.com/openzipkin/brave-cassandra
> >>    * git://github.com/openzipkin/docker-jre-full
> >>    * git://github.com/openzipkin/brave-karaf
> >>
> >> Depending on community progress, other repositories may be moved as well
> >>
> >> == Source and Intellectual Property Submission Plan ==
> >> Zipkin's initial source is licensed under the Apache License, Version
> >> 2.0. https://github.com/openzipkin/zipkin/blob/master/LICENSE
> >>
> >> All source code is copyrighted to 'The OpenZipkin Authors', to which
> >> the existing core community(members list in Initial Committers) has
> >> the rights to re-assign to the ASF.
> >>
> >> == External Dependencies ==
> >> This is a listing of Maven coordinates for all of the external
> >> dependencies Zipkin uses. All of the dependencies are in Sonatype and
> >> their licenses should be accessible.
> >>
> >> == Cryptography ==
> >> Zipkin contains no cryptographic algorithms.
> >>
> >> = Required Resources =
> >> == Mailing Lists ==
> >>    * Zipkin-dev: for development discussions
> >>    * Zipkin-user: for community discussions
> >>    * Zipkin-private: for PPMC discussions
> >>    * Zipkin-commits: for code changes
> >>
> >> == Git Repositories ==
> >> The Zipkin team is experienced in git and requests to transfer GitHub
> >> repositories(list in Initial Source) to Apache.
> >>
> >> == Issue Tracking ==
> >> The community would like to continue using GitHub Issues.
> >>
> >> = Initial Committers =
> >>    * Zoltán Nagy
> >>    * Adrian Cole, Pivotal
> >>    * Bas van Beek
> >>    * Brian Devins
> >>    * Eirik Sletteberg
> >>    * Jeanneret Pierre-Hugues
> >>    * Jordi Polo Carres
> >>    * José Carlos Chávez
> >>    * Kristof Adriaenssens
> >>    * Lance Linder
> >>    * Mick Semb Wever,
> >>    * Tommy Ludwig
> >>
> >> = Champion =
> >>   * Michael Semb Wever, mck@apache.org
> >>
> >> = Mentors =
> >>   * Michael Semb Wever, mck@apache.org
> >>   * Andriy Redko, reta@apache.org
> >>   * John D. Ament, johndament@apache.org
> >>   * Willem Ning Jiang, ningjiang@apache.org
> >>
> >> = Sponsoring Entity =
> >> We are requesting the Apache Incubator to sponsor this project.
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
> >> For additional commands, e-mail: general-help@incubator.apache.org
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: general-help@incubator.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
> For additional commands, e-mail: general-help@incubator.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message