Getting Started with Google's Infrastructure is summarized as follows:
1. Google Cloud Platform provides infrastructure services including virtual machines, networking, and storage hosted on Google's global network of data centers.
2. Google Compute Engine is an infrastructure as a service offering that allows users to launch and manage virtual machine instances.
3. The document provides an overview of Google Compute Engine including machine types, regions, persistent disks, load balancing, and pricing models.
Kubernetes for FaaS (Function as a Service) - Serverless evolution, some basic constructs, kubenetes features, comparisons - from Serverless conference 2017 Bangalore.
This document provides an overview of Google Cloud Platform (GCP) services. It begins by explaining why GCP is underpinned by Google's infrastructure and innovation. It then outlines GCP's compute, networking, storage, big data, and machine learning services. These include Compute Engine, Container Engine, App Engine, load balancing, Cloud DNS, Cloud Storage, Cloud Datastore, Cloud Bigtable, Cloud SQL, BigQuery, Dataflow, Pub/Sub, Dataproc, and Cloud Datalab. Machine learning services such as Translate API, Prediction API, Cloud Vision API, and Cloud Speech API are also introduced.
An RSVP app designed to be deployed by the dockers on the Kubernetes Minikube Cluster. Front end with flask framework and MongoDB as a backend database.
Youtube video:https://youtu.be/KnjnQj-FvfQ
This document provides an overview of Cloud Spanner including:
1. What Cloud Spanner is and how it compares to other database offerings.
2. Key product highlights such as it being fully managed, providing relational database capabilities at massive scale with strong consistency, and high availability.
3. Common use cases such as user data, order management, and electronic medical records.
4. Details on Spanner's architecture including splits, TrueTime, reads/writes, and Paxos.
5. Current areas of focus such as new features, developer productivity, and growing the open source ecosystem.
What is Google Cloud Platform - GDG DevFest 18 DepokImre Nagi
This document provides an overview of Google Cloud Platform (GCP) services presented by Imre Nagi. It discusses:
1. What cloud computing is and how GCP provides infrastructure like virtual machines, networking, and storage in Google's data centers while handling scaling, migrations, and maintenance.
2. The main GCP services including Compute Engine, Kubernetes Engine, App Engine, and Cloud Functions for deploying applications, as well as storage, database, analytics, and machine learning services.
3. Options for deploying applications to GCP including using Compute Engine virtual machines, containers on Kubernetes Engine, or serverless functions on Cloud Functions. It notes advantages of managed services like App Engine over unmanaged infrastructure.
Serverless and Servicefull Applications - Where Microservices complements Ser...Red Hat Developers
Serverless is a misnomer, your future cloud native applications will consist of both microservices and functions, wrapped as Linux containers, but in many cases where you the developer ignore the operational aspects of managing that infrastructure. In this session we get started using Function as a Service (FaaS) engine with Apache OpenWhisk deployed on Kubernetes and OpenShift. With Kubernetes/OpenShift being de-facto platform for Cloud Native Java Applications, we will explore on to see how to make Cloud Native Java Applications a.k.a Microservices can complement the serverless Functions. This technical intensive session will open up one of the possible serverless web application architecture where we deploy an API Gateway into the FaaS platform to draw the curtains up to see the microservices talking to the serverless functions. This session ends with us seeing how Event Sinks and Event Sources map in the Serverless World.
Next Generation Cloud Computing With Google - RightScale Compute 2013RightScale
Speaker: Martin Gannholm - Lead Engineer, Google
Google Cloud Platform provides everything you need to build, run, and scale social, mobile, and online applications. Already, tens of thousands of popular applications like Khan Academy, Angry Birds, SnapChat, and Pulse are benefiting from the power of running on top of Google infrastructure. Come join Google as we go deep on how to best leverage our technology with RightScale to build your next masterpiece.
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...Oleg Shalygin
Kubernetes provides an automated platform to deployment, scaling and operations of applications across a cluster of hosts. Complementing Kubernetes with a series of build scripts in conjunction with Travis-CI, GitHub, Artifactory, and Google Cloud Platform, we can take code from a merged pull request to a deployed environment with no manual intervention on a highly scaleable and robust infrastructure.
KubeCon CloudNativeCon 2016 Seattle - a reportKrishna-Kumar
KubeCon / CloudNativeCon Seattle summary report - Just to recapture some of the items from the event - Few of the items are copied from other blogs from reference - pictures are just for FUN!
Cloud Computing:
Cloud computing is the delivery of different services through the Internet. These resources include tools and applications like data storage, servers, databases, networking, and software.
Introduction to KubeDirector - SF Kubernetes MeetupBlueData, Inc.
Presentation from San Francisco Kubernetes Meetup on October 30, 2018
https://www.meetup.com/San-Francisco-Kubernetes-Meetup/events/255431002
What is KubeDirector? - Tom Phelan & Joel Baxter, Bluedata
Kubernetes is clearly the container orchestrator of choice for cloud-native stateless applications. And with the introduction of StatefulSets and Persistent Volumes it is becoming possible to run stateful applications on Kubernetes.
Now the new KubeDirector project allows users to manage complex stateful clusters for AI, machine learning, and big data analytics on Kubernetes without writing a single line of GO code.
KubeDirector is an open source Apache project that uses the standard Kubernetes custom resource functionality and API extensions to deploy and manage complex stateful scale-out application clusters.
This session will provide an overview of the KubeDirector architecture, show how to author the metadata and artifacts required for an example stateful application (e.g. with Spark, Jupyter, and Cassandra), and demonstrate the deployment and management of the cluster on Kubernetes using KubeDirector.
https://github.com/bluek8s/kubedirector
Resilient microservices with Kubernetes - Mete AtamelITCamp
Creating a single microservice is a well understood problem. Creating a cluster of load-balanced microservices that are resilient and self-healing is not so easy. Managing that cluster with rollouts and rollbacks, scaling individual services on demand, securely sharing secrets and configuration among services is even harder. Kubernetes, an open-source container management system, can help with this. In this talk, we will start with a simple microservice, containerize it using Docker, and scale it to a cluster of resilient microservices managed by Kubernetes. Along the way, we will learn what makes Kubernetes a great system for automating deployment, operations, and scaling of containerized applications.
MongoDB Days UK: Run MongoDB on Google Cloud PlatformMongoDB
This document discusses MongoDB performance on Google Cloud Platform. It provides benchmarks comparing MongoDB performance on Google Compute Engine virtual machines with different disk configurations. The benchmarks show that dedicating separate disks for the MongoDB database files and journal files significantly improves write performance. The document also describes how the company uses MongoDB on Google Cloud Platform for time-series database workloads, including off-site backups to Google Cloud Storage and automated restore testing.
Kubernates : An Small introduction for Beginners by Rajiv VishwkarmaRajiv Vishwkarma
Kubernetes is an open-source platform for automating deployment, scaling, and management of containerized applications. It was originally developed at Google to manage container workloads and is now used by many major companies. Kubernetes provides container orchestration and handles tasks like container deployment, scaling, load balancing, scheduling, and health monitoring. It allows for deploying containerized applications across multiple servers, providing high availability and easy scalability. Common components of Kubernetes include Pods, ReplicationControllers, Services, Namespaces, and Labels.
Build your operator with the right toolRafał Leszko
The document discusses different tools that can be used to build Kubernetes operators, including the Operator SDK, Helm, Ansible, Go, and operator frameworks like KOPF. It provides an overview of how each tool can be used to generate the scaffolding and implement the logic for a sample Hazelcast operator.
1. Kubectx and Kubens are utilities that help manage and switch between Kubernetes contexts and namespaces, saving time when working with multiple clusters.
2. Kustomize is a tool for managing Kubernetes manifests and applying patches, making it easier to maintain configurations than templates. It can be used to apply common labels, annotations, and add prefixes to all resource names.
3. Skaffold automates the build, push and deploy pipeline, enabling fast local Kubernetes development. It works with build tools like Docker, Jib, and deploy tools like Helm and Kustomize. It supports profiles for different environments.
Do you think that Nova, Cinder, Heat, Ceilometer, and Neutron are all references to global warming and looming apocalypse? For all those who come to the OpenStack community and wonder what all the fuss is about, this quick introduction will answer your many questions. It includes a short history of the largest Open Source project in history and will touch on
the basic OpenStack components, so you will be prepared the next time someone mentions Keystone, Nova and Swift in the same sentence.
This session was presented by Beth Cohen at the OpenStack meetup on Feb 19th, 2014 in Boston. Beth works for Verizon developing cool Cloud based products that she can't talk about without a strict NDA. She is a technical leader with over 25 years of experience architecting leading-edge system infrastructures and managing complex projects in the telecom, manufacturing, financial services, government, and technology industries. She has been involved in building some of the world's largest OpenStack architectures and has way too much fun at OpenStack Summits!
Soft Introduction to Google's framework for taming containers in the cloud. For devs and architects that they just enter the world of cloud, microservices and containers
Avanti Patil gives an introduction to Kubernetes. She discusses containers, Docker, and what Kubernetes is. Kubernetes is an open-source platform for managing containerized workloads and services. It facilitates declarative configuration and automation. The presentation covers Kubernetes architecture including the master node, worker nodes, pods, replica sets, and deployments. It also provides options for local Kubernetes development and a link to a self-paced tutorial. Avanti concludes by answering questions about Kubernetes.
This document provides an overview of containers, Kubernetes, and their key concepts. It discusses how Kubernetes manages containerized applications across clusters and abstracts away infrastructure details. The main components of Kubernetes include Pods (groups of tightly-coupled containers), ReplicationControllers (manages Pod replicas), Services (expose Pods to external traffic), and Namespaces (logical isolation of clusters). Kubernetes architecture separates the control plane running on the master from the nodes that run container workloads.
Kubernetes (commonly referred to as "K8s") is an open-source system for automating deployment, scaling and management of containerized applications It aims to provide a "platform for automating deployment, scaling, and operations of application containers across clusters of hosts". We will see Kubernetes architecture, use cases, basics and live demo
Kubernetes Cluster vs Nodes vs Pods vs Containers Comparisonjeetendra mandal
Containers package applications and dependencies to run consistently across environments. Kubernetes uses containers grouped in pods, which are scheduled across nodes that provide computing resources. Nodes pool resources and run pods to distribute workloads, ensuring applications have necessary resources. Pods contain related containers and act as logical hosts, while nodes are physical or virtual machines that run pods.
Container orchestration engine for automating deployment, scaling, and management of containerized applications.
What are Microservices?
What is container?
What is Containerization?
What is Docker?
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups related containers into logical units called pods and manages the pods' lifecycles and services. Key Kubernetes objects include pods, deployments, services, and secrets. The declarative model defines the desired state and Kubernetes ensures the actual state matches it.
Kubernetes is an open-source tool for managing containerized applications across clusters of nodes. It provides capabilities for deployment, maintenance, and scaling of applications. The document discusses Kubernetes concepts like pods, deployments, services, namespaces and components like the API server, scheduler and kubelet. It also covers Kubernetes commands and configuration using objects like config maps, secrets, volumes and labels.
In Apache Cassandra Lunch #41: Apache Cassandra Lunch #41: Cassandra on Kubernetes - Docker/Kubernetes/Helm Part 1, we discuss Cassandra on Kubernetes and give an introduction to Docker, Kubernetes, and Helm.
Accompanying Blog: https://blog.anant.us/apache-cassandra-lunch-41-cassandra-on-kubernetes-docker-kubernetes-helm-part-1/
Accompanying YouTube: https://youtu.be/-I8cKQO_Qr0
Sign Up For Our Newsletter: http://eepurl.com/grdMkn
Join Cassandra Lunch Weekly at 12 PM EST Every Wednesday: https://www.meetup.com/Cassandra-DataStax-DC/events/
Cassandra.Link:
https://cassandra.link/
Follow Us and Reach Us At:
Anant:
https://www.anant.us/
Awesome Cassandra:
https://github.com/Anant/awesome-cassandra
Cassandra.Lunch:
https://github.com/Anant/Cassandra.Lunch
Email:
solutions@anant.us
LinkedIn:
https://www.linkedin.com/company/anant/
Twitter:
https://twitter.com/anantcorp
Eventbrite:
https://www.eventbrite.com/o/anant-1072927283
Facebook:
https://www.facebook.com/AnantCorp/
This document provides an introduction to containers and container orchestration technologies. It discusses the evolution from virtual machines to containers and the benefits of containers. It then explains why an orchestrator tool is needed to manage containers at scale. The remainder of the document defines common container and orchestration concepts, including Docker, Kubernetes objects and components, Helm for package management, and Istio for traffic management and security.
Kubernetes and CoreOS @ Athens Docker meetupMist.io
Using Kubernetes and CoreOS to increase scalability and availability. Presentation at the Athens Docker meetup http://www.meetup.com/Docker-Athens/events/226277352/
Kubernetes-introduction to kubernetes for beginers.pptxrathnavel194
Kubernetes is an open source tool that provides automation and management of containerized applications across a cluster of nodes. It handles tasks like scheduling, deployment, scaling, and healing of containers. The main components include a master node with controllers and an API server, and worker nodes running kubelet and kube-proxy. Core objects in Kubernetes include pods to group related containers, services for discovery and load balancing, and deployments to declaratively manage replicated applications.
My own implementation of an introduction to our Eng org about what Kubernetes is and how it works. Included a hands-on demo that everyone can participate in! #sre-office-hours
This document provides an overview of Kubernetes, including its architecture, components, concepts, and configuration. It describes that Kubernetes is an open-source container orchestration system designed by Google to manage containerized applications across multiple hosts. The key components include the master nodes which run control plane components like the API server, scheduler, and controller manager, and worker nodes which run the kubelet and containers. It also explains concepts like pods, services, deployments, networking, storage, and role-based access control (RBAC).
This document provides an overview of Kubernetes concepts including:
- Kubernetes architecture with masters running control plane components like the API server, scheduler, and controller manager, and nodes running pods and node agents.
- Key Kubernetes objects like pods, services, deployments, statefulsets, jobs and cronjobs that define and manage workloads.
- Networking concepts like services for service discovery, and ingress for external access.
- Storage with volumes, persistentvolumes, persistentvolumeclaims and storageclasses.
- Configuration with configmaps and secrets.
- Authentication and authorization using roles, rolebindings and serviceaccounts.
It also discusses Kubernetes installation with minikube, and common networking and deployment
Container Orchestration with Docker Swarm and KubernetesWill Hall
This presentation covers the basics of what container orchestration is providing pros and cons of Docker Swarm, Kubernetes and Amazon ECS and outlining the terms and tools you will need to successfully use them.
Cloud technology with practical knowledgeAnshikaNigam8
Docker uses a client-server architecture with a Docker client communicating with the Docker daemon. The daemon manages Docker objects like images, containers, networks and volumes. Kubernetes is an open-source system that automates deployment, scaling, and management of containerized applications. It ensures containers run as expected and acquires necessary resources. Key Kubernetes components include pods, deployments, services, nodes, and the control plane which manages the cluster.
Recent momentum around the evolution of Containers are gradually increase in last two years.Containers virtualize an OS and applications running in each container believe that they have full access to their very own copy of that OS. This is analogous to what VMs do when they virtualize at a lower level, the hardware. In the case of containers, it’s the OS that does the virtualization and maintains the illusion.
Recent past many software companies have quickly adopted container technologies, including Docker Containers, aware of the threat and advantage of the approach. For example, Linux companies have also jumped into the ground, seeing as this as an opportunity to grow the Linux market. Also Microsoft is going to add features to support containers and VMware have made efforts in integrating support for Docker into virtual machine technology.
Similar to Google Cloud Platform Kubernetes Workshop IYTE (20)
Alternate Unikernel Toolchain for future cloud operations. How we can make a better Unikernel toolchain to adopt an existing cloud environments. Why docker and relevant tech is not sufficient? Why not Kubernetes to rule this empire?
Erlang 101 provides an overview of the Erlang programming language. It discusses Erlang's history and current status, key features like concurrency, distribution, and fault tolerance. These features make Erlang well-suited for building large, distributed, highly-available systems. Examples are given of companies using Erlang like Amazon, Facebook, Twitter, and of applications and frameworks built with Erlang like Apache CouchDB, RabbitMQ, and Riak. Resources for learning more about Erlang are also provided.
This document is a 101 guide to Git that introduces key concepts like snapshots instead of differences, configuration files, common commands, hooks, objects, and resources for further learning. It discusses SCM and VCS systems at a high level, explains basic Git functionality and configuration, and provides additional references to dive deeper into topics like hooks, plumbing, and the client-server model if there is extra time.
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Chris Swan
Have you noticed the OpenSSF Scorecard badges on the official Dart and Flutter repos? It's Google's way of showing that they care about security. Practices such as pinning dependencies, branch protection, required reviews, continuous integration tests etc. are measured to provide a score and accompanying badge.
You can do the same for your projects, and this presentation will show you how, with an emphasis on the unique challenges that come up when working with Dart and Flutter.
The session will provide a walkthrough of the steps involved in securing a first repository, and then what it takes to repeat that process across an organization with multiple repos. It will also look at the ongoing maintenance involved once scorecards have been implemented, and how aspects of that maintenance can be better automated to minimize toil.
Blockchain technology is transforming industries and reshaping the way we conduct business, manage data, and secure transactions. Whether you're new to blockchain or looking to deepen your knowledge, our guidebook, "Blockchain for Dummies", is your ultimate resource.
Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment.
How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.
Details of description part II: Describing images in practice - Tech Forum 2024BookNet Canada
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator.
Link to presentation recording and transcript: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/
Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.
Are you interested in learning about creating an attractive website? Here it is! Take part in the challenge that will broaden your knowledge about creating cool websites! Don't miss this opportunity, only in "Redesign Challenge"!
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
How Netflix Builds High Performance Applications at Global ScaleScyllaDB
We all want to build applications that are blazingly fast. We also want to scale them to users all over the world. Can the two happen together? Can users in the slowest of environments also get a fast experience? Learn how we do this at Netflix: how we understand every user's needs and preferences and build high performance applications that work for every user, every time.
What's Next Web Development Trends to Watch.pdfSeasiaInfotech2
Explore the latest advancements and upcoming innovations in web development with our guide to the trends shaping the future of digital experiences. Read our article today for more information.
1. Google Cloud Platform
Kubernetes Workshop
www.zetaops.io
Simplicity is the ultimate sophistication
Leonardo da Vinci“
“
8 Kasım 2017, Çarşamba
İYTE İnovasyon Merkezi
2. Shoshin
(初心) is a concept in Zen Buddhism
meaning "beginner's mind". It refers to
having an attitude of openness, eagerness,
and lack of preconceptions when studying
a subject, even when studying at an
advanced level, just as a beginner in that
subject would.
3. Program
● 09:45 - 10:15, Önder Güler, Google Cloud Country Manager, Google
Cloud Vizyonu
● 10:15 - 11:30, Pınar Uğurlu Kirazcı, Cloud Customer Engineer, Google,
Google Cloud Servislerine Teknik Bakış
● 11:30 - 12:30, Gökhan Boranalp, Zetaops, Sanallaştırma temelleri,
Virtual machines, LX{C,D} Containers, Unikernels
● 13:30 - 14:15, Gökhan Boranalp, Zetaops, GCloud sdk tanıtımı
● 14:30 - 15:45, Gökhan Boranalp, Zetaops, Kubernetes nedir?
Bileşenleri nelerdir?
● 14:30 - 15:45, Pınar Uğurlu Kirazcı, Cloud Customer Engineer, Google,
Kubernetes Fast Track Demo
● 15:30 - 16:30, Gökhan Boranalp, Zetaops, Kubernetes ile örnek bir
dağıtık web uygulaması
● 16:45 - 17:15, Gökhan Boranalp, Zetaops, Soru cevap
7. Sanallaştırma Temelleri
● Sanal makinalar stateful
● Büyük VM’ler: Depolama VM içinde,
tüm servisler aynı VM içinde,
kocaman vCPU ve vRAM
● Uygulama SLA kuralları VM hayatta
kalsın diye var.
● Dağıtıklık ve fail durumu için eldeki
HA teknolojisine bağlı
● VM’ler kurulumdan sonra CPU ve
RAM bakımından ölçeklenebilir.
● Uygulamalar VM’in crash olması
durumuna göre geliştirilmemiştir.
● Örnek:
Aynı VM üzerinde, database, web
server, frontend app birlikte çalışıyor.
● Uygulamalar dağıtık olmak
üzere tasarlanmıştır. VM’ler
stateless haldedir.
● VM’ler küçüktür.
● Uygulama SLA kuralları tüm
uygulama içindir. Bir VM için
değil.
● Uygulama çok sayıda
instance üzerinde
çalışmaktadır.
● Uygulamanın
ölçeklendirilmesi için anlık
olarak VM eklenebilir.
● Uygulamalar VM’lerin fail
olması durumuna göre
geliştirilmiştir.
PETS CATTLE
10. Sanallaştırma Temelleri - Docker
● Docker Engine - Runs on “Linux” to create the
operating environment for your distributed
applications.
● Docker Machine - Automate Docker
provisioning.
● Docker Swarm - Docker Swarm is native
clustering for Docker. It turns a pool of Docker
hosts into a single, virtual Docker host.
11. Sanallaştırma Temelleri - Docker
● Docker Compose - Compose is a tool for
defining and running multi-container Docker
applications.
● Docker Registry - The Registry is a stateless,
highly scalable server side application that
stores and lets you distribute Docker images.
● Docker Toolbox - The Docker Toolbox is an
installer to install and setup a Docker
environment on your computer.
51. Hands on Kubernetes
Master: Kubernetes control panel or control plane.
This is where decisions are made about the cluster,
such as scheduling, and detecting/responding to
cluster events. The components of the master can
be run on any node in the cluster. Key components
of the master:
52. API Server — This is the only component of the
Kubernetes control panel with a user-accessible API and
the sole master component that you’ll interact with. The
API server exposes a restful Kubernetes API and
consumes JSON manifest files.
Cluster State&Data Store — Kubernetes uses “etcd.” This
is a strong consistent, and highly-available key value
store that Kubernetes uses for persistent storage of all
API objects. Think of it as the “source of truth” for the
cluster.
Hands on Kubernetes
53. Hands on Kubernetes
Controller Manager — Known as the “kube-controller
manager,” this runs all the controllers that handle routine
tasks in the cluster. These include the Node Controller,
Replication Controller, Endpoints Controller, and Service
Account and Token Controllers. Each of these controllers
works separately to maintain the desired state.
54. Hands on Kubernetes
Scheduler — The scheduler watches for newly-created pods
(groups of one or more containers) and assigns them to
nodes.
Dashboard (optional) — Kubernetes web UI that simplifies
the Kubernetes cluster user’s interactions with the API
server.
55. Kubernetes Worker Nodes
Master handles and manages the cluster, worker nodes run
the containers and provide the Kubernetes runtime
environment. Worker nodes comprise a kubelet. This is the
primary node agent. It watches the API server for pods that
have been assigned to its node. Kubelet carries out tasks
and maintains a reporting backchannel of pod status to the
master node.
Hands on Kubernetes
56. Hands on Kubernetes
Inside each pod there are containers, kubelet runs these via
Docker (pulling images, starting and stopping containers,
etc.). It also periodically executes any requested container
liveness probes. In addition to Docker, RKT is also
supported and the community is actively working to support
OCI.
Another component of worker nodes is kube-proxy. This is
the network brain of the node, maintaining network rules on
the host and performing connection forwarding. It’s also
responsible for load balancing across all pods in the service.
57. Kubernetes Pods
A pod is a group of one or more containers (such as Docker
containers), with shared storage/network. Each pod
contains specific information on how the containers should
be run. Think of pods as a ring-fenced environment to run
containers.
Pods are also a unit for scaling. If you need to scale an app
component up or down, this can be achieved by adding or
removing pods.
Hands on Kubernetes
58. Hands on Kubernetes
It’s possible to run more than one container in a pod (where
each share the same IP address and mounted volumes), if
they’re tightly coupled.
Pods are deployed on a single node and have a definite
lifecycle. They can be pending, running, succeeding, or
failing, but once gone, they are never brought back to life. If
a pod dies, a replication controller or other controller must
be used to create a new one.
59. Pods — A description of a set of containers that need to run
together.
Services — An object that describes a set of pods that
provide a useful service. Services are typically used to
define clusters of uniform pods.
Persistent Volumes — A Kubernetes abstraction for
persistent storage. Kubernetes supports many types of
volumes, such as NFS, Ceph, GlusterFS, local directory, etc.
Hands on Kubernetes
60. Namespaces — This is a tool used to group, separate, and
isolate groups of objects. Namespaces are used for access
control, network access control, resource management, and
quoting.
Ingress rules — These specify how incoming network traffic
should be routed to services and pods.
Network policies — This defines the network access rules
between pods inside the cluster.
Hands on Kubernetes
61. ConfigMaps and Secrets — Used to separate configuration
information from application definition.
Controllers — These implement different policies for
automatic pod management. There are three main types:
1. Deployment — Responsible for maintaining a set of running pods of the
same type.
2. DaemonSet — Runs a specific type of pod on each node based on a
condition.
3. StatefulSet — Used when several pods of the same type are needed to run
in parallel, but each of the pods is required to have a specific identity.
Hands on Kubernetes
62. Hands on Kubernetes
● Kubernetes simultaneously runs and controls a set of
nodes on virtual or physical machines.
● This is achieved by running agents on each node.
● The agent talks to the master via the same API used to
send the blueprint to Kubernetes.
● The agent registers itself in the master, providing
Kubernetes with information about the nodes.
● Reading through the API, the agent determines which
containers are required to run on the corresponding node
and how they are to be configured.
63. Hands on Kubernetes
● The master node runs several Kubernetes components.
● Together, these make all control decisions about which
container needs to be started on which node and how it
should be configured.
● In addition, the master and agent may interact with a
cloud provider and manage additional cloud resources
such as load balancers, persistent volumes, persistent
block storage, network configuration, and number of
instances.
64. Hands on Kubernetes
● The master can be a single instance running Kubernetes
components or a set of instances to ensure high
availability.
● A master can also serve (in certain configurations) as a
node to run containers, although this is not
recommended for production.
★ Don’t run heavy duty databases in Kubernetes
★ Choose wisely your load balancer.
65. ● Running the Kubernetes cluster
○ Examples
■ https://cloud.google.com/container-engine/docs/
tutorials/hello-app
■ https://github.com/kubernetes/examples/blob/m
aster/staging/spark/README.md
■ https://cloud.google.com/solutions/continuous-d
elivery-jenkins-container-engine
Hands on Kubernetes
66. Hands on Kubernetes
Q: If Pods are ephemeral how can I persist my container data across container
restarts?
A: Kubernetes supports the concept of Volumes so you can use a Volume type
that is persistent.
Q: Do I create Pods manually, what if I want to create a few copies of the same
container do I have to create each one individually?
A: Replication Controller to rollout multiple copies using a Pod template
Q: If Pods are ephemeral and their IP address might change if they get restarted
how can I reliability reference my backend container from a frontend container?
A: Use a Service