Run a kubernetes cluster
What is sealos
sealos is a cloud operating system distribution based on kubernetes.
- From now on, think of all your machines as an abstract supercomputer whose operating system is sealos, where Kubernetes serves as the OS kernel.
- Instead of IaaS, PaaS and SaaS, there will only be cloud OS drivers(CSI, CNI and CRI implementations), cloud OS kernel(Kubernetes) and distributed applications.
This is not win11 but sealos desktop
Use the cloud like a PC desktop, Freely run and uninstall any distributed applications:
Core features
- Manage clusters lifecycle
- Quickly install HA Kubernetes clusters
- Add / remove nodes
- Clean the cluster, backup and auto recovering, etc.
- Download and use OCI-compatible distributed applications
- OpenEBS, MinIO, Ingress, PostgreSQL, MySQL, Redis, etc.
- Customize you own distributed applications
- Using Dockerfile to build distributed applications images, saving all dependencies.
- Push distributed applications images to Docker Hub.
- Combine multiple applications to build your own cloud platform.
- Sealos cloud
- Run any distributed applications
- Have a full public cloud capability,and run it anywhere
Quickstart
Installing an HA kubernetes cluster with calico as CNI
Here kubernetes:v1.24.0
and calico:v3.24.1
are the cluster images in the registry which are fully compatible with OCI standard. Wonder if we can use flannel instead? Of course!
# Download and install sealos. sealos is a golang binary so you can just download and copy to bin. You may also download it from release page.
$ wget https://github.com/labring/sealos/releases/download/v4.1.3/sealos_4.1.3_linux_amd64.tar.gz && \
tar -zxvf sealos_4.1.3_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
# Create a cluster
$ sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
--masters 192.168.64.2,192.168.64.22,192.168.64.20 \
--nodes 192.168.64.21,192.168.64.19 -p [your-ssh-passwd]
Single host
$ sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 --single
# remove taint
$ kubectl taint node --all node-role.kubernetes.io/control-plane-
Building a custom cluster image
See Building an Example CloudImage.
Storage, message queue, database, etc.
Don't be shocked by the following:
sealos run labring/helm:v3.8.2 # install helm
sealos run labring/openebs:v1.9.0 # install openebs
sealos run labring/minio-operator:v4.4.16 labring/ingress-nginx:4.1.0 \
labring/mysql-operator:8.0.23-14.1 labring/redis-operator:3.1.4 # oneliner
And now everything is ready.
Use cri-docker image
sealos run labring/kubernetes-docker:v1.20.5-4.1.3 labring/calico:v3.24.1 \
--masters 192.168.64.2,192.168.64.22,192.168.64.20 \
--nodes 192.168.64.21,192.168.64.19 -p [your-ssh-passwd]
Links
- Contribution Guidelines
- Development Guide
- sealos 3.0(older version) For older version users. Note that sealos 4.0 includes significant improvements, so please upgrade ASAP.
- buildah Capabilities of buildah is widely used in sealos 4.0 to make cluster images compatible with container images and docker registry.
- sealer Capabilities of sealer is widely used in sealos 4.0 to make Clusterfile compatible with sealer, some module forked sealer source code.
Join us: Telegram, QQ Group(98488045), Wechat:fangnux