Mac本地搭建loki日志追踪

2023-05-16

Loki版本

  • v2.4.x

  • [参考文档](Helm | Grafana Loki documentation)

环境准备

  • helm工具安装

  • k8s环境支持,可以直接使用docker桌面工具自带的k8s工具便于进行资源分配

安装

  • 拉取grafana:

    helm repo add grafana https://grafana.github.io/helm-charts
    
  • 部署Loki Stack,一次安装 Loki、Promtail、Grafana、Prometheus工具

    helm upgrade --install loki grafana/loki-stack  --set grafana.enabled=true,prometheus.enabled=true,prometheus.alertmanager.persistentVolume.enabled=false,prometheus.server.persistentVolume.enabled=false
    
  • 等待对应的pod都起来

kubectl get pod
NAME                                            READY   STATUS              RESTARTS   AGE
loki-0                                          0/1     Running             0          42s
loki-grafana-5d5c4c8df-mrlg9                    2/2     Running             0          42s
loki-kube-state-metrics-5c6b9ddd4f-kdh56        1/1     Running             0          42s
loki-prometheus-alertmanager-7d5bdfcb7b-mzgl7   2/2     Running             0          42s
loki-prometheus-node-exporter-2f4kc             0/1     RunContainerError   2          42s
loki-prometheus-pushgateway-7cdf755958-4zj99    1/1     Running             0          42s
loki-prometheus-server-6764f67456-c7qmn         2/2     Running             0          42s
loki-promtail-n9p74                             1/1     Running             0          42s
  • 修改loki-grafana的网络类型
kubectl edit svc loki-grafana

将spec.type从ClusterIP改为NodePort
:wq
service/loki-grafana edited
  • 查看k8s为loki-grafana分配的外网IP
kubectl get svc |grep loki-grafana
loki-grafana  NodePort    10.97.189.58     <none>   80:30580/TCP                   7m28s
  • 使用浏览器访问:localhost:30580

  • 登录grafana

    • 用户名默认为:admin

    • 密码

    kubectl get secret loki-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
    
    sQqlBCxLKpafa01cFYNrzHPpnjfY6O9rHimVhoq6
    
  • 查看grafana的数据源配置
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ma4GNd9H-1660722951888)(image/数据源配置1.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CynwCllt-1660722951889)(image/数据源配置2.png)]

服务准备

  • 编写go服务如下
package main

import (
	"log"
	"time"
)

func main()  {
	t := time.NewTicker(2*time.Second)
	for {
		select {
		case <-t.C:
			log.Println("log")
			log.Println("log1")
			log.Println("log2")
			log.Println("log3")
			log.Println("log4")
			log.Println("log5")
			log.Println("log6")
		}
	}
}
  • 编译生成镜像并传送到远端,
# Dockerfile
FROM golang:alpine
RUN mkdir /app
COPY . /app
WORKDIR /app
RUN go build -o main .
CMD ["/app/main"]

# build-docker.sh
docker login --username=zsx123456 --password=xxxxxxxx
docker build -t zsx123456/go-loki .
docker push zsx123456/go-loki

# 执行build-docker
sh build-docker.sh
  • 使用k8s在本地创建服务pod
# deployment.yaml
apiVersion: apps/v1 # 当前使用的 kubernetes 的API版本
kind: Deployment  # 表示想要创建的对象种类
metadata:   # 元数据,用于唯一表示当前的对象
  name: go-loki # fdsf
spec:     # pod的指定配置
  replicas: 2 #ReplicaSet部分的定义
  selector:
    matchLabels:
      app: go-app
  template: # Pod 模板的定义
    metadata:
      labels:
        app: go-app
    spec: # pod中容器相关的定义
      containers:
        - name: go-app-container
          image: zsx123456/go-loki
          ports:
            - containerPort: 3000
  • 执行查看
# 启动
kubectl create -f deployment.yaml
deployment.apps/go-loki created

# 查看pod
kubectl get pods |grep go-loki
go-loki-54f6d7f4c9-sbq64                        1/1     Running            0          42s
  • 在grafana查看日志
    在这里插入图片描述
    在这里插入图片描述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mac本地搭建loki日志追踪 的相关文章

随机推荐

  • vue 引入字体图标显示方块

    问题现象 xff1a 使用element ui xff0c 字体图表显示 方块 项目加载后 xff0c 看加载文件 xff0c 并没有 woff或 woff2或 ttf等字体图标文件 也没有字体图表转换后的base64 xff0c 文件 环
  • mysql8.0报错解决方式:1449 - The user specified as a definer (‘root‘@‘%‘) does not exist

    今天在Navicat上新建本地数据库连接的时候 xff0c 输入正确的账号密码点击连接之后却报错 查询相关文件之后 xff0c 发现是权限问题 产生用户不能授权的原因是mysql 数据库中user 表中的特定用户 root 的host 的属
  • AD中PCB板设计中如何将正反面相互对调

    在pcb布局过程中 xff0c 有时会碰到正反面布局反了的情况 xff0c 且走线也已经大部分完成的时候 xff0c 我们可以利用AD软件的快捷键 xff0c 实现正反面相互对调的过程 按L键 xff0c 打开所有层显示 要对调的层 xff
  • 非分区表转换为分区表的三种方式

    创建测试环境 span class token comment 创建非分区表 span span class token keyword CREATE span span class token keyword TABLE span T N
  • 表管理语法

    表操作 表的创建表的修改修改列名修改列类型或约束添加新列删除列修改表名 表的删除删除表数据及结构删除表数据使用DELETE语法使用TRUNCATE语法 表的复制仅仅复制表结构复制表的结构 43 数据复制全部数据复制部分数据仅仅复制部分结构跨
  • 事务

    事务控制语言 事务的特性特点分类 事务的创建数据库隔离级别各种并发问题隔离级别 delete和truncate在事务使用时的区别 事务的特性 一条或多条SQ语句组成一个执行单位 xff0c 要么全执行 xff0c 要么全不执行 特点 A原子
  • 视图

    视图 简单介绍创建视图语法好处 修改视图语法 删除视图语法 查看视图语法 更新视图以下类型试图不可更新 视图和表比较 简单介绍 MySQL从5 0 1版本开始提供视图功能 xff0c 视图是一个虚拟表 xff0c 行和列的数据来自定义视图的
  • 存储过程和函数

    存储过程和函数 前提变量分类 系统变量使用作用域 自定义变量使用用户变量使用局部变量使用 作用域用户变量和局部变量对比 举例用户变量局部变量 存储过程和函数存储过程基本介绍语法举例 函数储过程和函数区别语法举例无参数又返回有参有返回 流程控
  • mysq简介

    mysql简介 RPM安装查看当前系统是否安装mysql安装查看mysql所属组和密码启动关闭mysql设置开机自启动安装位置修改字符集 配置文件二进制日志log bin错误日志log error查询日志log数据文件 存储引擎查看myis
  • mysql索引常见面试题

    mysql索引常见面试题 建表场景分析索引有查找和排序两大功能 建表 create table test1 id int not null PRIMARY KEY auto increment c1 char 10 c2 char 10 c
  • protobuf引入其它proto文件

    文章目录 同包内直接引用不同包中引用 同包内直接引用 文件结构 span class token operator span proto span class token operator span a proto span class t
  • JAVA_HOME配置

    Linux下配置 查询方法 xff1a span class token function which span java xff1a 查看Java执行命令位置 span class token function ls span lrt u
  • 经典进程同步问题(一)——生产者消费者问题

    目录 一 生产者消费者问题描述 二 解决思路 三 问题求解 xff1a 四 源码 五 运行结果 xff1a 一 生产者消费者问题描述 生产者消费者 xff08 producer customer xff09 问题是一个非常著名的进程同步问题
  • Markdown语法总结

    文章目录 Markdown 学习标题三级标题四级标题 字体引用分割线图片超链接列表有序列表无序列表 表格代码注脚LaTeX公式 表示行内公式 表示行内公式 使用HTML源码 Markdown 学习 标题 三级标题 四级标题 标题最多支持六级
  • linux下设置免密登录

    文章目录 配置本机免密登录设置远程免密登录 配置本机免密登录 未配置免密登录的时候需要输入密码ssh localhost span class token punctuation span root 64 zsx3 span class t
  • 设置静态ip

    设置静态ip 网络配置的配置文件所在位置 etc sysconfig network scripts 查看所有的设备配置文件 span class token punctuation span root zsx1 span class to
  • 退出telnet交互

    telnet 命令 xff1a telnet ip port 进入交互后使用ctrl 43 C无法退出 xff0c 使用ctrl 43 xff0c 进入telnet提示 xff0c 在使用ctrl 43 C
  • Redis集群只读问题

    问题 localhost span class token operator span class token file descriptor important 0 span gt span set n fsfsd span class
  • 批量删除镜像

    docker rmi f docker images grep 10 200 2 20 awk 39 print 3 39
  • Mac本地搭建loki日志追踪

    Loki版本 v2 4 x 参考文档 Helm Grafana Loki documentation 环境准备 helm工具安装 k8s环境支持 xff0c 可以直接使用docker桌面工具自带的k8s工具便于进行资源分配 安装 拉取gra