Centos7 离线安装K3s

1、安装前准备

github地址:
https://github.com/k3s-io/k3s/releases

Centos7 离线安装K3s

k3s二进制文件:
k3s
下载地址:github地址 / 百度网盘地址

镜像包:
k3s-airgap-images-amd64.tar.gz
下载地址:github地址 / 百度网盘地址

安装脚本:install.sh

下载地址:
k3s官网地址

(点击访问后,将页面内容复制到本地文本,改名install.sh即可) /
百度网盘地址
  或
  curl https:

系统:centos7

2、安装步骤

1)将镜像包放到指定目录
cp k3s-airgap-images-amd64.tar /var/lib/rancher/k3s/agent/images/
2)将K3S二进制文件放指定目录
cp k3s /usr/local/bin/
3)给二进制文件执行权限
chmod a+x /usr/local/bin/k3s
4)将安装脚本放到指定目录
cp install.sh /usr/local/bin
5)给安装脚本执行权限
chmod 755 install.sh
6)执行安装脚本(两种安装模式,k3s+docker或k3s+containerd,可自行选择,k3s默认容器引擎为containerd)
6.1. k3s+docker:
Server安装:INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC=”server –docker” ./install.sh
agent安装(master无需安装): INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC=”–docker” K3S_URL=https://10.68.7.73:6443 K3S_TOKEN=node-token ./install.sh
6.2. k3s+containerd:
Server安装: INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh –data-dir /opt/k3s
–data-dir /opt/k3s:指定安装路径,防止默认路径所在磁盘空间过小
6.3. 获取token(安装61或6.2中的server之后需要执行下面的命令获取token)
cat /var/lib/rancher/k3s/server/node-token

Centos7 离线安装K3s
agent安装:INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://10.68.7.73:6443 K3S_TOKEN= node-token ./install.sh –data-dir /opt/k3s
说明:
node-token是6.3获取的token
–data-dir /opt/k3s:指定安装路径,防止默认路径所在磁盘空间过小
token路径:/var/lib/rancher/k3s/server/node-token是默认安装路径,如果–data-dir指定了路径就是用新的路径

7)ETCD高可用集群安装(两主三从)

配置/etc/hosts10.97.51.165 blpbuqxzfqq
10.97.51.180 blpaqweetdz
10.97.51.184 blpoyprglfc
10.97.51.187 blpafhs4aix
10.97.51.190 blpngwnatak
10.97.51.192 blpw7vtjfhv
10.97.51.193 blpxej1zzwm
10.97.51.194 blps0f7lpko
10.97.51.196 blptxmvshkd
10.97.51.199 blpnzupgiea
主1(172.19.23.62)
    执行:INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC='server' K3S_DATASTORE_ENDPOINT='mysql://k3s:%)qc7rBb@tcp(172.19.23.67:4307)/k3s' ./install.sh
    说明:
        1. mysql://用户名:密码@tcp(IP:端口)/数据库名
        2. 需要安装service,不需要安装agent

postgresql:INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC=’server’ k3s_datastore_endpoint=’postgres://postgres:123456@10.97.51.174:5432/future_center_nacos’ sslmode=disable ./install.sh –data-dir /data/install/k3s/data

说明:

参考以下:(129条消息) 一文读懂如何部署具有外部数据库的高可用 K3s_Rancher by SUSE的博客-CSDN博客_k3s高可用部署

k3s_datastore_endpoint:Postgres 的格式是 postgres://username:password@hostname:port/database-name。

在这个示例中,我创建了一个 postgres 角色,密码是 123456,数据库名称也是 K3s。

hostname:使用数据库ip

如果报错:SSL is not enabled on the server,需要添加 sslmode=disable,参考以下

(129条消息) pq: SSL is not enabled on the server_gerrylon007的博客-CSDN博客_pgsql ssl is not

查看启动日志:journalctl -f -u k3s.service

获取token:方式同上6.3,供其他主或从使用
主2(171.19.23.63)
    执行:K3S_TOKEN=主1中的token INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC='server' K3S_DATASTORE_ENDPOINT='mysql://k3s:%)qc7rBb@tcp(172.19.23.67:4307)/k3s' ./install.sh
    说明:
        1. mysql://用户名:密码@tcp(IP:端口)/数据库名
        2. 需要安装service,不需要安装agent
从1(171.19.23.64):
    执行:INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://172.19.23.62:6443 K3S_TOKEN=主1中的token ./install.sh
    说明:
        1. 只需要安装agent
从2/3同从1

8)配置docker登陆用户和密码

两个台主机器上执行
kubectl create secret docker-registry regcred \
    --docker-server=172.19.23.62:8092 \
    --docker-username=zxsrepo \
    --docker-password="Zxsrepo@&&11" \
    --docker-email=

9)配置registries.yaml文件

#server 和 agent 都要安装
#vi /etc/rancher/k3s/registries.yaml
mirrors:
  172.19.23.62:8092:
    endpoint:
      - "http://172.19.23.62:8092"

10)重k3s

systemctl start k3s-server
systemctl status k3s-server
systemctl stop k3s-server
systemctl restart k3s-server

systemctl start k3s-agent
systemctl status k3s-agent
systemctl restart k3s-agent
systemctl stop k3s-agent

3、卸载

Server  /usr/local/bin/k3s-uninstall.sh注意:卸载后需要重新创建/var/lib/rancher/k3s/agent/images/目录,并将k3s-airgap-images-amd64.tar.gz和K3S重新copy到对应的目录下
agent  /usr/local/bin/k3s-agent-uninstall.sh

4、更换k3s运行时存储路径

前提:停掉所有k3s服务/停掉k3s服务
创建要更换从存储路径:mkdir /app/k3s_data copy默认路径下的数据到新路径:cp-r /run/k3s /app/k3s_data 删除默认路径:rm-rf /run/k3s 如果删不掉:
使用这个删除:/usr/local/bin/k3s-killall.sh
或者
查看是否有默认k3s挂载的目录:df-h | grep k3s | awk ‘{print $6}’删除k3s默认生成的挂载目录:df-h | grep k3s | awk ‘{print $6}’ |xargs umount 再次执行删除:rm-rf /run/k3s 创建软连接:ln-s 源(/app/k3s_data/k3s) 目标(/run/k3s)

删除软链接:unlink zcw

5、更换k3s安装路径

前提:停掉所有k3s服务/停掉k3s服务

停掉K3S服务:/usr/local/bin/k3s-killall.sh

创建k3s目录:mkdir -p /app/rancher

copy默认目录下的数据到新的目录:cp -r /var/lib/rancher/k3s /app/rancher

编辑配置文件:vi /etc/systemd/system/k3s.service

指定路径:

Centos7 离线安装K3s

重新加载:systemctl daemon-reload

重启服务:systemctl start k3s

出现以下问题的解决方案

问题:

Centos7 离线安装K3s

解决方案:

root 用户

echo $PATH

Centos7 离线安装K3s

缺少:/user/local/bin配置

添加

在 ~ 目录下执行 ls -a

Centos7 离线安装K3s

图形化界面启动,编辑.bash_profile文件:vim .bash_profile,命令行启动,编辑.bashrc

在PATH=$PATH:$HOME/bin后面添加 :/usr/local/bin

Centos7 离线安装K3s

保存且退出

再次查看:echo $PATH

Centos7 离线安装K3s

Original: https://www.cnblogs.com/JimmyThomas/p/16577902.html
Author: JimmyThomas
Title: Centos7 离线安装K3s

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/611230/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Linx__Ubuntu_APT

    apt是Advanced Packaging Tool的简称。 在Ubuntu下,我们可以使用apt命令进行软件包的 更新, 安装, 删除, 清理等 类似于Windows的软件管理…

    数据库 2023年6月14日
    0121
  • Python–异常

    1 # -*- coding:utf-8 -*- 2 name = ‘tj’ 3 try: 4 int(name) 5 except (IndexError,KeyError) a…

    数据库 2023年6月9日
    071
  • NO.6 HTML+CSS 笔记

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    数据库 2023年6月14日
    078
  • Variable used in lambda expression should be final or effectively final

    java的lambda表达式里不能出现变量,必须是final修饰的,但是可以让变量在定义时候计算【新函数】出结果,这样就不算变量了。可以使用lambda表达式,不再报错。例如 bo…

    数据库 2023年6月9日
    093
  • springcloud Alibaba 阿里组件 nacos注册中心 gateway网关 flowable流程引擎 vue.js前后分离

    springcloud + springcloud Alibaba + flowable 流程引擎 1.代码生成器: 正反双向freemaker模版技术 ,0个代码不用写,生成完整…

    数据库 2023年6月6日
    090
  • 【数据结构】跳表

    一、基本概念 1.1 定义 跳表(SkipList):增加了向前指针的链表叫做指针。跳表全称叫做跳跃表,简称跳表。跳表是一个随机化的数据结构,实质是一种可以进行二分查找的有序链表。…

    数据库 2023年6月11日
    091
  • 5、Idea同时选择多处光标进行编辑

    1、按住Alt+Shift,然后用鼠标左键点击文本,可以让光标在多个位置出现2、每个光标都会同时输入你正在输入的文本3、ESC退出 搜索 复制 Original: https://…

    数据库 2023年6月6日
    092
  • 项目的部署和环境搭建

    项目的部署和环境搭建 cd /opt (一般项目部署的文件代码都放在/opt目录下) 3.进入项目跟目录下的docker目录: cd crm _pro/docker 4.执行doc…

    数据库 2023年6月16日
    0101
  • neo4j数据库数据转移,从阿里云转移到windows服务器

    neo4j数据库数据从阿里云转移到windows 1.从阿里云迁移neo4j时需停掉neo4j数据库,在neo4j的bin目录下输入 ./neo4j stop 2.将数据备份到一个…

    数据库 2023年6月6日
    068
  • 0812JDBC随笔

    1.Properties的load方法 Properties的load方法其实就是传进去一个输入流,字节流或者字符流,字节流利用InputStreamReader转化为字符流,然后…

    数据库 2023年6月14日
    079
  • MySQL数据备份 mysqldump 详解

    MySQL数据备份流程 打开cmd窗口 通过命令进行数据备份与恢复; 需要在Windows的命令行窗口中进行; l 开始菜单,在运行中输入cmd回车; l 或者win+R,然后输入…

    数据库 2023年6月14日
    086
  • 【StoneDB】产品FAQ

    StoneDB与MySQL的兼容性如何?StoneDB高度兼容MySQL 5.6、5.7协议和MySQL生态等重要特性,支持MySQL常用的功能及语法。由于StoneDB本身的一些…

    数据库 2023年5月24日
    081
  • java 桥接方法

    1.桥接方法简介 桥接方法是jdk1.5引入泛型后,为使java泛型方法生成的字节码与jdk1.5版本之前的字节码兼容由编译器自动生成的。 可用 method.isBridge()…

    数据库 2023年6月16日
    097
  • SQL的函数

    MySQL常用的日期函数函数 功能 curdate() 返回当前日期 curtime() 返回当前时间 now() 返回当前日期和时间 year() 获取指定date的年份 mon…

    数据库 2023年6月16日
    0114
  • 从生命周期的角度看线程和进程之间的异同

    概述 进程与线程想必都不陌生,两者有诸多相同点,甚至可以这样说,线程就是”轻量级的进程”。而且两者基本的五个状态也几乎一样,但进程和线程在状态切换时的触发条…

    数据库 2023年6月11日
    080
  • proxySQL with MGR

    环境信息 hostname IP port role comm ms81 192.168.188.81 3399 master ms82 192.168.188.82 3399 s…

    数据库 2023年6月16日
    078
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球