三、minikube与 kind 类似,minikube是一个工具,能让你在本地运行 Kubernetes 。minikube 在你的个人计算机(包括 windows、macOS 和 Linux PC)上运行一个一体化(all-in-one) 或多节点的本地 Kubernetes 集群 , 以便你来尝试 Kubernetes 或者开展每天的开发工作 。Kubernetes 是一个强大的容器编排平台 , 用于部署、管理和扩展容器化应用程序 。Minikube 简化了在本地开发环境中设置和实验 Kubernetes 集群的过程 。
以下是 Minikube 的一些关键特性和用途:
- 本地开发: Minikube 允许开发人员在笔记本电脑或台式机上创建 Kubernetes 集群 。这为开发人员提供了一种在模拟生产 Kubernetes 集群的环境中开发和测试应用程序的方式 。
- 学习 Kubernetes: Minikube 也常被初学者用来学习 Kubernetes 的概念和特性 , 而不必处理设置多节点集群带来的复杂性 。
- 测试和调试: 开发人员可以使用 Minikube 在受控环境中测试和调试应用程序,然后再将它们部署到更大的 Kubernetes 集群中 。
- 离线开发: Minikube 可以在没有互联网连接的情况下工作,适用于需要在隔离环境中进行开发或实验的场景 。
- 支持的容器运行时: Minikube 支持不同的容器运行时,如 Docker 和 contAInerd , 使您可以选择自己喜欢的运行时来工作 。
- 集群管理: Minikube 管理本地 Kubernetes 集群的整个生命周期,包括启动、停止和删除集群 。
- 插件和扩展: Minikube 支持各种插件和扩展,为本地集群提供附加功能 , 如访问仪表板、存储配置和网络选项等 。
四、基于二进制文件【K8s部署方式大全:从基础到进阶,一文带你掌握所有技巧】从Github下载发行版的二进制包,手动部署安装每个组件,组成Kubernetes集群,步骤比较繁琐,但是能让你对各个组件有更清晰的认识;
这种方式需要手动下载和安装 k8s 组件,包括 kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy 等组件,并手动配置参数和启动命令 。这种方式的优点是可以灵活地定制 k8s 集群,适合高级用户和开发者 。缺点是比较繁琐和复杂,需要对 k8s 组件有深入的了解,而且不易于维护和升级 。
五、KubesprayKubespray(也称为Kargo)是一个开源项目,提供一组基于Ansible的Playbooks , 用于部署、管理和扩展Kubernetes集群 。Ansible是一种自动化工具,允许您以代码的方式定义和管理基础设施,而Kubespray则利用Ansible的功能来自动化设置和配置Kubernetes集群的过程 。Kubespray 由若干 Ansible Playbook、 清单(inventory)、 制备工具和通用 OS/Kubernetes 集群配置管理任务的领域知识组成的 。
Kubespray 提供:
- 高可用性集群
- 可组合属性(例如可选择网络插件)
- 支持大多数流行的 Linux 发行版
- Flatcar Container Linux
- Debian Bullseye、Buster、Jessie、Stretch
- Ubuntu 16.04、18.04、20.04、22.04
- centos/RHEL 7、8、9
- Fedora 35、36
- Fedora CoreOS
- openSUSE Leap 15.x/Tumbleweed
- Oracle Linux 7、8、9
- Alma Linux 8、9
- Rocky Linux 8、9
- Kylin Linux Advanced Server V10
- Amazon Linux 2
- 持续集成测试
Kops是用于在Amazon Web Services(AWS)上自动化大规模Kubernetes集群的工具 。这种方式可以自动化部署,在支持的云平台和自建的虚拟机上运行 。安装步骤如下:
