k8s部署logstash

1. 编写logstash.yaml配置文件

复制代码
---
apiVersion: v1
kind: Service
metadata:
  name: logstash
spec:
  type: ClusterIP
  clusterIP: None
  ports:
  - name: logstash-tcp
    port: 5000
    targetPort: 5000
  - name: logstash-beats
    port: 5044
    targetPort: 5044
  - name: logstash-api
    port: 9600
    targetPort: 9600
  selector:
    app: logstash
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: logstash-config
data:
  # 指定配置文件的内容
  logstash.yml: |
    http.host: 0.0.0.0
    xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ]
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: logstash-pipeline-config
data:
  # 指定配置文件的内容
  logstash.conf: |-
    input {
        beats {
            port => 5044
        }
        tcp {
            port => 5000
        }
    }
    output {
        elasticsearch {
            hosts => "elasticsearch:9200"
            user => "elastic"
            password => "changeme"
            ecs_compatibility => disabled
        }
    }
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: logstash
spec:
  serviceName: logstash
  replicas: 1
  selector:
    matchLabels:
      app: logstash
  template:
    metadata:
      labels:
        app: logstash
    spec:
      containers:
      - name: logstash
        image: 	harbor.cool.team/common/logstash/logstash:7.16.2
        imagePullPolicy: IfNotPresent
        ports:
        - name: logstash-tcp
          containerPort: 5000
          protocol: "TCP"
        - name: logstash-beats
          containerPort: 5044
          protocol: "TCP"
        - name: logstash-api
          containerPort: 9600
          protocol: "TCP"
        volumeMounts:
        - name: logstash-conf #挂载配置
          mountPath: /usr/share/logstash/config/logstash.yml
          subPath: logstash.yml
        - name: logstash-pipeline-conf
          mountPath: /usr/share/logstash/pipeline/logstash.conf
          subPath: logstash.conf
      volumes:
      - name: logstash-conf
        configMap:
          name: logstash-config
      - name: logstash-pipeline-conf
        configMap:
          name: logstash-pipeline-config
      restartPolicy: Always

2. 在k8s页面,wms命名空间导入logstash.yaml配置文件

3. 查看部署信息

4. 查看配置信息

5. 查看Pod日志信息,检查是否有报错信息

6. 本地host新增配置

复制代码
192.168.1.1 wmslogstash.dev.cool.team

7. 新增Ingress

8. 访问logstash页面

wmslogstash.dev.cool.team

相关推荐
小马同学-38 分钟前
crictl实战:K8s容器运行时排障工具
容器·k8s·crictl
逐流人1 小时前
Containerd容器管理实战:从架构原理到nerdctlcrictl工具链
linux·运维·云原生·容器·云计算·containerd
kuroomi12 小时前
Ingress-Nginx与kubernetes 网络
linux·运维·网络·kubernetes
闲云自留地12 小时前
Containerd 进阶教程:命名空间 Namespace、私有仓库 Harbor、容器管理全流程
容器
闲云自留地15 小时前
Containerd 是什么?架构、插件与安装实践一次讲清
容器
运维开发王义杰16 小时前
跨项目直连数据库:是架构反模式,还是现实的工程妥协?
云原生
闲云野鹤在人间17 小时前
docker 入门 | 第7章 容器监控 和 第8章 容器日志 详解
运维·docker·容器·架构·云计算
闲云自留地18 小时前
告别敲命令!DockerUI 与 Portainer 可视化容器管理实战
docker·容器
wdfk_prog18 小时前
ROS教程10:从 gtest 到 rostest——Unit Test、Node 集成测试、rosbag 与 rqt 验证闭环
运维·缓存·docker·容器·ros
程序猿阿越19 小时前
containerd如何创建Pod
后端·kubernetes·源码阅读