【k8s-1.34.2安装部署】九.k8s多集群管理平台xkube-v3.9安装部署

xkub安装部署

== 文章导航===

【k8s-1.34.2安装部署】一.系统初始化及k8s集群规划
【k8s-1.34.2安装部署】二.kubernets软件、证书、配置、脚本等文件准备
【k8s-1.34.2安装部署】三.etcd-v3.6.6 TLS版集群安装
【k8s-1.34.2安装部署】四.kubernets master组件kube-apiserver,kube-controller-manager,kube-scheduler安装
【k8s-1.34.2安装部署】五.worker端containerd2.2.1、kubelet-1.34.2安装
【k8s-1.34.2安装部署】六.企业级部署cilium-1.18.4网络插件
【k8s-1.34.2安装部署】七.coredns-v1.13.1安装
【k8s-1.34.2安装部署】八.metric-server-0.8.0安装
【k8s-1.34.2安装部署】九.k8s管理平台xkube安装部署
【k8s-1.34.2安装部署】十.gateway Api v1.4.0安装
【k8s-1.34.2安装部署】十一.metallb-v0.15.2安装

1.第一种部署方式:docker-compose部署

  • 先克隆代码:git clone https://gitee.com/eeenet/xkube.gitgit clone https://github.com/eeenet007/xkube.git,将docker-compose拷贝到服务器后,进入docker-compose目录,执行启动命令:docker-compose up -d

  • 然后浏览器打开:http://ip:8080/

    输入用户名:admin,密码:admin 进行登录,登录后添加k8s配置即可进行管理。停止命令:docker-compose down

  • 行环境版本要求:

    docker版本:version 27.3.1

    docker-compose版本: version v2.32.4 及以上

注意:xkube的wiki有图片上传功能,配置默认挂载到当前目录,如有需要变更,先修改docker-compose.yml以后再进行执行启动

2.第二种部署方式:k8s环境部署

  • 上传k8s_deploy.yaml到服务器,修改k8s_deploy.yaml中的mysql和redis的配置,以及ingress的域名,修改以后执行命令:kubectl apply -f k8s_deploy.yaml
  • 部署完成以后将域名解析到k8s的ingress入口IP后,在浏览器打开刚解析的域名。用户名和密码均是admin。
  • 登录以后会提示:读取集群列表失败、读取集群信息失败。这是因为还没有添加k8s集群,添加后就正常了。

1.mysql配置更改:

bash 复制代码
	#数据库配置时需要导入docker-compose/xkube.sql
    db_host = mysql_server #更改成mysql的IP
    db_port = 3306			#更改成mysql的端口
    db_user = db_xkube		#更改成mysql的用户名
    db_pass = xkube_DB_123456		#更改成mysql的密码
    db_name = db_xkube		#更改成mysql的数据库名
    db_type = mysql

2.redis配置更改

bash 复制代码
    redisDb = "redis_server:6379"	#更改成redis的IP和端口
    redisPasswd = "Redis_123456"	#更改成redis的密码

    SessionProviderConfig = "redis_server:6379,100,Redis_123456" #更改成redis的IP和端口、密码

3.创建pvc用于wiki上传图片,如不需要可以删除pvc及卷挂载涉及upload的配置

复制代码
        volumeMounts:
          - mountPath: /app/conf
            name: config-volume
            readOnly: true
          - mountPath: /app/static/upload
            name: xkube-static-upload 
-------

      volumes:
        - name: xkube-static-upload
          persistentVolumeClaim:
            claimName: xkube-static-upload      
        - configMap:
            defaultMode: 420
            name: xkube-admin-config 
          name: config-volume

4.ingres中的域名配置更改

yaml 复制代码
spec:
  ingressClassName: nginx
  rules:
  - host: xkube.xxxx.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: xkube-admin
            port: 
              number: 80

3.第三种部署方式:服务器上安装部署

修改conf/app.conf中的mysql、redis配置后再进行启动

第一步:修改mysql配置

复制代码
安装完mysql以后,将docker-compose/xkube.sql导入到数据库中,然后修改conf/app.conf中的如下配置:
db_host = mysql_server   #mysql的IP
db_port = 3306	#MySQL的端口
db_user = db_xkube	#mysql的用户名
db_pass = xkube_DB_123456 	#mysqld 密码
db_name = db_xkube	#数据库名

第二步:修改redis配置

复制代码
安装完redis以后:然后修改conf/app.conf中的如下配置:
redisDb = "192.168.1.115:6379"	#redis的IP和端口
redisPasswd = "Redis_123456"	#redis配置设置的密码
SessionProviderConfig = "192.168.1.115:6379,100,Redis_123456"	#将redis的IP、端口、密码进行更改,100这个数字保留即可。

第三步:启动服务

复制代码
修改完以上配置后:Linux 环境下进入目录直接执行:nohub ./xkube & ,windows环境下执行./xkube.exe即可启动
就可以通过http://ip:8080/index 进行访问了。

第四步:前端若有nginx反向代理需增加如下配置:

复制代码
    location ~^/xkube/pod/terminal/ws {
        proxy_pass http://127.0.0.1:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Origin "";
    }

第五步:后台设置

复制代码
1. 登录后台后,默认用户名和密码都是admin,在k8s列表里进行添加需要管理的集群。
2. 当有多个集群时,可以为自己设置一个常用集群,该设置会记录到cookie,下一次登录会继续管理该集群。
3. 完成以上两步以后就可以在线管理k8s 了。

第六步:后台主面板功能说明

4.部署免费tls证书,https环境。

letsencrypt免费证书申请参考:https://xkube.eeenet.net/doc/page/read.html?id=23

相关推荐
java_logo2 小时前
LocalAI Docker 容器化部署指南
docker·容器·eureka·localai·docker部署localai·localai部署教程·localai部署文档
逆流°只是风景-bjhxcc2 小时前
【k8s】Kubernetes 探针(livenessProbe、readinessProbe、startupProbe)
云原生·容器·kubernetes
逆流°只是风景-bjhxcc2 小时前
【k8s】Kubernetes(K8s)YAML 配置文件
docker·容器·kubernetes
理智的煎蛋3 小时前
单节点 K8S IP 修改步骤
tcp/ip·云原生·容器·kubernetes
眠りたいです4 小时前
Docker:Docker Volume存储卷-宿主机与容器的数据双向交流通道
运维·docker·中间件·容器
幺零九零零4 小时前
Docker底层-Namespaces(网络隔离)
网络·docker·容器
2501_939909055 小时前
Docker(3)
运维·docker·容器
没有bug.的程序员5 小时前
Spring Cloud Gateway 架构与执行流程:从原理到性能优化的深度探索
微服务·云原生·eureka·性能优化·架构·sentinel·服务发现
XMYX-05 小时前
从 Pod 资源到 JVM 参数:我再生产环境中踩过的 Kubernetes 资源配置那些坑——2025 年度技术总结
jvm·容器·kubernetes