全栈工程师开发手册 (作者:栾鹏)
架构系列文章


官方地址:https://rancher.com/docs/k3s/latest/en/

环境配置

官方给出的k3s配置要求如下:

  • 系统内核版本:Linux 3.10+ (CentOS 7, Debian 8/9, Ubuntu 14.04+)
  • K3S Server端最低内存要求:512 MB
  • K3S Agent端内存最低要求:75MB
  • 磁盘空间最低要求:200 MB
  • 支持的硬件架构:x86_64, ARMv7, ARM64

部署

浏览器打开网址

https://get.k3s.io

浏览器会自动跳转到(可能需要vpn才行)

https://raw.githubusercontent.com/rancher/k3s/master/install.sh

将install.sh另存到本地,在本地执行

sh install.sh

安装程序将kubeconfig文件写到/etc/rancher/k3s/k3s.yaml中
会自动下载安装k3s和额外的实用程序,如kubectl,crictl,ctr,k3s-killall.sh,和k3s-uninstall.sh。

在自动下载安装的过程中存在网络问题. 下载k3s的二进制可执行文件

下载k3s二进制可执行文件(地址可以根据sh install.sh的命令行打印显示获取)
https://github.com/rancher/k3s/releases/download/v0.10.2/k3s
之后上传此Binary到服务器端的 /usr/local/bin/k3s,并赋予可执行属性:chmod +x /usr/local/bin/k3s

自动部署还会拉取k8s.gcr.io仓库下的镜像,由于网络问题在国内服务器上可能拉取不到,所以我们拉取国内镜像,然后改镜像名

docker pull registry.cn-beijing.aliyuncs.com/ilemonrain/pause-amd64:3.1
docker tag registry.cn-beijing.aliyuncs.com/ilemonrain/pause-amd64:3.1 k8s.gcr.io/pause:3.1

安装完成后,我们需要调整下K3S的服务配置文件,以将K3S的默认容器引擎从Containerd切换到Docker。这样才能在docker中控制你的镜像

修改K3S服务的配置文件:

vim /etc/systemd/system/multi-user.target.wants/k3s.service

文件内容如下:

[Unit]
Description=Lightweight Kubernetes
Documentation=https://k3s.io
After=network-online.target[Service]
Type=notify
EnvironmentFile=/etc/systemd/system/k3s.service.env
ExecStartPre=-/sbin/modprobe br_netfilter
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/local/bin/k3s server
KillMode=process
Delegate=yes
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
TimeoutStartSec=0
Restart=always[Install]
WantedBy=multi-user.targe

在这里我们需要修改ExecStart的值,将其修改为:

/usr/local/bin/k3s server --docker --no-deploy traefik

之后保存退出,执行命令重新加载新的服务配置文件:

systemctl daemon-reload

完成后重启K3S服务:

service k3s restart

稍等数十秒,之后通过命令确认K3S集群是否就绪:

sudo k3s kubectl get node

如果得到类似如下的结果:

NAME       STATUS   ROLES    AGE   VERSION
luanpeng   Ready    master   14h   v1.16.2-k3s.1

则说明K3S集群启动成功。

工作节点加入集群

要在工作程序节点上安装并将它们添加到集群中,我们应该将环境变量K3S_URL和K3S_TOKEN(或者K3S_CLUSTER_SECRET)一起传递。K3S_TOKEN在服务器的/var/lib/rancher/k3s/server/node-token

这是显示如何加入节点的示例:

curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=XXX sh -

注意:每台计算机必须具有唯一的主机名。如果您的计算机没有唯一的主

使用kubectl命令

之前在k8s中的kubectl命令,需要在前面添加sudo k3s,例如查询节点

sudo k3s kubectl get node

如果我们把/etc/rancher/k3s/k3s.yaml中的kubeconfig内容添加到~/.kube/config文件中,那我们就可以直接通过kubectl控制k3s集群了

web监控

可以绑定rancher参考:https://yq.aliyun.com/articles/704089
或者部署dashboard, 然后用火狐浏览器(谷歌浏览器可能不行)打开dashboard service地址.

https://10.43.24.135:8443

pvc的使用

创建pv和pvc必须要加上storageClassName 字段

k3s 部署, 使用注意事项相关推荐

  1. 物联网轻量级开发方案:在K3s部署Shifu,实现云边端闭环

    Shifu 是一个 Kubernetes 原生的IoT设备虚拟化框架.Shifu 希望帮助IoT应用开发者以即插即用的方式实现IoT设备的虚拟化.监视.管控和自动化.本文通过在本地集群中部署Shifu ...

  2. 使用k3s部署轻量Kubernetes集群快速教程

    k3s是轻量级的Kubernetes.安装简单,占用资源少,只需要512M内存就可以运行起来,所有的二进制程序都不到 100MB. 自 2019 年 3 月发布以来,备受全球开发者们关注.至今,Git ...

  3. k3s 部署nacos-server:v2.1.1-slim

    1. 创建 pvc apiVersion: v1 kind: PersistentVolumeClaim metadata:name: nacos-pvcnamespace: tanghao spec ...

  4. 国产化--离线安装金蝶中间件--部署应用注意事项

    ** 国产化–离线安装金蝶中间件–部署应用注意事项* * 金蝶中间在这里插入图片描述件安装步骤说明 一般来讲我们习惯将安装包在/opt下解压安装如下图1所示 GVpdGk,shadow_10,text ...

  5. K3s部署rancher

    前言:k3s高可用还需要做个前段代理.后续更新上. 环境 操作系统内核 [root@rancher01 ~]# cat /etc/redhat-release CentOS Linux release ...

  6. wordpress phpmyadmin_西部数码使用指南:虚拟主机WordPress部署SSL注意事项

    版权归西部数码所有,原文链接:https://www.west.cn/faq/list.asp?unid=2068 注意事项: 1.如果您的主题/插件使用绝对地址调用了http请求可能会导致网站打开会 ...

  7. 基于k3s部署KubeSphere

    目录 相关文档 准备工作 安装K3S 安装KubeSphere 相关文档 k3s官网:https://docs.k3s.io/zh/quick-start k3s所有版本查看:https://gith ...

  8. GVA gin-vue-admin部署后端注意事项

    GVA后端server部署时,需要准备这三个文件(夹) 这样,执行main.exe启动时就不会报500错误

  9. 若依 / RuoYi-Vue 前后端分离,前端部署及注意事项

    后端运行成功通过(http://localhost:8080)访问,但是不会出现静态页面,会返回: 这里的运行成功,包括: 1.后台无报错,数据库连接密码更改(默认password,根据自己数据库更改 ...

最新文章

  1. C错误异常处理,异常处理
  2. 订购后如何限制Oracle查询返回的行数?
  3. python介绍和用途-Python --- Python的简介
  4. POJ 2336 Ferry Loading II 动态规划
  5. 组合,多态,封装, @property
  6. 做折线图_python的visvis库做折线图(line.py)代码详解
  7. 【bzoj5110】[CodePlus2017]Yazid 的新生舞会 Treap
  8. 华为:崛起的 5G 巨龙
  9. 【CSP201312-1 】出现次数最多的数,排序后扫描并记录
  10. Shader预处理宏、内置状态变量、多版本编译等
  11. 单片机定时器程序c语言,单片机定时器程序
  12. 如何快速调出软键盘_怎样打开电脑软键盘,打开软键盘快捷键
  13. linux用户的目录结构,Linux下用户管理、目录结构
  14. Phalcon PHP 中文,Phalcon 入门
  15. flutter整合极光推送完美版
  16. Linux命令速查---kalrry
  17. Cent OS 8安装Docker
  18. 小米手机通过adb安装应用异常处理
  19. 双显示器(集成显卡不能显示,但独立显卡可以)
  20. python数据类型(字典)

热门文章

  1. python必备基础代码-【Python基础系列】常见的数据预处理方法(附代码)
  2. 简单python脚本实例-超实用的 30 段 Python 案例
  3. 基于非特定人语音识别芯片的技术方案
  4. 登量子位“AI领航企业榜单”,联想用实力说话
  5. 6.Java反射到底慢在哪
  6. css文字竖直显示_CSS属性设置 -- 盒子模型
  7. mysql nb3 备份_Navicat mysql 数据库备份和使用,备份以后是nb3文件-Go语言中文社区...
  8. 【MyBatis框架】mybatis入门
  9. 【堆笔记】java堆(PriorityQueue)的相关操作
  10. ffmpeg中的sws_scale算法性能测试