×
5 Views

k3s 是一个轻量级的 Kubernetes 发行版,专为在资源有限的环境中运行而设计。以下是 K3s 单机版本的安装步骤:

1. 安装要求

在开始安装 k3s 之前,请确保您的系统满足以下要求:
操作系统:支持 Linux、Windows 和 macOS
硬件要求:至少 1 GB RAM 和 1 CPU,(本人使用的是4CPU+8G RAM)
容器运行时:docker-ce 25.0.4
网络要求:确保您的机器可以访问外网,以便下载必要的容器镜像

2. 环境装备

2. 1 关闭系统swap

swapoff -a
vi /etc/fstab

找到类似下面的内容,将改行注释掉

/dev/mapper/centos-swap swap swap defaults 0 0

2.2 关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

3. 安装docker

yum update -y
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl enable docker
systemctl start docker
systemctl status docker # 查看docker是否安装成功

4. 安装k3s,不包括traefik组件

k3s提供了不同的安装方式,这里为了快速的跑起来,使用了最简单的在线安装方式,并且禁止默认安装traefik,后面会用另外的方式安装,方便管理。

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - --docker --disable=traefiksystemctl status k3s # 查看k3s是否安装成功。

5. 安装helm

helm是k8s的一个包管理工具,可以通过helm简单快速的部署k8s程序。

helm github仓库下载最新版本的helm包,下载到服务器。

wget https://get.helm.sh/helm-v3.14.2-linux-386.tar.gz
tar -zxvf helm-v3.14.2-linux-arm64.tar.gz
chmod 755 linux-amd64/helm
mv linux-amd64/helm /usr/local/bin
helm version # 检查helm是否正确打印出了版本号

6. 安装traefik

先设置KUBECONFIG环境变量

echo 'export KUBECONFIG=/etc/rancher/k3s/k3s.yaml' >> ~/.bashrc 
source ~/.bashrc

配置文件values.yaml

# values.yaml
globalArguments:
  - "--global.sendanonymoususage=false"
  - "--global.checknewversion=false"
additionalArguments:
  - "--serversTransport.insecureSkipVerify=true"
  - "--log.level=INFO"
deployment:
  enabled: true
  replicas: 1
  annotations: {}
  podAnnotations: {}
  additionalContainers: []
  initContainers: []
ports:
  web:
    redirectTo:
      port: websecure
      priority: 10
  websecure:
    tls:
      enabled: true
ingressRoute:
  dashboard:
    enabled: false
providers:
  kubernetesCRD:
    enabled: true
    ingressClass: traefik-external
    allowExternalNameServices: true
  kubernetesIngress:
    enabled: true
    allowExternalNameServices: true
    publishedService:
      enabled: false
rbac:
  enabled: true
service:
  enabled: true
  type: LoadBalancer
  annotations: {}
  labels: {}
  spec:
    loadBalancerIP: 192.168.0.20 # 这是server的ip或者是MetalLB IP池中的任意一个IP
  loadBalancerSourceRanges: []
  externalIPs: []

执行以下代码安装traefik

helm repo add traefik https://helm.traefik.io/traefik
helm repo update
kubectl create namespace traefik
helm install --namespace=traefik traefik traefik/traefik --values=values.yaml  # values.yaml即上面的配置内容

7. 安装命令补全

k8s的命令非常多,所以使用k8s的命令补全功能非常重要

yum install bash-completion
echo 'source <(kubectl completion bash)' >> ~/.bashrc
source ~/.bashrc

8. 清理k3s环境

只需要执行k3s卸载命令会把k3s从服务器中删除

/usr/local/bin/k3s-uninstall.sh

这就是完整的安装过程,非常简单快捷。我将会在下一章继续介绍如何在k8s上安装证书服务cert-manager

Happy k8s/k3s。

发表回复

作者

kebin8@qq.com

相关文章

k8s cert-manager

1 Views 接着上一篇k3s安装实战介绍如何安装k3s,现在我准备给我的k3s集群安装cert-manag […]

读出全部