Kubernetes上安装ELK监控

Kubernetes上安装ELK监控

安装elk operator自定义的resource

里面包含了es,kibana,filebeat等资源的定义,以及RBAC

kubectl apply -f https://download.elastic.co/downloads/eck/1.3.1/all-in-one.yaml

在这里插入图片描述

安装elasticsearch

cat <<EOF | kubectl apply -f -
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: quickstart
spec:
  version: 7.10.2
  nodeSets:
    - name: default
      count: 1
      config:
        node.store.allow_mmap: false
EOF

开放端口

kubectl port-forward service/quickstart-es-http 9200

默认用户名:elastic,密码:

PASSWORD=$(kubectl get secret quickstart-es-elastic-user -o go-template='{
    {.data.elastic | base64decode}}')
echo $PASSWORD

测试访问

curl -u "elastic:$PASSWORD" -k "https://localhost:9200"

在这里插入图片描述

部署Kibana

创建kibana

cat <<EOF | kubectl apply -f -
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
  name: quickstart
spec:
  version: 7.10.2
  count: 1
  elasticsearchRef:
    name: quickstart
EOF

在这里插入图片描述

开放端口

kubectl port-forward service/quickstart-kb-http 5601

默认用户名:elastic,获取密码(同es密码)

kubectl get secret quickstart-es-elastic-user -o=jsonpath='{.data.elastic}' | base64 --decode; echo

访问kibana,注意是https

https://localhost:5601

在这里插入图片描述
kibana已经可以访问了,要收集containers日志还要创建filebeat。

filebeat 测试

k create -f https://raw.githubusercontent.com/chenjiangtao/spring-boot-on-kubernetes/main/kubernetes/elk/all-in-one/filebeat.yaml

在这里插入图片描述
在kibana中创建filebeat索引,已经可以看到k8s的日志了
在这里插入图片描述

使用busybox模拟应用打印日志

cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
  name: counter
spec:
  containers:
  - name: count
    image: busybox
    # 输出hello world 
    args: [/bin/sh, -c,
            'i=0; while true; do echo "hello world: $i: $(date)"; i=$((i+1)); sleep 3; done']
EOF        

可以看到filebeat已经收集到了
在这里插入图片描述

参考:
quickstart https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-quickstart.html
演示代码位置:https://github.com/chenjiangtao/spring-boot-on-kubernetes/tree/main/kubernetes/elk/all-in-one

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100335.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [Android-ARCore开发]ARCore从入门到放弃1-Demo上手[通俗易懂]

    Google刚发布了Google ARCore,对标苹果的ARKit,之前微软出hololens的时候就非常关注AR,迫不及待试了一下ARCore的效果,让人Excited,有种刚学安卓时候第一次跑起来模拟器的感觉。顺带记录下上手过程,比较简单,官网很详细,这里差不多只是个翻译。上手准备 1、Android studio 2.3及以上 2、支持的设备Pixel和三星S8 3、官方Demo和AR

    2022年3月11日
    40
  • C#中MessageBox使用方法大全(附效果图)

    C#中MessageBox使用方法大全(附效果图)

    2021年11月29日
    111
  • Operators in MXNet-BatchNorm

    Operators in MXNet-BatchNormOperatorsinMXNet-BatchNorm

    2022年5月8日
    41
  • 122. 买卖股票的最佳时(状态机模型)[通俗易懂]

    122. 买卖股票的最佳时(状态机模型)[通俗易懂]原题链接给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4

    2022年8月8日
    5
  • listlength函数头文件_length函数

    listlength函数头文件_length函数length函数系统默认用户浏览8778请教MySQL高手:“length()”函数与“char_length()”函数的区别是什么?高手,您好:小弟的提问如题。希望高手能够为小弟举出一个能够展示length()函数与char_length()函数区别的例子。并且配合两个函数的作用机理,为小弟做一下这两个函数区别的讲解。谢谢…高手,您好:小弟的提问如题。希望高手能够为小弟举出一个能够展示le…

    2022年6月14日
    29
  • CC2541蓝牙学习——ADC

    CC2541蓝牙学习——ADCCC2541的ADC支持多达14位的模拟数字转换与高达12位的有效位数。它包括一个模拟多路转换器,具有多达8个各自可独立配置的通道,一个参考电压发生器。转换结果通过DMA写入存储器。还具有若干运行模式

    2022年8月3日
    7

发表回复

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

关注全栈程序员社区公众号