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

More Related Content

What's hot (20)

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

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

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

More from Scality (13)

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

Recently uploaded (20)

PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
Designing Production-Ready AI Agents
Kunal Rai
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Designing Production-Ready AI Agents
Kunal Rai
 

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