首页 公告 项目 RSS

prometheus获取homeassistant数据

April 13, 2023 本文有 577 个字 需要花费 2 分钟阅读

简介

最近在折腾Home Assistant,因为HA入手真的是有一些门槛的,而且一直使用米家APP也没有什么大的毛病,所以对HA一直不怎么感冒,但是经历了上一次小米米家断网之后,就感觉有必要搞一个HA了,不为别的,就为了断网的时候可以开空调

安装HA

我是直接扔在树莓派的k8s上的

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: homeassistant
  namespace: app
spec:
  selector:
    matchLabels:
      app: homeassistant
  serviceName: homeassistant
  replicas: 1
  template:
    metadata:
      labels:
        app: homeassistant
    spec:
      # hostNetwork: true
      containers:
        - name: homeassistant
          image: ghcr.dockerproxy.com/home-assistant/home-assistant:2022.8
          volumeMounts:
            - name: homeassistant-data
              mountPath: /config
          ports:
            - containerPort: 8123
              name: web
      volumes:
        - name: homeassistant-config
          configMap:
            name: homeassistant-config
  volumeClaimTemplates:
    - metadata:
        name: homeassistant-data
      spec:
        accessModes:
          - ReadWriteOnce
        storageClassName: managed-nfs-storage
        resources:
          requests:
            storage: 20Gi
--- 
apiVersion: v1
kind: Service
metadata:
  name: homeassistant
  namespace: app
spec:
  type: LoadBalancer
  loadBalancerIP: 10.10.100.174
  selector:
    app: homeassistant
  ports:
  - port: 80
    targetPort: 8123
    name: http

如果你要安装homebridge的话记得把

# hostNetwork: true

注释去掉,不然会发现不了设备

之后安装hacs

进入容器,执行

wget -O - https://get.hacs.xyz | bash -

之后重启容器,在ha的侧边栏就可以看到HACS的菜单了

装完之后搜索MIOT,就可以看到相关的插件

安装完成之后,在配置->设备与服务->中选择Xiaomi Miot Auto登录自己的账号,这样你米家中所有的设备就自动加入进来了

配置prometheus

在配置prometheus之前,需要拿到一个长期访问令牌,点击你的账户,滑到最后,然后创建一个长期访问令牌

下面是prometheus job相关的配置

      - job_name: "hass"
        scrape_interval: 60s
        metrics_path: /api/prometheus

        # Long-Lived Access Token
        authorization:
          credentials: "长期访问令牌"

        scheme: http
        static_configs:
          - targets: ['10.10.100.174']

如果问题不大的话,prometheus中就会有ha的指标了

欢迎关注我的博客www.bboy.app

Have Fun