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.git或git 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配置更改:
#数据库配置时需要导入docker-compose/xkube.sqldb_host=mysql_server#更改成mysql的IPdb_port=3306#更改成mysql的端口db_user=db_xkube#更改成mysql的用户名db_pass=xkube_DB_123456#更改成mysql的密码db_name=db_xkube#更改成mysql的数据库名db_type=mysql2.redis配置更改
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-volume4.ingres中的域名配置更改
spec:ingressClassName:nginxrules:-host:xkube.xxxx.comhttp:paths:-path:/pathType:Prefixbackend:service:name:xkube-adminport:number:803.第三种部署方式:服务器上安装部署
修改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