kubeasz is a Kubernetes cluster deployment tool that uses Ansible playbooks to automate installation on Linux systems.
The tool addresses the challenge of deploying production-ready Kubernetes clusters by providing binary-based installation orchestrated through Ansible automation. It offers both one-command installation and step-by-step component deployment, allowing operators to assemble clusters from individual parts with granular control over any component parameter. The project includes sensible defaults for immediate use while supporting advanced configurations, including automatic setup of BGP Route Reflector network modes for large-scale deployments.
The tool suits operators deploying Kubernetes across diverse Linux distributions and architectures. It supports multiple network plugins including Calico, Cilium, Flannel, Kube-OVN, and Kube-Router, with containerd as the container runtime. High availability for master nodes, offline installation capabilities, and multi-architecture support for both AMD64 and ARM64 platforms are built in. The project explicitly targets environments where standard deployment methods may face constraints, particularly addressing network accessibility concerns. Supported systems span numerous distributions including RHEL, Debian, Ubuntu, openEuler, Rocky Linux, Alma Linux, and others, with documentation for handling distribution-specific requirements.
The project maintains active development with regular updates tracking upstream Kubernetes releases. Documentation is comprehensive, covering planning, certificate generation, component installation sequencing, and cluster addon configuration through structured guides. The codebase demonstrates responsiveness to platform diversity, with explicit support for multiple Linux distributions and documented notes for systems requiring special handling. Community contributions are actively solicited for expanding distribution support.