SlideShare a Scribd company logo
CNCF - Introduction
@ India Open Stack User Group Meeting (Pune & Bangalore)
February 2017
by
Sajid Akthar – Open Stack Ambassador
Krishna Kumar – CNCF Ambassador
The materials in the presentation are from public websites and it is used here for just educational purposes.
Thanks to the respective authors for sharing 
Contents
• What & Why?
• Cloud Native Software Stacks!
• The people behind!
• How to engage/contribute?
Who we are
CNCF is an open source
foundation created to
make cloud-native
computing universal.
We promote the use of
dynamically-
orchestrated
containerized
applications in a
microservices
architecture on any
public, private or hybrid
cloud. Cloud-native
technologies enable
software developers to
build great products,
allowing businesses to
move faster than ever
before.
https://www.cncf.io/
What is cloud native …????
Cloud-native applications are
purpose built for the cloud
model. These applications—built
and deployed in a rapid cadence
by small, dedicated feature
teams to a platform that offers
easy scale-out and hardware
decoupling—offer organizations
greater agility, resilience, and
portability across clouds. Pivotal
At the heart of "cloud-native" lie Linux,
Linux containers, and the concept of
applications assembled as microservices in
containers. Indeed, the Linux Foundation
launched the Cloud Native Computing
Foundation. But cloud-native means a lot
more than implementing Linux clusters and
running containers. It's a term that
recognizes that getting software to work in
the cloud requires a broad set of
components that work together. It also
requires an architecture that departs from
traditional enterprise application design. .
Charles -informationWeek
Here’s how a blog on IBM’s developer
web site distinguishes the two adjectives
Cloud-Native and Cloud-Enabled:
You can say that a cloud-enabled
application is an application that was moved
to cloud, but it was originally developed for
deployment in a traditional data center.
Some characteristics of the application had
to be changed or customized for the cloud.
On the other hand, a cloud-centric
application (also known as cloud-native and
cloud-ready) is an application that was
developed with the cloud principles of multi-
tenancy, elastic scaling and easy integration
and administration in its design.
12 factors
(One of the
solid
principle for
Cloud Native
Software
Architecture)
Codebase
One codebase tracked in revision
control, many deploys
Dependencies
Explicitly declare and isolate
dependencies
Config
Store configuration in the
environment
Backing Services
Treat backing services as attached
resources
Build, release, run
Strictly separate build and run
stages
Processes
Execute the app as one or more
stateless processes
Port binding
Export services via port binding
Concurrency
Scale out via the process model
Disposability
Maximize robustness with fast
startup and graceful shutdown
Dev/prod parity
Keep development, staging, and
production as similar as possible
Logs
Treat logs as event streams
Admin processes
Run admin/management tasks as
one-off processes
CNCF Introduction - Feb 2018
Graduation Criteria
CNCF projects can be at inception,
incubating or graduated stage. View the
CNCF graduation criteria and the
current status of each project.
1) Kubernetes: Automating deployment, scaling, and management of containerized applications
2) Prometheus: Monitoring, metrics, alerting, visualizing, queries, integration
3) OpenTracing: Distributed tracing. Libraries available for various languages
4) Fluentd: Fluentd allows you to unify data collection and consumption for a better use and understanding of data.
5) GRPC: Define your service using Protocol Buffers, a powerful binary serialization toolset and language
6) Conainerd: An industry-standard container runtime with an emphasis on simplicity, robustness and portability.
7) Rkt: pod-native container engine for Linux. It is composable, secure, and built on standards.
8) CNI: Container Network Interface - networking for Linux containers
9) Envoy: EDGE AND SERVICE PROXY
10) Jaeger: Jaeger, inspired by Dapper and OpenZipkin, is a distributed tracing system released as open source by Uber
11) Notary: A project that allows anyone to have trust over arbitrary collections of data
12) TUF: The Update Framework specification
13) Vitess: A database clustering system for horizontal scaling of MySQL
14) Linkerd: ServiceMesh - A transparent proxy that adds service discovery, routing, failure handling, and visibility
15) CoreDNS: DNS & Service Discovry - chains plugins. Each plugin performs a DNS function, such asKubernetes service
discovery, Prometheus metricsor rewriting queries.
16) Rook: File, Block, and Object Storage Services for your Cloud-Native Environments
• New proposals:
1) NATS: https://github.com/cncf/toc/pull/81
2) OPA: Consistent policy expression and enforcement mechanism and common toolset.
https://github.com/cncf/toc/pull/71
3) SPIFFE: Service identity (LOAS) bringing together all the pieces to recreate the environment
https://github.com/cncf/toc/pull/68
Kubernetes – The soul of CNCF…..
https://github.com/kubernetes/steering
http://blog.kubernetes.io/2017/12/kubernetes-19-workloads-expanded-ecosystem.html
Kubernetes Office hours - https://github.com/kubernetes/community/blob/master/events/office-hours.md
Related projects:
OCI (Open Container Initiative):
Established in June 2015 by Docker
and other leaders in the container
industry, the OCI currently contains
two specifications: the Runtime
Specification (runtime-spec) and the
Image Specification (image-spec).
The Runtime Specification outlines
how to run a “filesystem bundle”
that is unpacked on disk. At a high-
level an OCI implementation would
download an OCI Image then
unpack that image into an OCI
Runtime filesystem bundle.
Istio: An open platform to connect
microservices.
Istio essentially provides developers with a
single service mesh that provides the
monitoring services to then implement the
necessary load balancing, flow-control and
security policies they need to keep their
applications running even if the network
isn’t reliable.
Istio also allows developers to authenticate
and secure the communications between
different applications using a TLS
connection (which means the developer
doesn’t have to manage certificates, for
example).
Google, IBM and Lyft launch Istio, an open-
source platform for managing and securing
microservices
MetaParticle:
Metaparticle enables you to focus on
your code, while allowing you to treat
your architecture as code as well.
Metaparticle works by defining service
patterns, which you can instantiate via
simple code. This code contains both the
definition of your architecture as well as
the implementation of the service itself.
This work was an experimental by
Brendanburns, Kuberntes Creator.
CNCF taking up Serverless Computing…..
CNCF created the Serverless Working Group to ‘explore the intersection of cloud native and serverless technology.’ The first
output of the group was creation of serverless landscape, which is available. https://www.cncf.io/blog/2018/02/14/cncf-takes-
first-step-towards-serverless-computing/
https://github.com/cncf/landscape
https://www.cncf.io/people/tech
nical-oversight-committee/
+
TOC contributors : 40 people
The Decision Makers …..
https://www.cncf.io/people/governing-board/
The Decision Makers …..
+ More……
+ More……
The people who run the Daily show…..
CNCF Introduction - Feb 2018
KubeCon + CloudNativeCon Attendees
16 Courtesy: From CNCF Ambassador Meeting January 2018
CNCF Introduction - Feb 2018
CNCF Community
• Slack - https://slack.cncf.io/
• Twitter - https://twitter.com/cloudnativefdn
• Mailing Lists - https://lists.cncf.io/g/main
• Public presentations - https://github.com/cncf/presentations
• Marketing Committee (Requires Membership)
• Project Statistics - https://cncf.biterg.io/app/kibana#/dashboard/Overview?
Source Code: Git Hub
One of the prominent contributions to the open source community is in the
form of source code to existing projects.
https://github.com/cncf
https://github.com/kubernetes/kubernetes
To get start attend the SIG to start code contribution:
https://github.com/kubernetes/community/blob/master/sig-list.md
And so on.. For each project has its own repo, communities…..
Creating a new project
• If you have a new project to propose to CNCF please go through the
document shown in the link
https://github.com/cncf/toc/blob/master/process/project_proposals.adoc
• You start with proposing the project to the Technical Oversight Committee
(TOC) and based on the vote in TOC it may get accepted to the inception,
incubation or graduate stage. The process is the same for both existing
projects which seek to move into the CNCF, and new projects to be formed
within the CNCF. To graduate from inception or incubation status, the
project must meet the criteria as shown in the link
https://www.cncf.io/projects/graduation-criteria
Note: To get start: Documents are an essential part of the any software
development process but most often ignored. These may include user guides,
architectures, presentations, etc.
Governance (Similar to most of the projects)
• Kubernetes:https://github.com/kubernetes/community/
blob/master/governance.md
• Prometheus:https://prometheus.io/governance/
Certifications
For Companies For Developers/users
• Introduction to Kubernetes (free!)-
https://www.edx.org/course/introduction-kubernetes-
linuxfoundationx-lfs158x#!
• Kubernetes Fundamentals -
https://training.linuxfoundation.org/linux-courses/system-
administration-training/kubernetes-fundamentals
https://github.com/cncf/curriculum/blob/master/certified_kubernetes_administrator_exam_v1.9.0.pdf
CIL (Community Infrastructure Lab) Setup
The CNCF Community Infrastructure Lab (CIL) provides free access to state-of-the-art computing
resources for open source developers working to advance cloud native computing. Offer access to
both x86 and ARMv8 bare metal servers for software builds, continuous integration, scale testing, and
demonstrations. https://www.cncf.io/community/infrastructure-lab/
You can help setting up CNCF test bed at local or supporting existing cluster setup available
https://github.com/cncf/cluster
CNCF Store
Variety of catalogues/products. https://store.cncf.io/
Blogs
This area https://www.cncf.io/newsroom/blog covers lots of useful information. Not only you can
contribute to the blog section, the newsletter can be subscribed and shared. Some of the latest
information on the community are described in detail here.
News Letter
https://www.cncf.io/newsroom/newsletter/
Ambassador Program
• CNCF has a program called ambassadors who contribute to the CNCF projects in various ways. The Cloud Native Ambassador
program exists to empower community members with tools and resources needed to promote cloud native projects and
technology, educate a local community on the CNCF mission and contribute to CNCF projects:
• More details are here https://www.cncf.io/about/ambassadors (There are currently 40 Ambassadors world wide)
Conferences / Roadshows
• https://www.cncf.io/events/
• https://events.linuxfoundation.org/
Meetup
http://www.meetup.com/pro/cncf/
https://thecodeteam.com/cloud-native-infrastructure-e-book/
Not sure how to go - Start with some books…
https://www.cncf.io/free-ebook-kubernetes-deployment-security-patterns/
Upcoming Events:
• #1 Bangalore CNCF meetup with other 8 meetup groups EVENT (Complete container stack
discussion) - March 24th, 930am - 5pm IST https://www.meetup.com/Bangalore-Mesos-cncf-
User-Group/events/247806174
• #2 Google cloud Event:(e.g: Migrating 2 lakhs sites in two weeks) - March 28, 8.30am - 1.15pm
IST https://cloudonair.withgoogle.com/events/modernize
• #3 CloudNativeCOn Europe - May 2-4 Copenhagen, Denmark
https://events.linuxfoundation.org/events/kubecon-cloudnativecon-europe-2018/
• #4 ContainerCon China - June 25-27 Beijing, China https://www.lfasiallc.com/events/lc3-2018/
• #5 Signup Kubeweekly for ton of information: http://kube.news
CNCF Introduction - Feb 2018

More Related Content

CNCF Introduction - Feb 2018

  • 1. CNCF - Introduction @ India Open Stack User Group Meeting (Pune & Bangalore) February 2017 by Sajid Akthar – Open Stack Ambassador Krishna Kumar – CNCF Ambassador The materials in the presentation are from public websites and it is used here for just educational purposes. Thanks to the respective authors for sharing 
  • 2. Contents • What & Why? • Cloud Native Software Stacks! • The people behind! • How to engage/contribute?
  • 3. Who we are CNCF is an open source foundation created to make cloud-native computing universal. We promote the use of dynamically- orchestrated containerized applications in a microservices architecture on any public, private or hybrid cloud. Cloud-native technologies enable software developers to build great products, allowing businesses to move faster than ever before. https://www.cncf.io/
  • 4. What is cloud native …???? Cloud-native applications are purpose built for the cloud model. These applications—built and deployed in a rapid cadence by small, dedicated feature teams to a platform that offers easy scale-out and hardware decoupling—offer organizations greater agility, resilience, and portability across clouds. Pivotal At the heart of "cloud-native" lie Linux, Linux containers, and the concept of applications assembled as microservices in containers. Indeed, the Linux Foundation launched the Cloud Native Computing Foundation. But cloud-native means a lot more than implementing Linux clusters and running containers. It's a term that recognizes that getting software to work in the cloud requires a broad set of components that work together. It also requires an architecture that departs from traditional enterprise application design. . Charles -informationWeek Here’s how a blog on IBM’s developer web site distinguishes the two adjectives Cloud-Native and Cloud-Enabled: You can say that a cloud-enabled application is an application that was moved to cloud, but it was originally developed for deployment in a traditional data center. Some characteristics of the application had to be changed or customized for the cloud. On the other hand, a cloud-centric application (also known as cloud-native and cloud-ready) is an application that was developed with the cloud principles of multi- tenancy, elastic scaling and easy integration and administration in its design. 12 factors (One of the solid principle for Cloud Native Software Architecture) Codebase One codebase tracked in revision control, many deploys Dependencies Explicitly declare and isolate dependencies Config Store configuration in the environment Backing Services Treat backing services as attached resources Build, release, run Strictly separate build and run stages Processes Execute the app as one or more stateless processes Port binding Export services via port binding Concurrency Scale out via the process model Disposability Maximize robustness with fast startup and graceful shutdown Dev/prod parity Keep development, staging, and production as similar as possible Logs Treat logs as event streams Admin processes Run admin/management tasks as one-off processes
  • 6. Graduation Criteria CNCF projects can be at inception, incubating or graduated stage. View the CNCF graduation criteria and the current status of each project.
  • 7. 1) Kubernetes: Automating deployment, scaling, and management of containerized applications 2) Prometheus: Monitoring, metrics, alerting, visualizing, queries, integration 3) OpenTracing: Distributed tracing. Libraries available for various languages 4) Fluentd: Fluentd allows you to unify data collection and consumption for a better use and understanding of data. 5) GRPC: Define your service using Protocol Buffers, a powerful binary serialization toolset and language 6) Conainerd: An industry-standard container runtime with an emphasis on simplicity, robustness and portability. 7) Rkt: pod-native container engine for Linux. It is composable, secure, and built on standards. 8) CNI: Container Network Interface - networking for Linux containers 9) Envoy: EDGE AND SERVICE PROXY 10) Jaeger: Jaeger, inspired by Dapper and OpenZipkin, is a distributed tracing system released as open source by Uber 11) Notary: A project that allows anyone to have trust over arbitrary collections of data 12) TUF: The Update Framework specification 13) Vitess: A database clustering system for horizontal scaling of MySQL 14) Linkerd: ServiceMesh - A transparent proxy that adds service discovery, routing, failure handling, and visibility 15) CoreDNS: DNS & Service Discovry - chains plugins. Each plugin performs a DNS function, such asKubernetes service discovery, Prometheus metricsor rewriting queries. 16) Rook: File, Block, and Object Storage Services for your Cloud-Native Environments • New proposals: 1) NATS: https://github.com/cncf/toc/pull/81 2) OPA: Consistent policy expression and enforcement mechanism and common toolset. https://github.com/cncf/toc/pull/71 3) SPIFFE: Service identity (LOAS) bringing together all the pieces to recreate the environment https://github.com/cncf/toc/pull/68
  • 8. Kubernetes – The soul of CNCF….. https://github.com/kubernetes/steering http://blog.kubernetes.io/2017/12/kubernetes-19-workloads-expanded-ecosystem.html Kubernetes Office hours - https://github.com/kubernetes/community/blob/master/events/office-hours.md
  • 9. Related projects: OCI (Open Container Initiative): Established in June 2015 by Docker and other leaders in the container industry, the OCI currently contains two specifications: the Runtime Specification (runtime-spec) and the Image Specification (image-spec). The Runtime Specification outlines how to run a “filesystem bundle” that is unpacked on disk. At a high- level an OCI implementation would download an OCI Image then unpack that image into an OCI Runtime filesystem bundle. Istio: An open platform to connect microservices. Istio essentially provides developers with a single service mesh that provides the monitoring services to then implement the necessary load balancing, flow-control and security policies they need to keep their applications running even if the network isn’t reliable. Istio also allows developers to authenticate and secure the communications between different applications using a TLS connection (which means the developer doesn’t have to manage certificates, for example). Google, IBM and Lyft launch Istio, an open- source platform for managing and securing microservices MetaParticle: Metaparticle enables you to focus on your code, while allowing you to treat your architecture as code as well. Metaparticle works by defining service patterns, which you can instantiate via simple code. This code contains both the definition of your architecture as well as the implementation of the service itself. This work was an experimental by Brendanburns, Kuberntes Creator.
  • 10. CNCF taking up Serverless Computing….. CNCF created the Serverless Working Group to ‘explore the intersection of cloud native and serverless technology.’ The first output of the group was creation of serverless landscape, which is available. https://www.cncf.io/blog/2018/02/14/cncf-takes- first-step-towards-serverless-computing/
  • 14. + More…… + More…… The people who run the Daily show…..
  • 16. KubeCon + CloudNativeCon Attendees 16 Courtesy: From CNCF Ambassador Meeting January 2018
  • 18. CNCF Community • Slack - https://slack.cncf.io/ • Twitter - https://twitter.com/cloudnativefdn • Mailing Lists - https://lists.cncf.io/g/main • Public presentations - https://github.com/cncf/presentations • Marketing Committee (Requires Membership) • Project Statistics - https://cncf.biterg.io/app/kibana#/dashboard/Overview?
  • 19. Source Code: Git Hub One of the prominent contributions to the open source community is in the form of source code to existing projects. https://github.com/cncf https://github.com/kubernetes/kubernetes To get start attend the SIG to start code contribution: https://github.com/kubernetes/community/blob/master/sig-list.md And so on.. For each project has its own repo, communities….. Creating a new project • If you have a new project to propose to CNCF please go through the document shown in the link https://github.com/cncf/toc/blob/master/process/project_proposals.adoc • You start with proposing the project to the Technical Oversight Committee (TOC) and based on the vote in TOC it may get accepted to the inception, incubation or graduate stage. The process is the same for both existing projects which seek to move into the CNCF, and new projects to be formed within the CNCF. To graduate from inception or incubation status, the project must meet the criteria as shown in the link https://www.cncf.io/projects/graduation-criteria Note: To get start: Documents are an essential part of the any software development process but most often ignored. These may include user guides, architectures, presentations, etc. Governance (Similar to most of the projects) • Kubernetes:https://github.com/kubernetes/community/ blob/master/governance.md • Prometheus:https://prometheus.io/governance/
  • 20. Certifications For Companies For Developers/users • Introduction to Kubernetes (free!)- https://www.edx.org/course/introduction-kubernetes- linuxfoundationx-lfs158x#! • Kubernetes Fundamentals - https://training.linuxfoundation.org/linux-courses/system- administration-training/kubernetes-fundamentals https://github.com/cncf/curriculum/blob/master/certified_kubernetes_administrator_exam_v1.9.0.pdf
  • 21. CIL (Community Infrastructure Lab) Setup The CNCF Community Infrastructure Lab (CIL) provides free access to state-of-the-art computing resources for open source developers working to advance cloud native computing. Offer access to both x86 and ARMv8 bare metal servers for software builds, continuous integration, scale testing, and demonstrations. https://www.cncf.io/community/infrastructure-lab/ You can help setting up CNCF test bed at local or supporting existing cluster setup available https://github.com/cncf/cluster CNCF Store Variety of catalogues/products. https://store.cncf.io/ Blogs This area https://www.cncf.io/newsroom/blog covers lots of useful information. Not only you can contribute to the blog section, the newsletter can be subscribed and shared. Some of the latest information on the community are described in detail here. News Letter https://www.cncf.io/newsroom/newsletter/
  • 22. Ambassador Program • CNCF has a program called ambassadors who contribute to the CNCF projects in various ways. The Cloud Native Ambassador program exists to empower community members with tools and resources needed to promote cloud native projects and technology, educate a local community on the CNCF mission and contribute to CNCF projects: • More details are here https://www.cncf.io/about/ambassadors (There are currently 40 Ambassadors world wide) Conferences / Roadshows • https://www.cncf.io/events/ • https://events.linuxfoundation.org/ Meetup http://www.meetup.com/pro/cncf/
  • 23. https://thecodeteam.com/cloud-native-infrastructure-e-book/ Not sure how to go - Start with some books… https://www.cncf.io/free-ebook-kubernetes-deployment-security-patterns/
  • 24. Upcoming Events: • #1 Bangalore CNCF meetup with other 8 meetup groups EVENT (Complete container stack discussion) - March 24th, 930am - 5pm IST https://www.meetup.com/Bangalore-Mesos-cncf- User-Group/events/247806174 • #2 Google cloud Event:(e.g: Migrating 2 lakhs sites in two weeks) - March 28, 8.30am - 1.15pm IST https://cloudonair.withgoogle.com/events/modernize • #3 CloudNativeCOn Europe - May 2-4 Copenhagen, Denmark https://events.linuxfoundation.org/events/kubecon-cloudnativecon-europe-2018/ • #4 ContainerCon China - June 25-27 Beijing, China https://www.lfasiallc.com/events/lc3-2018/ • #5 Signup Kubeweekly for ton of information: http://kube.news