SlideShare a Scribd company logo
SCALITY METALK8S
AN OPINIONATED KUBERNETES DISTRIBUTION
WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS
Nicolas Trangez - Technical Architect
nicolas.trangez@scality.com
@eikke
ABOUT SCALITY
ONE PURPOSE
GIVING FREEDOM & CONTROL
TO PEOPLE WHO CREATE
VALUE WITH DATA
8 60+
120+
20+
~10
GLOBAL CLIENT BASEGLOBAL PRESENCE
20+
OFFICES
200+
PEOPLE
NATIONALITIES
EUROPEAMERICAS
AUSTRALIA
JAPAN
OUR JOURNEY TO KUBERNETES
Scality RING, S3 Connector & Zenko
Scality RING
- Physical servers, some VMs
- Only the OS available (incl. ‘Legacy’
like CentOS 6)
- Static resource pools
- Static server roles / configurations
- Solution distributed as RPM
packages, deployed using
SaltStack
- De-facto taking ownership of host,
difficult to run multiple instances
- Fairly static post-install
On-premise
Distributed Object & File Storage
Scality S3
Connector
On-premise S3-compatible Object
Storage
- Physical servers, sometimes VMs
- Static resource pools
- “Microservices” architecture
- Solution distributed as Docker
container images, deployed using
Ansible playbooks
- No runtime orchestration
- Log management, monitoring,...
comes with solution
Scality Zenko
- Deployed on-prem or ‘in the Cloud’:
major paradigm shift
- New challenges, new opportunities
- Multi-Cloud Data Controller, must
run on multiple Cloud platforms
Multi-Cloud Data Controller
Scality Zenko
- Embraced Docker as distribution
mechanism
- Some shared with Scality S3 Connector
- For Cloud deployments, started
with Docker Swarm
- Ran into scaling, reliability and other
technical issues
- Decided to move to Kubernetes
- Managed platforms for Cloud
deployments, where available (GKE,
AKS, EKS one day)
- On-prem clusters
Deployment Model
Scality Zenko
- Homogenous deployment between
in-cloud and on-prem
- Various services provided by
cluster:
- Networking & policies
- Service restart, rolling upgrades
- Service log capturing & storage
- Service monitoring & metering
- Load-balancing
- TLS termination
- Flexible resource management
- If needed, easily add resources to
cluster by adding some (VM) nodes
- HorizontalPodAutoscaler
Kubernetes Benefits
OUR JOURNEY TO KUBERNETES
MetalK8s
On-prem Kubernetes
- Can’t expect a Kubernetes to be available, provided by Scality customer
- Looked into various existing offerings, but in the ends needs to be supported
by/through Scality (single offering)
- Decided to roll our own
SCALITY METALK8S
AN OPINIONATED KUBERNETES DISTRIBUTION
WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS
OPINIONATED
We offer an out-of-the-box experience, no non-trivial
choices to be made by users
LONG-TERM
Zenko solution is mission-critical, can’t spawn a new
cluster to upgrade and use ELB (or similar) in front
ON-PREM
Can’t expect anything to be available but (physical)
servers with a base OS
Scality MetalK8s
- “Stand on the shoulders of giants”
- Scope: 5-20 physical machine, pre-provisioned by customer or partner
- Built on top of the excellent Kubespray Ansible playbook
- Use Kubespray to lay out a base Kubernetes cluster
- Also: etcd, CNI
- Add static & dynamic inventory validation pre-checks, OS tuning, OS security
- Based on experience from large-scale Scality RING deployments
- Augment with various services, deployed using Helm
- Operations
- Ingress
- Cluster services
- Take care of on-prem specific storage architecture
Scality MetalK8s: Cluster Services
- “Stand on the shoulders of giants”
- Heapster for dashboard graphs, `kubectl top`,...
- metrics-server for HorizontalPodAutoscaler
- Looking into k8s-prometheus-adapter
- Ingress & TLS termination: nginx-ingress-controller
- Cluster monitoring & alerting: Prometheus, prometheus-operator, Alertmanager,
kube-prometheus, Grafana
- Host-based node_exporter on all servers comprising the cluster, including etcd
- Host & container logs: ElasticSearch, Curator, fluentd, Kibana
- Considering switch to fluent-bit
- All of the above gives a great out-of-the-box experience for operators
Introducing MetalK8s, An Opinionated Kubernetes Implementation
Introducing MetalK8s, An Opinionated Kubernetes Implementation
Introducing MetalK8s, An Opinionated Kubernetes Implementation
Scality MetalK8s: Storage
- On-prem: no EBS, no GCP Persistent Disks, no Azure Storage Disk,...
- Also: can’t rely on NAS (e.g. through OpenStack Cinder) to be available
- Lowest common denominator: local disks in a node
- PVs bound to a node, hence PVCs bound, hence Pods bound
- Thanks PersistentLocalVolumes & VolumeScheduling!
- Decided not to use LocalVolumeProvisioner, but static approach (for now)
- Based on LVM2 Logical Volumes for flexibility
- PV, VG, LVs defined in inventory, created/formatted/mounted by playbook
- K8s PV objects created by playbook
- May support whole partitions/drives depending on application need
- Working with community on Dynamic Local Volume provisioning
- Also using LVM2
Scality MetalK8s: Deployment
- Based on years of years of experience deploying Scality RING at enterprise customers,
service providers,...
- Constraints in datacentra often very different from ‘VMs on EC2’
- No direct internet access: everything through HTTP(S) proxy, no non-HTTP traffic
- Dynamic server IP assignment
- Security rules requiring services to bind to specific IPs only
- Fully air gapped systems: requires 100% offline installation
- Non-standard OS/kernel
- Integration with corporate authn/authz systems
- Not all of the above supported yet, tackling one by one
- Relevant patches to be upstreamed to Kubespray
- Only support RHEL/CentOS family of Linux distributions
- Support for Ubuntu and others can be community-driven, Kubespray supports them
- RHEL/CentOS sometimes difficult targets for containers/Docker/Kubernetes
Scality MetalK8s: Ease of Deployment
$ # Requirements: a Linux or OSX machine with Python and coreutils-like
$ # Create inventory
$ vim inventory/...
$ make shell # Launches a ‘virtualenv’ with Ansible & deps, ‘kubectl’,
‘helm’
$ # Demo @ https://asciinema.org/a/9kNIpBWg4KiwjT5mNSrH0tmj9
$ ansible-playbook -i inventory -b metal-k8s.yml
$ # Grab a coffee, and done
Scality MetalK8s: The road forward
- Documentation: Install guides, Operations guides, Troubleshooting guides,...
- Forward & backward compatibility requirements
- Sizing numbers
- Hardware & software compatibility testing
- Security auditing & testing
- Testing/CI: install, upgrade, downgrade, ‘monkey’,...
- Also in very constrained environments
- Delivery of fully-offline installation package
- ...
SCALITY METALK8S
AN OPINIONATED KUBERNETES DISTRIBUTION
WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS
https://zenko.io
https://github.com/scality/metal-k8s
@Scality | @Zenko
Ad

More Related Content

What's hot (20)

Keystone Updates - Kilo Edition
Keystone Updates - Kilo EditionKeystone Updates - Kilo Edition
Keystone Updates - Kilo Edition
OpenStack Foundation
 
Nexus1000V on KVM and OpenStack Integration
Nexus1000V on KVM and OpenStack IntegrationNexus1000V on KVM and OpenStack Integration
Nexus1000V on KVM and OpenStack Integration
openstackindia
 
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
cloud-diva
 
QN Blue Lava
QN Blue LavaQN Blue Lava
QN Blue Lava
DmitryShklovsky1
 
Architecture Openstack for the Enterprise
Architecture Openstack for the EnterpriseArchitecture Openstack for the Enterprise
Architecture Openstack for the Enterprise
Keith Tobin
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
Edgar Magana
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack Architecture
Mirantis
 
Getting started with OpenStack
Getting started with OpenStackGetting started with OpenStack
Getting started with OpenStack
Knoldus Inc.
 
VMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIOVMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIO
Filip Verloy
 
Intro to OpenStack
Intro to OpenStackIntro to OpenStack
Intro to OpenStack
donnieh1
 
Modern Elastic Datacenter Architecture
Modern Elastic Datacenter ArchitectureModern Elastic Datacenter Architecture
Modern Elastic Datacenter Architecture
Weston Bassler
 
Open Source Cloud Computing -Eucalyptus
Open Source Cloud Computing -EucalyptusOpen Source Cloud Computing -Eucalyptus
Open Source Cloud Computing -Eucalyptus
Sameer Naik
 
Openstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2SchoolOpenstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2School
Asaf Abres
 
SUSE Container as a Service Platform
SUSE Container as a Service PlatformSUSE Container as a Service Platform
SUSE Container as a Service Platform
SUSE
 
OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017
Christian "kiko" Reis
 
Openstack architure part 1
Openstack architure part 1Openstack architure part 1
Openstack architure part 1
Nhan Cao Thanh
 
Openstack Architecture
Openstack ArchitectureOpenstack Architecture
Openstack Architecture
SrbIT
 
VSphere Integrated Containers v3.0
VSphere Integrated Containers v3.0VSphere Integrated Containers v3.0
VSphere Integrated Containers v3.0
The World Bank
 
Building virtualised CloudStack test environments
Building virtualised CloudStack test environmentsBuilding virtualised CloudStack test environments
Building virtualised CloudStack test environments
ShapeBlue
 
Mastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesMastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple Architectures
Roozbeh Shafiee
 
Nexus1000V on KVM and OpenStack Integration
Nexus1000V on KVM and OpenStack IntegrationNexus1000V on KVM and OpenStack Integration
Nexus1000V on KVM and OpenStack Integration
openstackindia
 
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
cloud-diva
 
Architecture Openstack for the Enterprise
Architecture Openstack for the EnterpriseArchitecture Openstack for the Enterprise
Architecture Openstack for the Enterprise
Keith Tobin
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
Edgar Magana
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack Architecture
Mirantis
 
Getting started with OpenStack
Getting started with OpenStackGetting started with OpenStack
Getting started with OpenStack
Knoldus Inc.
 
VMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIOVMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIO
Filip Verloy
 
Intro to OpenStack
Intro to OpenStackIntro to OpenStack
Intro to OpenStack
donnieh1
 
Modern Elastic Datacenter Architecture
Modern Elastic Datacenter ArchitectureModern Elastic Datacenter Architecture
Modern Elastic Datacenter Architecture
Weston Bassler
 
Open Source Cloud Computing -Eucalyptus
Open Source Cloud Computing -EucalyptusOpen Source Cloud Computing -Eucalyptus
Open Source Cloud Computing -Eucalyptus
Sameer Naik
 
Openstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2SchoolOpenstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2School
Asaf Abres
 
SUSE Container as a Service Platform
SUSE Container as a Service PlatformSUSE Container as a Service Platform
SUSE Container as a Service Platform
SUSE
 
OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017
Christian "kiko" Reis
 
Openstack architure part 1
Openstack architure part 1Openstack architure part 1
Openstack architure part 1
Nhan Cao Thanh
 
Openstack Architecture
Openstack ArchitectureOpenstack Architecture
Openstack Architecture
SrbIT
 
VSphere Integrated Containers v3.0
VSphere Integrated Containers v3.0VSphere Integrated Containers v3.0
VSphere Integrated Containers v3.0
The World Bank
 
Building virtualised CloudStack test environments
Building virtualised CloudStack test environmentsBuilding virtualised CloudStack test environments
Building virtualised CloudStack test environments
ShapeBlue
 
Mastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesMastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple Architectures
Roozbeh Shafiee
 

Similar to Introducing MetalK8s, An Opinionated Kubernetes Implementation (20)

Kash Kubernetified
Kash KubernetifiedKash Kubernetified
Kash Kubernetified
Michael Wojcikiewicz
 
Openstack 101
Openstack 101Openstack 101
Openstack 101
Kamesh Pemmaraju
 
5 cisco open_stack
5 cisco open_stack5 cisco open_stack
5 cisco open_stack
openstackindia
 
1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika
Juraj Hantak
 
Oow2016 review-iaas-paas-13th-18thoctober
Oow2016 review-iaas-paas-13th-18thoctoberOow2016 review-iaas-paas-13th-18thoctober
Oow2016 review-iaas-paas-13th-18thoctober
Getting value from IoT, Integration and Data Analytics
 
SCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN ApplicationsSCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN Applications
Simon Leinen
 
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
 Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E... Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
ShapeBlue
 
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas ToppeOSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
NETWAYS
 
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas HoppeOSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
NETWAYS
 
5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:
Kangaroot
 
KubeCon_NA_2021
KubeCon_NA_2021KubeCon_NA_2021
KubeCon_NA_2021
Alkin Tezuysal
 
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp
 
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Laure Vergeron
 
Openstack Cactus Survey
Openstack Cactus SurveyOpenstack Cactus Survey
Openstack Cactus Survey
Pjack Chen
 
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebula Project
 
VietOpenStack meetup 7th Kilo overview
VietOpenStack meetup 7th Kilo overviewVietOpenStack meetup 7th Kilo overview
VietOpenStack meetup 7th Kilo overview
Vietnam Open Infrastructure User Group
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
Getting value from IoT, Integration and Data Analytics
 
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
Introduction to CloudStack: How to Deploy and Manage Infrastructure-as-a-Serv...
CloudStack - Open Source Cloud Computing Project
 
CoreOS and cloud provider integration: simple cloud-init example at Exoscale
CoreOS and cloud provider integration: simple cloud-init example at ExoscaleCoreOS and cloud provider integration: simple cloud-init example at Exoscale
CoreOS and cloud provider integration: simple cloud-init example at Exoscale
Antoine COETSIER
 
Oracle virtual appliance
Oracle virtual applianceOracle virtual appliance
Oracle virtual appliance
solarisyougood
 
1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika
Juraj Hantak
 
SCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN ApplicationsSCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN Applications
Simon Leinen
 
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
 Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E... Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
ShapeBlue
 
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas ToppeOSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
OSDC 2018 | Self Hosted Bare Metal Kubernetes for SMEs by Thomas Toppe
NETWAYS
 
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas HoppeOSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
OSDC 2018 | Self Hosted bare Metal Kubernetes for SMEs by Thomas Hoppe
NETWAYS
 
5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:
Kangaroot
 
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового вид...
WebCamp
 
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
Laure Vergeron
 
Openstack Cactus Survey
Openstack Cactus SurveyOpenstack Cactus Survey
Openstack Cactus Survey
Pjack Chen
 
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebula Project
 
CoreOS and cloud provider integration: simple cloud-init example at Exoscale
CoreOS and cloud provider integration: simple cloud-init example at ExoscaleCoreOS and cloud provider integration: simple cloud-init example at Exoscale
CoreOS and cloud provider integration: simple cloud-init example at Exoscale
Antoine COETSIER
 
Oracle virtual appliance
Oracle virtual applianceOracle virtual appliance
Oracle virtual appliance
solarisyougood
 
Ad

More from Scality (13)

QuadIron An open source library for number theoretic transform-based erasure ...
QuadIron An open source library for number theoretic transform-based erasure ...QuadIron An open source library for number theoretic transform-based erasure ...
QuadIron An open source library for number theoretic transform-based erasure ...
Scality
 
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Scality
 
Storage that Powers Digital Business: Scality for Enterprise Backup
Storage that Powers Digital Business: Scality for Enterprise BackupStorage that Powers Digital Business: Scality for Enterprise Backup
Storage that Powers Digital Business: Scality for Enterprise Backup
Scality
 
2017 Hackathon Scality & 42 School
2017 Hackathon Scality & 42 School2017 Hackathon Scality & 42 School
2017 Hackathon Scality & 42 School
Scality
 
Leader in Cloud and Object Storage for Service Providers
Leader in Cloud and Object Storage for Service ProvidersLeader in Cloud and Object Storage for Service Providers
Leader in Cloud and Object Storage for Service Providers
Scality
 
Scality medical imaging storage
Scality medical imaging storageScality medical imaging storage
Scality medical imaging storage
Scality
 
Zenko: Enabling Data Control in a Multi-cloud World
Zenko: Enabling Data Control in a Multi-cloud WorldZenko: Enabling Data Control in a Multi-cloud World
Zenko: Enabling Data Control in a Multi-cloud World
Scality
 
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital MediaSuperior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Scality
 
AWS re:Invent 2016 - Scality's Open Source AWS S3 Server
AWS re:Invent 2016 - Scality's Open Source AWS S3 ServerAWS re:Invent 2016 - Scality's Open Source AWS S3 Server
AWS re:Invent 2016 - Scality's Open Source AWS S3 Server
Scality
 
Hackathon scality holberton seagate 2016 v5
Hackathon scality holberton seagate 2016 v5Hackathon scality holberton seagate 2016 v5
Hackathon scality holberton seagate 2016 v5
Scality
 
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
Scality
 
Scality S3 Server: Node js Meetup Presentation
Scality S3 Server: Node js Meetup PresentationScality S3 Server: Node js Meetup Presentation
Scality S3 Server: Node js Meetup Presentation
Scality
 
Scality Holberton Interview Training
Scality Holberton Interview TrainingScality Holberton Interview Training
Scality Holberton Interview Training
Scality
 
QuadIron An open source library for number theoretic transform-based erasure ...
QuadIron An open source library for number theoretic transform-based erasure ...QuadIron An open source library for number theoretic transform-based erasure ...
QuadIron An open source library for number theoretic transform-based erasure ...
Scality
 
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Wally MacDermid presents Scality Connect for Microsoft Azure at Microsoft Ign...
Scality
 
Storage that Powers Digital Business: Scality for Enterprise Backup
Storage that Powers Digital Business: Scality for Enterprise BackupStorage that Powers Digital Business: Scality for Enterprise Backup
Storage that Powers Digital Business: Scality for Enterprise Backup
Scality
 
2017 Hackathon Scality & 42 School
2017 Hackathon Scality & 42 School2017 Hackathon Scality & 42 School
2017 Hackathon Scality & 42 School
Scality
 
Leader in Cloud and Object Storage for Service Providers
Leader in Cloud and Object Storage for Service ProvidersLeader in Cloud and Object Storage for Service Providers
Leader in Cloud and Object Storage for Service Providers
Scality
 
Scality medical imaging storage
Scality medical imaging storageScality medical imaging storage
Scality medical imaging storage
Scality
 
Zenko: Enabling Data Control in a Multi-cloud World
Zenko: Enabling Data Control in a Multi-cloud WorldZenko: Enabling Data Control in a Multi-cloud World
Zenko: Enabling Data Control in a Multi-cloud World
Scality
 
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital MediaSuperior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Superior Streaming and CDN Solutions: Cloud Storage Revolutionizes Digital Media
Scality
 
AWS re:Invent 2016 - Scality's Open Source AWS S3 Server
AWS re:Invent 2016 - Scality's Open Source AWS S3 ServerAWS re:Invent 2016 - Scality's Open Source AWS S3 Server
AWS re:Invent 2016 - Scality's Open Source AWS S3 Server
Scality
 
Hackathon scality holberton seagate 2016 v5
Hackathon scality holberton seagate 2016 v5Hackathon scality holberton seagate 2016 v5
Hackathon scality holberton seagate 2016 v5
Scality
 
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
S3 Server Hackathon Presented by S3 Server, a Scality Product, Seagate and Ho...
Scality
 
Scality S3 Server: Node js Meetup Presentation
Scality S3 Server: Node js Meetup PresentationScality S3 Server: Node js Meetup Presentation
Scality S3 Server: Node js Meetup Presentation
Scality
 
Scality Holberton Interview Training
Scality Holberton Interview TrainingScality Holberton Interview Training
Scality Holberton Interview Training
Scality
 
Ad

Recently uploaded (20)

Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Social Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTechSocial Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTech
Steve Jonas
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Unlocking the Power of IVR: A Comprehensive Guide
Unlocking the Power of IVR: A Comprehensive GuideUnlocking the Power of IVR: A Comprehensive Guide
Unlocking the Power of IVR: A Comprehensive Guide
vikasascentbpo
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Mastering Advance Window Functions in SQL.pdf
Mastering Advance Window Functions in SQL.pdfMastering Advance Window Functions in SQL.pdf
Mastering Advance Window Functions in SQL.pdf
Spiral Mantra
 
TrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token ListingTrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token Listing
Trs Labs
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Social Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTechSocial Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTech
Steve Jonas
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Unlocking the Power of IVR: A Comprehensive Guide
Unlocking the Power of IVR: A Comprehensive GuideUnlocking the Power of IVR: A Comprehensive Guide
Unlocking the Power of IVR: A Comprehensive Guide
vikasascentbpo
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Mastering Advance Window Functions in SQL.pdf
Mastering Advance Window Functions in SQL.pdfMastering Advance Window Functions in SQL.pdf
Mastering Advance Window Functions in SQL.pdf
Spiral Mantra
 
TrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token ListingTrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token Listing
Trs Labs
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 

Introducing MetalK8s, An Opinionated Kubernetes Implementation

  • 1. SCALITY METALK8S AN OPINIONATED KUBERNETES DISTRIBUTION WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS Nicolas Trangez - Technical Architect [email protected] @eikke
  • 3. ONE PURPOSE GIVING FREEDOM & CONTROL TO PEOPLE WHO CREATE VALUE WITH DATA
  • 4. 8 60+ 120+ 20+ ~10 GLOBAL CLIENT BASEGLOBAL PRESENCE 20+ OFFICES 200+ PEOPLE NATIONALITIES EUROPEAMERICAS AUSTRALIA JAPAN
  • 5. OUR JOURNEY TO KUBERNETES Scality RING, S3 Connector & Zenko
  • 6. Scality RING - Physical servers, some VMs - Only the OS available (incl. ‘Legacy’ like CentOS 6) - Static resource pools - Static server roles / configurations - Solution distributed as RPM packages, deployed using SaltStack - De-facto taking ownership of host, difficult to run multiple instances - Fairly static post-install On-premise Distributed Object & File Storage
  • 7. Scality S3 Connector On-premise S3-compatible Object Storage - Physical servers, sometimes VMs - Static resource pools - “Microservices” architecture - Solution distributed as Docker container images, deployed using Ansible playbooks - No runtime orchestration - Log management, monitoring,... comes with solution
  • 8. Scality Zenko - Deployed on-prem or ‘in the Cloud’: major paradigm shift - New challenges, new opportunities - Multi-Cloud Data Controller, must run on multiple Cloud platforms Multi-Cloud Data Controller
  • 9. Scality Zenko - Embraced Docker as distribution mechanism - Some shared with Scality S3 Connector - For Cloud deployments, started with Docker Swarm - Ran into scaling, reliability and other technical issues - Decided to move to Kubernetes - Managed platforms for Cloud deployments, where available (GKE, AKS, EKS one day) - On-prem clusters Deployment Model
  • 10. Scality Zenko - Homogenous deployment between in-cloud and on-prem - Various services provided by cluster: - Networking & policies - Service restart, rolling upgrades - Service log capturing & storage - Service monitoring & metering - Load-balancing - TLS termination - Flexible resource management - If needed, easily add resources to cluster by adding some (VM) nodes - HorizontalPodAutoscaler Kubernetes Benefits
  • 11. OUR JOURNEY TO KUBERNETES MetalK8s
  • 12. On-prem Kubernetes - Can’t expect a Kubernetes to be available, provided by Scality customer - Looked into various existing offerings, but in the ends needs to be supported by/through Scality (single offering) - Decided to roll our own
  • 13. SCALITY METALK8S AN OPINIONATED KUBERNETES DISTRIBUTION WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS
  • 14. OPINIONATED We offer an out-of-the-box experience, no non-trivial choices to be made by users
  • 15. LONG-TERM Zenko solution is mission-critical, can’t spawn a new cluster to upgrade and use ELB (or similar) in front
  • 16. ON-PREM Can’t expect anything to be available but (physical) servers with a base OS
  • 17. Scality MetalK8s - “Stand on the shoulders of giants” - Scope: 5-20 physical machine, pre-provisioned by customer or partner - Built on top of the excellent Kubespray Ansible playbook - Use Kubespray to lay out a base Kubernetes cluster - Also: etcd, CNI - Add static & dynamic inventory validation pre-checks, OS tuning, OS security - Based on experience from large-scale Scality RING deployments - Augment with various services, deployed using Helm - Operations - Ingress - Cluster services - Take care of on-prem specific storage architecture
  • 18. Scality MetalK8s: Cluster Services - “Stand on the shoulders of giants” - Heapster for dashboard graphs, `kubectl top`,... - metrics-server for HorizontalPodAutoscaler - Looking into k8s-prometheus-adapter - Ingress & TLS termination: nginx-ingress-controller - Cluster monitoring & alerting: Prometheus, prometheus-operator, Alertmanager, kube-prometheus, Grafana - Host-based node_exporter on all servers comprising the cluster, including etcd - Host & container logs: ElasticSearch, Curator, fluentd, Kibana - Considering switch to fluent-bit - All of the above gives a great out-of-the-box experience for operators
  • 22. Scality MetalK8s: Storage - On-prem: no EBS, no GCP Persistent Disks, no Azure Storage Disk,... - Also: can’t rely on NAS (e.g. through OpenStack Cinder) to be available - Lowest common denominator: local disks in a node - PVs bound to a node, hence PVCs bound, hence Pods bound - Thanks PersistentLocalVolumes & VolumeScheduling! - Decided not to use LocalVolumeProvisioner, but static approach (for now) - Based on LVM2 Logical Volumes for flexibility - PV, VG, LVs defined in inventory, created/formatted/mounted by playbook - K8s PV objects created by playbook - May support whole partitions/drives depending on application need - Working with community on Dynamic Local Volume provisioning - Also using LVM2
  • 23. Scality MetalK8s: Deployment - Based on years of years of experience deploying Scality RING at enterprise customers, service providers,... - Constraints in datacentra often very different from ‘VMs on EC2’ - No direct internet access: everything through HTTP(S) proxy, no non-HTTP traffic - Dynamic server IP assignment - Security rules requiring services to bind to specific IPs only - Fully air gapped systems: requires 100% offline installation - Non-standard OS/kernel - Integration with corporate authn/authz systems - Not all of the above supported yet, tackling one by one - Relevant patches to be upstreamed to Kubespray - Only support RHEL/CentOS family of Linux distributions - Support for Ubuntu and others can be community-driven, Kubespray supports them - RHEL/CentOS sometimes difficult targets for containers/Docker/Kubernetes
  • 24. Scality MetalK8s: Ease of Deployment $ # Requirements: a Linux or OSX machine with Python and coreutils-like $ # Create inventory $ vim inventory/... $ make shell # Launches a ‘virtualenv’ with Ansible & deps, ‘kubectl’, ‘helm’ $ # Demo @ https://asciinema.org/a/9kNIpBWg4KiwjT5mNSrH0tmj9 $ ansible-playbook -i inventory -b metal-k8s.yml $ # Grab a coffee, and done
  • 25. Scality MetalK8s: The road forward - Documentation: Install guides, Operations guides, Troubleshooting guides,... - Forward & backward compatibility requirements - Sizing numbers - Hardware & software compatibility testing - Security auditing & testing - Testing/CI: install, upgrade, downgrade, ‘monkey’,... - Also in very constrained environments - Delivery of fully-offline installation package - ...
  • 26. SCALITY METALK8S AN OPINIONATED KUBERNETES DISTRIBUTION WITH A FOCUS ON LONG-TERM ON-PREM DEPLOYMENTS https://zenko.io https://github.com/scality/metal-k8s @Scality | @Zenko