Kubernetes intro.

Slides:



Advertisements
Similar presentations
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Advertisements

 Tightly coupled containers of multiple resources of similar or different types  Lifecycle, Access, Billing & Identity control the resources placed.
© 2006 EMC Corporation. All rights reserved. Managing the Data Center Section 5.2.
Module – 7 network-attached storage (NAS)
ProjectWise Virtualization Kevin Boland. What is Virtualization? Virtualization is a technique for deploying technologies. Virtualization creates a level.
Grid Computing Meets the Database Chris Smith Platform Computing Session #
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
MDC417 Follow me on Working as Practice Manager for Insight, he is a subject matter expert in cloud, virtualization and management.
608D CloudStack 3.0 Omer Palo Readiness Specialist, WW Tech Support Readiness May 8, 2012.
1 Week #10Business Continuity Backing Up Data Configuring Shadow Copies Providing Server and Service Availability.
Networking in Linux. ♦ Introduction A computer network is defined as a number of systems that are connected to each other and exchange information across.
CoprHD and OpenStack Ideas for future.
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
CERN - IT Department CH-1211 Genève 23 Switzerland t High Availability Databases based on Oracle 10g RAC on Linux WLCG Tier2 Tutorials, CERN,
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Docker Overview Automating.
Alfresco deployment with Docker Andrea Agili Software Engineer – Dr Wolf srl Tommaso Visconti DevOps – Dr Wolf srl.
BIG DATA/ Hadoop Interview Questions.
Elara Introduction Wentao Zhang? (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
Architecting Enterprise Workloads on AWS Mike Pfeiffer.
If it’s not automated, it’s broken!
Federating Data in the ALICE Experiment
fd.io vpp and containers
Containers How to get started … and win
Bentley Systems, Incorporated
Web application hosting with Openshift, and Docker images
Web application hosting with Openshift, and Docker images
Dockerize OpenEdge Srinivasa Rao Nalla.
File System Implementation
OpenLegacy Training Day Four Introduction to Microservices
The PaaS Layer in the INDIGO-DataCloud
Docker and Azure Container Service
Containers: The new network endpoint
Large-scale file systems and Map-Reduce
Docker Birthday #3.
Web Hosting with OpenShift
In-Depth Introduction to Docker
Deploying Dockerized Apps to the Azure Container Service
Introduction to Microservices Prepared for
INDIGO – DataCloud PaaS
AWS COURSE DEMO BY PROFESSIONAL-GURU. Amazon History Ladder & Offering.
GGF15 – Grids and Network Virtualization
Event driven Microservices with VERT.X & Kubernetes
Kubernetes Container Orchestration
Agenda Intro Why use containers at all? Linux Kernel: a pop of history
Confidential – Oracle Internal/Restricted/Highly Restricted
HDFS on Kubernetes -- Lessons Learned
Intro to Docker Containers and Orchestration in the Cloud
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Connecting, Managing, Observing, and Securing Services
Getting Started with Kubernetes and Rancher 2.0
Clouds & Containers: Case Studies for Big Data
Docker Orchestration: Step-by-step
HDFS on Kubernetes -- Lessons Learned
Orchestration & Container Management in EGI FedCloud
Container cluster management solutions
OpenShift vs. Vanilla k8s on OpenStack IaaS
DEVOPS & THE FUTURE OF TESTING
OpenShift as a cloud for Data Science
Kubernetes.
Container technology, Microservices, and DevOps
OpenStack Summit Berlin – November 14, 2018
Kubernetes.
Containers and DevOps.
Setting up PostgreSQL for Production in AWS
SQL Server Devops with production data
Containers on Azure Peter Lasne Sr. Software Development Engineer
SQL Server on Containers
Presentation transcript:

Kubernetes intro

How can we simplify PerfSonar management? Need to run some software on a set of nodes Config is repeated on all nodes Want to autodiscover new nodes New nodes info should be added to config file and propagated Containers + Container orchestration system

Kubernetes definition Kubernetes is ancient Greek for "Helmsman". Root of the word "Governor", "Cybernetics". Kubernetes is a "Container Orchestrator" or "Cluster Manager". Places containers on nodes Recovers automatically from failure Basic monitoring, logging, health checking Enables containers to find each other.

Google grown Based on ideas proven at Google over 10 years Google launches 2 billion containers per week. Part of a larger set of tools that make up the internal Google platform. Everything at google runs in containers

Linux containers

Docker container: layers, union filesystem Docker images are read-only templates from which Docker containers are launched. Only top layer is writeable Copy on write Only changed layers need to be transferred Natively supports ZFS for storing layers (zvol)

We need more than just packing and isolation Scheduling: where should my container run? Lifecycle and health: Keep my containers running despite failures Discovery: Where are my containers now? Monitoring: What’s happening with my containers? Auth{n,z}: Control who can do things to my containers Aggregates: Compose sets of containers into jobs Scaling: Making jobs bigger or smaller Provisioning storage: block volumes, shared FS

PODs Pods are the basic building block of Kubernetes Pods are the smallest deployable units that are created and managed in Kubernetes A Pod is a group of one or more deeply coupled containers Shared network Shared storage Options to run the containers Each pod is assigned a unique, DYNAMIC IP address

Service An interface to a set of replicated pods, which acts as a load-balancer Provides an abstraction layer No need to worry about containers location.

Other units ReplicaSets: Ensures that the number of desired pods "replicas" are running at any time. Deployments: Declarative way to describe the desired state of the application (pods, replica sets). Easy version updates for any software DaemonSets: runs a POD on every node in a cluster StatefulSets: clustered applications Startup/shutdown ordering Stable hostname and storage Clustered MySQL, Zookeeper, Elasticsearch, Cassandra Volume plugins: ConfigMaps, Secrets, HostPath, rook (ceph), nfs, iscsi, gitRepo, …

Networking The pods are scheduled on a flat shared network across all nodes. Each pod can communicate without proxies and translations (NAT) with other pods within the cluster. Several implementations are available: Flannel, Weave, OpenVswitch, Calico, kube-router Kube-router talks BGP Can assign AS to groups of nodes Can export routing rules Supports ExternalIP for services Automatically connects remote nodes with TCP tunnels – doesn’t have to be in same subnet

Our approach to PerfSonar install PerfSonar Master Archive - a Deployment 1 POD, keep it alive, restart if necessary TestPoints - a DaemonSet Runs 1 copy of POD on every node in a cluster Esmond - a Service Points to currently running PerfSonar container Cassandra DB - a StatefulSet Nodes have their stable names, can elect a master node PostgreSQL DB - inside the PerfSonar POD Required, can’t separate

Cluster autoconfig List of testpoints Kubernetes API MeshConfig Schedules testpoint PODs on all nodes in the cluster Config JSON TestPoint PerfSonar Central MA Measurement results TestPoint TestPoint