jjzjj

Kuboard Spray+Kuboard搭建k8s集群

skywin88 2023-10-31 原文

使用Kuboard Spray搭建k8s集群

服务器环境

使用3台centos7.6系统虚拟机,4核4g内存,使用最小化安装系统,并修改配置好网络
k8s版本1.23.12,docker版本20.10.18,集群角色规划如下
192.168.2.101 k8s01 master,etcd,worker
192.168.2.102 k8s02 worker
192.168.2.103 k8s03 worker
参考文档 https://www.kuboard.cn/learning/

初始化机器(3台都执行)

安装wget
yum install -y wget 

centos 7 添加阿里云镜像源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release

停止防火墙和SELinux
systemctl stop firewalld && systemctl disable firewalld
sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config 
setenforce 0

卸载自带的mariadb
yum remove mariadb mariadb-libs

关闭swap(可选,k8s集群推荐关闭,不关影响性能)
临时 swapoff -a
永久 注释/etc/fstab中swap的一行并重启

修改每台的hostname
192.168.2.101上执行 hosenamectl set-hostname k8s01 && su -
192.168.2.102上执行 hosenamectl set-hostname k8s02 && su -
192.168.2.103上执行 hosenamectl set-hostname k8s03 && su -

添加hosts
echo 192.168.2.101 k8s01 >> /etc/hosts
echo 192.168.2.102 k8s02 >> /etc/hosts
echo 192.168.2.103 k8s03 >> /etc/hosts

免密登陆(可选)
192.168.2.101上执行 ssh-keygen 一路回车
192.168.2.101上执行 ssh-copy-id root@192.168.2.102 填入yes和密码
192.168.2.101上执行 ssh-copy-id root@192.168.2.103 填入yes和密码
之后192.168.2.101便可免密码ssh连接后两台

安装docker并配置启动和自启
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker && systemctl enable docker

安装Kuboard Spray和k8s集群

192.168.2.101上执行
docker run -d \
  --privileged \
  --restart=unless-stopped \
  --name=kuboard-spray \
  -p 8080:80/tcp \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /opt/kuboard-spray-data:/data \
  eipwork/kuboard-spray:latest-amd64 
浏览器访问192.168.2.101:8080并登陆 admin Kuboard123

下载1.23.12版本k8s

填入yum源和docker源

创建集群并选好角色(填好响应主机角色和IP用户名密码等并测试连接,全局设置中容器引擎选docker_20.10,os软件源仅勾选centos,可选组件中勾选kuboard并填入Kuboard 数据目录,其他使用默认配置即可 )

配置完成后点击安装即可,等待直到右上角显示已断开返回Kuboard Spray页面查看状态,如未安装则再次执行,耐心等待完成即可。安装完成后Kuboard Spray就没用了,可以删了docker rm -f kuboard-spray,数据目录/opt/kuboard-spray-data看情况删不删

进入kuboard

使用admin Kuboard访问192.168.2.101即可正常使用

手动安装Kuboard

以上是理想情况,如出现kuboard安装失败,则手动安装
Kuboard Spray自带的是Kuboardv3,版本比较老,可能存在问题
推荐使用docker安装最新版(也可以用deployment方式装在k8s中)

sudo docker run -d \
  --restart=unless-stopped \
  --name=kuboard \
  -p 80:80/tcp \
  -p 10081:10081/udp \
  -p 10081:10081/tcp \
  -e KUBOARD_ENDPOINT="http://192.168.2.101:80" \
  -e KUBOARD_AGENT_SERVER_UDP_PORT="10081" \
  -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
  -v /opt/kuboard-data:/data \
  eipwork/kuboard:v3.5.0.3
  #eipwork/kuboard:v3.1.7.1

使用admin Kuboard访问192.168.2.101

添加集群,使用.kubeconfig方式(不用装agent)
复制192.168.2.101的/root/.kube/config内容到页面kubeconfig,APIServer 地址将127.0.0.1改为192.168.2.101即可

使用agent方式则需要使用页面显示的命令在192.168.2.101上执行安装agent

如存在metrics-server一直起不来也需要在页面删除deployment并重新安装
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

有关Kuboard Spray+Kuboard搭建k8s集群的更多相关文章

  1. 【详解】Docker安装Elasticsearch7.16.1集群 - 2

    开门见山|拉取镜像dockerpullelasticsearch:7.16.1|配置存放的目录#存放配置文件的文件夹mkdir-p/opt/docker/elasticsearch/node-1/config#存放数据的文件夹mkdir-p/opt/docker/elasticsearch/node-1/data#存放运行日志的文件夹mkdir-p/opt/docker/elasticsearch/node-1/log#存放IK分词插件的文件夹mkdir-p/opt/docker/elasticsearch/node-1/plugins若你使用了moba,直接右键新建即可如上图所示依次类推创建

  2. 关于ES集群信息的一些查看 - 2

    文章目录查看ES信息查看节点信息查看分片信息实际场景下ES分片及副本数量应该怎么分关于ES的灵活使用查看ES信息查看版本kibana:GET/查看节点信息GET/_cat/nodes?v解释:ip:集群中节点的ip地址;heap.percent:堆内存的占用百分比;ram.percent:总内存的占用百分比,其实这个不是很准确,因为buff/cache和available也被当作使用内存;cpu:cpu占用百分比;load_1m:1分钟内cpu负载;load_5m:5分钟内cpu负载;load_15m:15分钟内cpu负载;node.role:上图的dilmrt代表全部权限master:*代表

  3. linux查看es节点使用情况,elasticsearch(es) 如何查看当前集群中哪个节点是主节点(master) - 2

    elasticsearch查看当前集群中的master节点是哪个需要使用_cat监控命令,具体如下。查看方法es主节点确定命令,以kibana上查看示例如下:GET_cat/nodesv返回结果示例如下:ipheap.percentram.percentcpuload_1mload_5mload_15mnode.rolemastername172.16.16.188529952.591.701.45mdi-elastic3172.16.16.187329950.990.991.19mdi-elastic2172.16.16.231699940.871.001.03mdi-elastic4172

  4. k8s-污点 (Taint)和容忍 (Tolerations) - 2

    文章目录一、污点(Taint)1、污点简介2、污点的组成3、污点的设置和去除二、容忍(Tolerations)1、容忍简介2、容忍的基本用法3、示例4、多污点与多容忍配置三、警戒(cordon)和转移(drain)四、Pod启动阶段(相位phase)五、故障排除步骤一、污点(Taint)节点亲和性,是Pod的一种属性(偏好或硬性要求),它使Pod被吸引到一类特定的节点Taint则相反,它使节点能够排斥一类特定的PodTaint和Toleration相互配合,可以用来避免Pod被分配到不合适的节点上。每个节点上都可以应用一个或多个taint,这表示对于那些不能容忍这些taint的Pod,是不会被

  5. LinuxGUI自动化测试框架搭建(二十二)-框架主入口main.py设计&log日志调用 - 2

    (二十二)-框架主入口main.py设计&log日志调用和生成1测试目的2测试需求3需求分析4详细设计4.1新建存放日志目录log4.1.1配置config.py中写入log的目录4.2`baseInfo.py`中加入日志4.3`test_gedit.py`中加入日志4.4主函数入口main.py中调用日志5调用日志主函数main.py源码6`baseInfo.py`源码7`test_gedit.py`源码8运行效果9目前框架结构1测试目的组织运行所有的测试用例,并调用日志模块,便于问题定位。

  6. 基于ActiveMQ搭建MQTT服务备忘(二):webapp集成 - 2

    (1)为什么写这个话题(Why)读万卷书不如行千里路。这次搭建MQTT服务,遇到了一些误解,特此记录备忘。主要包括:(1)服务(Broker)的账户管理与网页管理平台的账户(2)与web应用的集成(Spring系)(2)ActiveMQ版本选择因为JAVA环境是JDK8,所以按兼容性考虑选择了ActiveMQ5.15的最后版本5.15.15。如果你是JDK11则可考虑ActiveMQ的最新版本5.17或5.18。ActiveMQ支持MQTTv3.1.1andv3.1。(3)ActiveMQ与web应用的集成主要介绍与Spring系的webapp集成(SpringBoot和SpringMVC)。

  7. kubernetes集群划分节点 - 2

    Kubernetes(K8s)是一个用于管理容器化应用程序的开源平台,可以帮助开发人员更轻松地部署、管理和扩展应用程序。在Kubernetes中,集群划分是一种重要的概念,可以帮助我们更好地组织和管理集群中的节点和资源。本文将介绍如何使用Kubernetes对集群进行划分,并提供详细的操作示例,希望能够帮助读者更好地了解和使用Kubernetes平台。Node划分Node划分是将集群中的节点按照一定的规则进行划分。在Kubernetes中,可以使用NodeSelector和Affinity机制来实现Node划分。NodeSelectorNodeSelector是一种将Pod调度到符合特定节点标

  8. 【微服务笔记23】使用Spring Cloud微服务组件从0到1搭建一个微服务工程 - 2

    这篇文章,主要介绍如何使用SpringCloud微服务组件从0到1搭建一个微服务工程。目录一、从0到1搭建微服务工程1.1、基础环境说明(1)使用组件(2)微服务依赖1.2、搭建注册中心(1)引入依赖(2)配置文件(3)启动类1.3、搭建配置中心(1)引入依赖(2)配置文件(3)启动类1.4、搭建API网关(1)引入依赖(2)配置文件(3)启动类1.5、搭建服务提供者(1)引入依赖(2)配置文件(3)启动类1.6、搭建服务消费者(1)引入依赖(2)配置文件(3)启动类1.7、运行测试一、从0到1搭建微服务工程1.1、基础环境说明(1)使用组件这里主要是使用的SpringCloudNetflix

  9. 云原生(十八) | Kubernetes篇之Kubernetes(k8s)工作负载 - 2

    文章目录Kubernetes(k8s)工作负载一、Workloads二、Pod三、Deployment四、RC、RS、DaemonSet、StatefulSet五、Job、CronJob1、Job2、CronJob六、GCKubernetes(k8s)工作负载一、Workloads什么是工作负载(Workloads)工作负载是运行在Kubernetes上的一个应用程序。一个应用很复杂,可能由单个组件或者多个组件共同完成。无论怎样我们可以用一组Pod来表示一个应用,也就是一个工作负载Pod又是一组容器(Containers)所以关系又像是这样工作负载(Workloads)控制一组PodPod控制

  10. K8s部署PHP项目 - 2

    前言    前端时间PHP项目部署升级需要,需要把Laravel开发的项目部署K8s上,下面以laravel项目为例,讲解采用yaml文件方式部署项目。一、部署步骤1.创建Dockerfile文件Dockerfile是一个用来构建镜像的文本文件,在容器运行时,需要把项目文件和项目运行所必须的组件安装其中。#基础镜像FROMphp:7.4-fpm#时区ARGTZ=Asia/Shanghai#更换容器时区RUNcp"/usr/share/zoneinfo/$TZ"/etc/localtime&&echo"$TZ">/etc/timezone#替换成阿里apt-get源RUNsed-i"s@http

随机推荐