Kubernetes 初学者保姆级安装指南
2023-10-10 00:51:54
Kubernetes 第一弹:保姆级安装教程
引言
Kubernetes(也被称为 k8s)是当今最流行的容器编排平台之一。它使你可以轻松地管理、部署和扩展你的应用程序。然而,对于新手来说,安装 Kubernetes 可能是一项艰巨的任务。在这篇指南中,我们将详细介绍如何在虚拟机上安装 Kubernetes,并分享一些有用的提示和最佳实践。
准备环境
在开始安装之前,你需要准备三台虚拟机,这些虚拟机将充当 Kubernetes 集群中的节点。这些节点需要具有以下最低配置:
- 2 核 CPU
- 4GB 内存
- 50GB 磁盘空间
还建议你的虚拟机运行最新版本的 Linux 发行版,例如 Ubuntu 或 CentOS。
安装 Kubernetes
我们将使用 kubeadm 工具来安装 Kubernetes。kubeadm 是一种命令行工具,可简化 Kubernetes 集群的安装和管理。
1. 安装 kubeadm
在每台虚拟机上运行以下命令来安装 kubeadm:
sudo apt-get update
sudo apt-get install -y kubeadm
2. 初始化 Kubernetes 集群
在其中一台虚拟机上(称为主节点),运行以下命令来初始化 Kubernetes 集群:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
此命令将执行以下操作:
- 创建 Kubernetes 控制平面组件(etcd、API 服务器和调度程序)
- 初始化 kubeconfig 文件,该文件包含访问 Kubernetes API 的凭证
- 设置 pod 网络
3. 加入其他节点
要将其他节点加入集群,请在每个节点上运行以下命令:
sudo kubeadm join <master-ip>:6443 --token <token> --discovery-token-ca-cert-hash <hash>
其中 <master-ip>
是主节点的 IP 地址,<token>
是初始化集群时生成的令牌,<hash>
是令牌哈希值。
4. 验证安装
一旦所有节点都加入集群,请运行以下命令来验证安装是否成功:
kubectl get nodes
这应该列出集群中的所有节点。
部署应用程序
现在 Kubernetes 集群已经安装好,你可以开始部署应用程序了。让我们使用 Nginx 作为示例:
1. 创建 Deployment
创建以下 Deployment yaml 文件:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
spec:
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
然后,使用 kubectl 创建 Deployment:
kubectl create -f nginx.yaml
2. 创建 Service
创建以下 Service yaml 文件:
apiVersion: v1
kind: Service
metadata:
name: nginx
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
然后,使用 kubectl 创建 Service:
kubectl create -f nginx-service.yaml
3. 查看应用程序
现在 nginx 应用程序已部署,你可以使用以下命令查看:
kubectl get pods
kubectl get services
提示和最佳实践
- 使用 kubectl cheat sheet 来快速查找命令。
- 监控你的集群以了解其运行状况和性能。
- 使用 Ingress 控制器来管理你的应用程序的外部流量。
- 定期更新你的 Kubernetes 集群。
- 使用 Helm 来管理你的 Kubernetes 应用程序。
结论
恭喜!你已经成功地在虚拟机上安装了 Kubernetes。通过按照本指南中的步骤操作,你已经掌握了 Kubernetes 集群的基础知识。现在,你可以继续探索 Kubernetes 的高级功能,并部署更复杂的应用程序。通过持续的学习和实践,你很快就会成为 Kubernetes 专家。