DevOps
Open House III
Thursday 22nd
October 7-8 pm
Agenda
•Introductions
•Overview of DevOps
•Kubernetes (YAML)
•Questions
Prashant Beniwal
• 20 Years experience in IT Telecom Industry in variety of roles including
Development, Support and Quality Assurance.
• Extremely conversant with Telecom Domain and keen interest in multiple tools
technologies
• Certified DevOps Trainer and Coach.
• AI and Machine Learning Enthusiast
• Micro Services using Cloud, Docker and Kubernetes
• Training Assignments: India – Amdocs, Cyprus –Amdocs, Ireland – BriteBill,
Spain – BriteBill, India – Qualitest, Edureka – Devops, StarAgile, Vinsys, Excendo
• Avid Public Speaker at multiple conferences
• Visiting faculty at various universities
www.linkedin.com/in/prashant-beniwal+91-9850979757
pbeniwal@yahoo.com
Last Open house we saw the
DevOps Pipeline in action.
Lets quickly see it running once
again..
CPDOF CI-CD Pipeline
Running your application
on GKE
About GKE
• Google Kubernetes Engine is a managed, production-ready environment for
deploying containerized applications
• Kubernetes Engine allows you to get up and running with Kubernetes in no
time, by completely eliminating the need to install, manage, and operate
your own Kubernetes clusters.
• Managed Kubernetes Engine feature allows you to handle increased user
demand for your services, keeping them available when it matters most
Ref:
https://cloud.google.co
m/kubernetes-engine/
1. Package your app into a Docker image
2. Upload the image to a registry
3. Deploy your app to the cluster
4. Expose your app to the Internet
5. Deploy a new version of your app
To package and deploy your application on GKE:
Flow of Demo on GKE:
Load BalancerChrome
External Load balancer Service
Deployment
Replica Set
POD
Container
Control Node
Worker Node
Imperative vs Declarative
Imperative vs Declarative
Declarative
• Describe what you want to have
• e.g. I would like a cup of coffee
• Writing Manifest file for performing operation in Kubernetes
• Follows principle of Infrastructure as Code (IaC)
Imperative
• Tell me what to do
• e.g. Boil water, Pour it in a pot, Put coffee powder ...
• In Kubernetest giving kubectl command from Command line
YAML Basics
Basics of YAML
• YAML is serialization language
• Human readable and intuitive
• Key Value Pair using syntax:
• <key>: <value>
• Indentation and line seperation denotes
the structure
• Members of List begin with –
• Used by popular tools like:
• Docker
• Kubernetes
• Ansible
• Prometheus
Service:
- app: my-web
port: 9090
version: 1.0 <Services>
<Service>
<app>my-web</app>
<port> 9090</port>
<version>1.0 </version>
</Service>
</Services>
YAML
XML
{
Services: [
{
app: “my-web”
port: 9090
version: “1.0”
}
]
}
JSON
Sample POD YAML Manifest file
• Main four sections
• apiVersion
• kind
• metadata
• spec
• apiVersion is as per Kubernetes API
version
• Kind could have values like Pod,
Deployment, Services etc. which are
Kubernetes Objects
• Metadata is informaiton about the
Kubernetes objects
• Spec is all details about specification of
Kubernetes object
apiVersion:
kind:
metadata:
spec:
YAML
apiVersion: v1
kind:
metadata:
spec:
apiVersion: v1
kind: Pod
metadata:
spec:
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: web
image: tomcat
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
kubectl run my-pod --image=tomcat
Imperative
kubectl create deploy helloworld --image=pbeniwal/helloworld:v1 --port=8080 –replicas=2
Create Deployment
Imperative
Declarative
kubectl expose deployment helloworld --type LoadBalancer --port 80 --target-port 8080
Create Service
Imperative
Declarative
Access Application
5. Deploy a new version of your app
New changes deployment flow
Webhook
Deployment
Replica Set
POD
Container
Worker Node
External Load balancer Service
Control Node
About CP-DOF
(Certified Professional-DevOps Foundation)
https://cpdof.devopsppalliance.org/
https://cpdof.devopsppalliance.org/
CP-DOF Testimonials
https://cpdof.dev
opsppalliance.org
/testimonials
Upcoming CP-DOF program
You are all entitled for a special 10% off on the early bird price
Questions ?
Thanks for being a part of
DevOps Open house III

DevOps Open House III - Kubernetes using YAML

  • 1.
    DevOps Open House III Thursday22nd October 7-8 pm
  • 2.
  • 3.
    Prashant Beniwal • 20Years experience in IT Telecom Industry in variety of roles including Development, Support and Quality Assurance. • Extremely conversant with Telecom Domain and keen interest in multiple tools technologies • Certified DevOps Trainer and Coach. • AI and Machine Learning Enthusiast • Micro Services using Cloud, Docker and Kubernetes • Training Assignments: India – Amdocs, Cyprus –Amdocs, Ireland – BriteBill, Spain – BriteBill, India – Qualitest, Edureka – Devops, StarAgile, Vinsys, Excendo • Avid Public Speaker at multiple conferences • Visiting faculty at various universities www.linkedin.com/in/prashant-beniwal+91-9850979757 pbeniwal@yahoo.com
  • 4.
    Last Open housewe saw the DevOps Pipeline in action. Lets quickly see it running once again..
  • 6.
  • 7.
  • 8.
    About GKE • GoogleKubernetes Engine is a managed, production-ready environment for deploying containerized applications • Kubernetes Engine allows you to get up and running with Kubernetes in no time, by completely eliminating the need to install, manage, and operate your own Kubernetes clusters. • Managed Kubernetes Engine feature allows you to handle increased user demand for your services, keeping them available when it matters most Ref: https://cloud.google.co m/kubernetes-engine/
  • 9.
    1. Package yourapp into a Docker image 2. Upload the image to a registry 3. Deploy your app to the cluster 4. Expose your app to the Internet 5. Deploy a new version of your app To package and deploy your application on GKE:
  • 10.
    Flow of Demoon GKE: Load BalancerChrome External Load balancer Service Deployment Replica Set POD Container Control Node Worker Node
  • 11.
  • 12.
    Imperative vs Declarative Declarative •Describe what you want to have • e.g. I would like a cup of coffee • Writing Manifest file for performing operation in Kubernetes • Follows principle of Infrastructure as Code (IaC) Imperative • Tell me what to do • e.g. Boil water, Pour it in a pot, Put coffee powder ... • In Kubernetest giving kubectl command from Command line
  • 13.
  • 14.
    Basics of YAML •YAML is serialization language • Human readable and intuitive • Key Value Pair using syntax: • <key>: <value> • Indentation and line seperation denotes the structure • Members of List begin with – • Used by popular tools like: • Docker • Kubernetes • Ansible • Prometheus Service: - app: my-web port: 9090 version: 1.0 <Services> <Service> <app>my-web</app> <port> 9090</port> <version>1.0 </version> </Service> </Services> YAML XML { Services: [ { app: “my-web” port: 9090 version: “1.0” } ] } JSON
  • 15.
    Sample POD YAMLManifest file • Main four sections • apiVersion • kind • metadata • spec • apiVersion is as per Kubernetes API version • Kind could have values like Pod, Deployment, Services etc. which are Kubernetes Objects • Metadata is informaiton about the Kubernetes objects • Spec is all details about specification of Kubernetes object apiVersion: kind: metadata: spec: YAML apiVersion: v1 kind: metadata: spec: apiVersion: v1 kind: Pod metadata: spec: apiVersion: v1 kind: Pod metadata: name: my-pod spec: containers: - name: web image: tomcat apiVersion: v1 kind: Pod metadata: name: my-pod spec: kubectl run my-pod --image=tomcat Imperative
  • 16.
    kubectl create deployhelloworld --image=pbeniwal/helloworld:v1 --port=8080 –replicas=2 Create Deployment Imperative Declarative
  • 17.
    kubectl expose deploymenthelloworld --type LoadBalancer --port 80 --target-port 8080 Create Service Imperative Declarative
  • 18.
  • 19.
    5. Deploy anew version of your app
  • 20.
    New changes deploymentflow Webhook Deployment Replica Set POD Container Worker Node External Load balancer Service Control Node
  • 21.
    About CP-DOF (Certified Professional-DevOpsFoundation) https://cpdof.devopsppalliance.org/
  • 22.
  • 23.
  • 24.
    Upcoming CP-DOF program Youare all entitled for a special 10% off on the early bird price
  • 25.
  • 26.
    Thanks for beinga part of DevOps Open house III