k3离线安装

  

测试环境kubernetes的有点臃肿,k3是不错的选择(主要是由于没有公网,生产环境建议是用kubernetes)
k3默认使用的网络是fannel,如果需要其他网络公司的请自行搜索相关文档

  

部署环境:
系统:ubuntu 16.04
组件:docker-ce18.06(请提前安装,如果不是码头工人的,k3会提供containerd的方式,只是操作没码头工人方便,这里以码头工人为示例)

  

一、下载离线包(放在同一目录)
1。所有的集装箱图片
https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s-airgap-images-amd64.tar

  

2。主要的二进制文件k3 https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s

  

3。下载官方提供的install.sh https://github.com/rancher/k3s/blob/master/install.sh

  

二、部署
1。部署大师
主要添加跳过镜像下载的参数:
出口INSTALL_K3S_SKIP_DOWNLOAD=true

  

服务端脚本:

  
 <代码> #/bin/bash
  设置- e
  sudo cp k3/usr/local/bin/#使用码头工人
  sudo码头工人加载& lt;k3s-airgap-images-amd64.tar.gz
  如果[$(猫安装。上海| grep“出口INSTALL_K3S_SKIP_DOWNLOAD=true”| wc - l)情商0];
  sudo sed - 3 i install.sh“出口INSTALL_K3S_SKIP_DOWNLOAD=true”
  fi
  sudo bash install.sh
  #使用码头工人
  如果[$(猫/etc/systemd/system/k3s.服务| grep服务器| grep码头工人| wc - l)情商0];
  sudo sed -我的服务器?服务器,码头工人?g’/etc/systemd/system/k3s.service
  fi
  sudo systemctl daemon-reload
  sudo systemctl重启k3
  bash创建客户端。上海码头工人 
  

2。生成代理脚本,添加标记到服务的文件中

  

模板脚本client-tmp-docker.sh:

  
 <代码> # !/bin/bash
  设置- e
  cp - f k3/usr/local/bin/K3S_TOKEN=" TOKENK3S-SERVER "
  猫在k3s-agent.service<& lt; EOF
  (单位)
  描述=轻量级Kubernetes
  文档=https://k3s.io
  希望=network-online.target
  
  (安装)
  WantedBy=multi-user.target
  
  (服务)
  类型=通知
  EnvironmentFile=/etc/systemd/系统/k3s.service.env
  KillMode=过程
  委托=yes
  LimitNOFILE=无穷大
  LimitNPROC=无穷大
  LimitCORE=无穷大
  TasksMax=无穷大
  TimeoutStartSec=0
  重启=总
  RestartSec=5 s
  ExecStartPre=-/sbin/modprobe br_netfilter
  ExecStartPre=-/sbin/modprobe覆盖
  ExecStart=/usr/地方/bin/k3 \
  代理-服务器https://SEVERKESIP: 6443——令牌" $ {K3S_TOKEN} "——码头工人\
  
  EOF
  sudo bash安装。上海代理
  如果[!- f/etc/systemd/system/k3s.service。env],然后
  触摸/etc/systemd/system/k3s.service.env
  fi
  sudo码头工人加载& lt;k3s-airgap-images-amd64.tar.gz
  sudo cp - f k3s-agent。服务/etc/systemd/system/sudo systemctl daemon-reload
  sudo systemctl重启k3s-agent.service
  sudo systemctl启用k3s-agent.service  
  

生成client.sh的脚本create-client.sh

  
 <代码> # !/bin/bash
  设置- e
  K3S_TOKEN=$ (sudo猫/var/lib/rancher/k3s/server/node-token)
  如果(" $ 1 " !="码头工人");
  猫client-tmp-containerd祝辞client-k3s.sh
  sed -我吗? TOKENK3S-SERVER K3S_TOKEN美元?g”client-k3s.sh
  sed - s SEVERKESIP ?美元(主机名- i) ?g”client-k3s.sh
  其他的
  猫client-tmp-docker祝辞client-k3s.sh
  sed -我吗? TOKENK3S-SERVER K3S_TOKEN美元?g”client-k3s.sh
  sed - s SEVERKESIP ?美元(主机名- i) ?g”client-k3s.sh
  fi  
  

3。部署代理人
复制client.sh, k3, k3s-airgap-images-amd64.tar, install.sh到需要部署代理人的主机上,一定要放在同一目录下

  

执行cd/路径,,bash client.sh

  

完成后验证:

  

 k3离线安装

  

 k3离线安装

  

如果需要更多个性话的,请参考https://rancher.com/docs/k3s/latest/en/

k3离线安装