Centos一键离线部署k8s(提供安装包)

前言

KubeKey提供的命令行安装工具的基础上,进一步进行封装。简化k8s离线安装步骤,提升工作效率。

下面你可以根据我提供的安装包资源和命令,很快的完成K8s的安装,免受国内网络环境的干扰。

目前只支持单master节点,一个及以上node节点的部署。若需高可用,建议采用二进制安装。

此次安装的版本情况:

  • docker版本:20.10.8
  • k8s版本:v1.23.10
  • kubesphere版本:v3.3.2

环境准备

角色 IP地址 hostname 配置(最少)
主节点 10.0.0.80 master 2核4G 硬盘40G
普通节点1 10.0.0.81 node1 2核4G 硬盘40G
普通节点2 10.0.0.82 node2 2核4G 硬盘40G
  1. 设置好对应的主机名称hostnamectl set-hostname 主机名称
  2. 确保三台机器的网络可以互通(简单一点可以直接关闭防火墙)
  3. 最好确保机器上之前没有安装docker之类的

安装

  1. 下载安装包install-k8s.tgz,并上传服务器解压

    shell 复制代码
    tar -zxvf install-k8s.tgz && cd install-k8s
  2. 修改集群机器配置文件vi install-config.yaml

    yaml 复制代码
    spec:
      hosts:
      # name为hostname,address、internalAddress为内网IP,user、password为账号密码
      - {name: master, address: 10.0.0.80, internalAddress: 10.0.0.80, user: root, password: "9ol.(OL>"}
      - {name: node1, address: 10.0.0.81, internalAddress: 10.0.0.81, user: root, password: "9ol.(OL>"}
      - {name: node2, address: 10.0.0.82, internalAddress: 10.0.0.82, user: root, password: "9ol.(OL>"}
      roleGroups:
        etcd:
        # 主节点的hostname
        - master
        control-plane:
        # 主节点的hostname
        - master
        worker:
        # 多个普通节点的hostname
        - node1
        - node2
        registry:
          # 主节点的hostname
          - master
  3. 执行下面命令,正式开始安装

    shell 复制代码
    chmod +x ./install.sh && ./install.sh

    注意:安装开始两分钟左右后需要手动输入yes才会继续执行下去,以便完成安装的最后一步。继续等待安装7分钟左右(因机器性能不同,时间也会有所差别),会打印如下的日志,表示安装完成。

验证

根据刚才最后打印的日志,输入账号密码浏览器登录对应的网址

log 复制代码
Console: http://主机外网IP:30880              
Account: admin                                                      
Password: P@88w0rd

通过下面命令来查看哪些pod启动了

YAML 复制代码
kubectl get pod --all-namespaces

通过下面命令查看具体的pod是否拉取成功

YAML 复制代码
kubectl describe pod pod名称 -n 命名空间

可以通过下面命令查看,kubesphere的执行日志

YAML 复制代码
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

参考资料:B站UP教学kubesphere官方文档

相关推荐
JuiceFS20 小时前
GPFS、Alluxio、JuiceFS 怎么选?一文看懂架构与适用场景
人工智能·后端
武子康20 小时前
1.2GB 离线语音 Agent 真正值得复用的不是 908ms:四阶段职责 + 状态感知 Tool Schema + 可观测时间锚点
人工智能·后端·agent
掘金者阿豪20 小时前
那些年踩过的 MySQL 迁移坑,这次终于不用绕了
后端
用户77139702070620 小时前
深夜食堂:那个让我加班到凌晨的 ! 符号
后端
swipe20 小时前
03|Axios 请求进了后端之后:Controller、Request、Response 是怎么接住它的?
前端·后端·全栈
swipe20 小时前
02|从 `pnpm dev` 到 Spring Boot 启动:后端服务到底怎么跑起来?
前端·后端·全栈
网易云信20 小时前
网易智企Data Agent实践入选信通院《智能体创新实践案例汇编》
人工智能·后端·线下活动
swipe20 小时前
01|前端人第一次打开 Spring Boot 项目,应该先看哪里?
前端·后端·全栈
薛定谔的悦20 小时前
一次充电桩 Modbus TCP 采集模块的踩坑实录
后端
jvmind_dev21 小时前
1c1g 容器莫名 OOM Killed?排查 Metaspace 持续增长与脚本引擎的坑
java·后端