ubuntu 22.04安装k3s

一、概述

K3s 是一个轻量级的 Kubernetes 发行版,专为在资源受限的环境中运行 Kubernetes 而设计。它是 Rancher Labs 开发的,旨在简化 Kubernetes 的部署和管理,同时保持与上游 Kubernetes 的兼容性。

K3s 的特点

  1. 轻量级
    • K3s 是一个轻量级的 Kubernetes 发行版,设计用于在资源受限的环境中运行,如边缘计算、物联网设备、开发环境等。
    • 它通过移除一些不必要的组件和依赖来减小体积,同时保持了 Kubernetes 的核心功能。
  2. 易于安装
    • K3s 的安装非常简单,只需要一条命令即可完成安装。它支持多种操作系统,包括 Linux、macOS 和 Windows。
    • 安装脚本会自动配置和启动 K3s 服务,使得部署过程变得非常快捷。
  3. 高性能
    • K3s 通过使用 Flannel 作为默认的网络插件,提供了高效的网络性能。
    • 它还支持多种存储插件,如本地存储和云存储,以满足不同的存储需求。
  4. 高可用性
    • K3s 支持高可用性(HA)配置,可以通过多个服务器节点来提高集群的可靠性和容错能力。
    • 它支持在多个节点上运行控制平面组件,确保在单点故障时集群仍然可以正常运行。
  5. 与 Kubernetes 兼容
    • K3s 与上游 Kubernetes 保持高度兼容,支持 Kubernetes 的所有核心功能和 API。
    • 这意味着在 K3s 上运行的应用程序可以无缝迁移到其他 Kubernetes 集群上。
  6. 社区支持
    • K3s 是一个开源项目,拥有活跃的社区支持和丰富的文档。
    • 社区提供了大量的插件和工具,帮助用户更好地管理和扩展 K3s 集群。

K3s 的应用场景

  1. 边缘计算
    • K3s 适合在边缘计算环境中运行,如物联网设备、远程数据中心等。这些环境通常资源有限,K3s 的轻量级特性使其成为理想选择。
  2. 开发和测试环境
    • K3s 是开发和测试 Kubernetes 应用程序的理想选择,因为它安装简单,启动快速,适合在开发人员的本地机器上运行。
  3. 小型生产环境
    • 对于小型生产环境,K3s 提供了足够的功能和性能,同时减少了资源消耗和管理复杂性。
  4. 容器化应用
    • K3s 支持运行容器化应用程序,提供了一个完整的 Kubernetes 环境,使得应用程序的部署
### 安装和配置单节点 K3s 集群 #### 准备工作 在开始之前,确保目标机器满足以下条件: - 已安装 Docker 或其他容器运行时。 - 系统已更新至最新状态。 可以通过以下命令完成系统的初步准备: ```bash sudo apt update && sudo apt upgrade -y ``` #### 安装 K3s K3s 提供了一键安装脚本,适用于快速部署。以下是具体操作: 执行以下命令来安装 K3s: ```bash curl -sfL https://get.k3s.io | sh - ``` 此命令会自动下载并安装最新的稳定版 K3s 到系统中[^1]。 如果需要自定义配置项(如绑定地址、服务 CIDR 等),可以在安装过程中传递参数。例如: ```bash curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--bind-address=0.0.0.0 --cluster-cidr=10.42.0.0/16 --service-cidr=10.43.0.0/16" sh - ``` 上述命令中的 `--bind-address` 和网络范围设置可以根据实际需求调整[^3]。 #### 验证安装 安装完成后,验证 K3s 是否正常启动: ```bash systemctl status k3s ``` 该命令应显示 K3s 正常运行的状态。 同时,可以查看当前集群的节点信息: ```bash kubectl get nodes ``` 默认情况下,K3s 会在 `/etc/rancher/k3s/k3s.yaml` 中生成 kubeconfig 文件,并将其路径导出到环境变量 `$KUBECONFIG` 中[^4]。因此可以直接使用 `kubectl` 命令管理集群。 #### 配置 Kubeconfig 为了方便后续管理和调试,建议手动设置 kubeconfig 路径: ```bash export KUBECONFIG=/etc/rancher/k3s/k3s.yaml ``` 或者永久化配置,编辑用户的 shell profile 文件(如 `.bashrc` 或 `.zshrc`): ```bash echo 'export KUBECONFIG=/etc/rancher/k3s/k3s.yaml' >> ~/.bashrc source ~/.bashrc ``` #### 测试集群功能 创建一个简单的 Pod 来测试集群是否正常工作: ```yaml apiVersion: v1 kind: Pod metadata: name: test-pod spec: containers: - name: nginx-container image: nginx:latest ``` 保存以上内容为 `test-pod.yaml` 并应用: ```bash kubectl apply -f test-pod.yaml ``` 检查 Pod 状态: ```bash kubectl get pods ``` 当看到 Pod 处于 `Running` 状态时,说明集群已经成功部署并能够正常调度任务。 --- ### 注意事项 - 如果遇到证书相关问题,可以参考 Rancher 文档解决 HTTPS 配置问题[^5]。 - 默认情况下,K3s 使用内置的负载均衡器监听端口 `6443`,用于 API Server 访问。 - 对于生产环境,推荐启用高可用模式以提高容灾能力。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值