K8S集群搭建高可用prometheus+grafana

使用k3s来搭建测试环境。

为什么使用k3s

K3s 是一个轻量级的、完全兼容的 Kubernetes 发行版本。非常适合测试。

K3s将所有 Kubernetes 控制平面组件都封装在单个二进制文件和进程中,文件大小<100M,占用资源更小,且包含了kubernetes运行所需要的部分外部依赖和本地存储提供程序。

K3s提供了离线安装包,安装起来非常方便,可以避免安装过程中遇到各种网络资源访问问题。

安装k3s

1.准备工作

systemctl disable firewalld --now

2.使用官方脚本在线安装集群

#master
curl -sfL https://get.k3s.io | sh -
#在master节点上获取集群token
cat /var/lib/rancher/k3s/server/node-token

#在agent节点使用token部署工作节点
curl -sfL https://get.k3s.io | K3S_URL=https://master:6443 K3S_TOKEN=XXX sh -

3.在master节点查看集群状态

root@master:~# kubectl get nodes
NAME     STATUS   ROLES                  AGE   VERSION
master   Ready    control-plane,master   14d   v1.25.3+k3s1
agent    Ready    <none>                 14d   v1.25.3+k3s1

部署prometheus+grafana

使用github的kube-prometheus项目快速部署

git clone https://github.com/prometheus-operator/kube-prometheus.git -p release-0.11

cd kube-promethues

kubectl apply --server-side -f manifests/setup

kubectl wait \
	--for condition=Established \
	--all CustomResourceDefinition \
	--namespace=monitoring
kubectl apply -f manifests/

此时,k3s集群开始拉去镜像,并自动部署高可用prometheus集群。

#查看prometheus集群的构建状态
kubectl get all -n monitoring
kubectl get pod -n monitoring

#如果发现有不能拉取的镜像,或者构建失败的pod,通过describe查看具体信息。
kubectl describe pod kube-state-metrics-XXX -n monitoring
#找到对应的镜像名,到dockerhub上找相同的拉取。

最后,通过修改service.yml的方式,使集群的端口以NodePort的方式暴露出来。

K8S集群搭建高可用prometheus+grafana
K8S集群搭建高可用prometheus+grafana

修改完成后,一定要重新部署service,使修改生效

kubectl apply -f grafana-service.yaml -n monitoring

查看NodePort并访问

kubectl get svc -n monitoring
K8S集群搭建高可用prometheus+grafana

通过集群里任意IP:PORT进行web页面的访问

K8S集群搭建高可用prometheus+grafana

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6185

(0)
李逍遥的头像李逍遥
上一篇 2022年11月21日 下午4:43
下一篇 2022年11月22日 下午5:30

相关推荐

  • Linux安装青龙面板 稳定版超级详细

    一.安装docker容器 1.工具安装 复制所有代码然后直接右键粘贴进去 中间过程输入y 回车 yum install docker-io –y 这里输入y 安装成功之后是这个样子 输入以下代码回车 systemctl start docker 复制粘贴下面命令回车 docker ps 如果显示下图 即为成功 二.安装青龙面板 1.安装面板 (想改青龙面板端…

    2022年6月22日
    3.4K00
  • Linux 内存优化 配置 Zram

    Zram(也称为压缩内存块设备)是Linux内核中的一个功能,用于提供虚拟内存的压缩和解压缩功能。它通过将内存块压缩存储在内存中,可以有效地提高系统的内存利用率,并减少对物理磁盘的读写操作。 配置了 Zram 之后,服务器内存配置不变的情况下,可承载的人数或持续运行的时间均有一定程度的提升。我们也为 Linux 服务器配置 Zram 提供了一键方式,登录 L…

    2024年1月31日
    1.6K00
  • CentOS7下使用Lsyncd实现文件实时同步

    Lsyncd 在几秒钟内将这些文件事件整理核对后,然后生成一个或多个进程以将更改同步到远程文件系统。默认使用的同步方法是rsync。因此,Lsyncd 是一种轻量级的实时镜像解决方案。 Lsyncd简单介绍 Lsyncd 使用文件系统事件接口(inotify 或 fsevents)来监视本地文件和目录的更改。 Lsyncd 在几秒钟内将这些文件事件…

    2023年12月7日
    1.2K00
  • Linux服务器疑似被入侵,教你怎么去排查

    随着开源产品的越来越盛行,作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显得至关重要,个人结合自己的工作经历,整理了几种常见的机器被黑情况供参考。 背景信息:以下情况是在CentOS 6.9的系统中查看的,其它Linux发行版类似。 1、入侵者可能会删除机器的日志信息,可以查看日志信息是否还存在或者是否被清空,相关命令示例: [root…

    2023年2月23日
    1.3K00
  • MySQL 用户管理和权限管理

    在项目中,一个数据库有很多人需要使用,不能所有的人都使用相同的权限,如果人比较多,一人一个用户也很难管理。一般来说,会分超级管理员权限,管理员权限,读写权限,只读权限等,这样方便管理。当然,具体怎么管理权限根据实际情况来确定。无论如何,都需要创建多个用户来管理权限。root 是数据库的超级管理员用户,对于普通开发人员来说,权限太大了,如果不小心做了一些不可逆…

    2022年6月9日
    1.6K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信