HomeAssistant从零开始折腾(一) - 安装部署
废话
好久没怎么写博客了,最近在沉迷Homelab/HomeAssistant,所以就想着把这个过程记录下来,开个大坑。
安装部署
安装方式
HomeAssistant支持多种安装方式,包括:
- HAOS
- Container
- Core
- Supervised
其中Core和Supervised不是很常用,首先排除,HAOS和Container的选择我纠结了很久。
Container比较轻量化,可以直接在Docker中运行,更新也还算方便,备份要靠手动管理映射出来的Config目录。还有很重要的一点,Container不支持加载项(Add-On),虽然这些加载项都可以另外单独部署,但是这些服务基本都是HA专用的,所以我觉得让HAOS统一管理会比较合理。
另外,因为我的HomeServer上还运行着许多其他服务,担心Docker宿主万一折腾折腾着挂掉,那HA也就跟着挂了,所以还是想把HA单独拎出来,所以我最终选择了HAOS,因为这是官方推荐的安装方式,也是最简单的方式,同时它的更新和备份也都比较方便。
宿主机器是一台x86的PC,我选择了Proxmox(PVE)作为虚拟化平台,然后在PVE上安装HAOS虚拟机。
安装步骤
具体的安装步骤详见官网。
在PVE里新建一个虚拟机,给它分配2个核心,2G内存就完全足够了,不需要分配硬盘。然后从官网下载.qcow2格式的镜像并上传到PVE,看一下刚创建的虚拟机的ID,然后在PVE的终端里执行以下命令:
1 | qm importdisk vmid haos_xxx.qcow2 存储池的名字 |
然后就可以在PVE的虚拟机硬件界面看到刚导入的磁盘了(应该是未使用的状态),双击添加到虚拟机,调整一下启动顺序确保刚添加的这个磁盘是第一次序,然后就可以开机了。
注意,网络环境会比较重要,HAOS首次运行时,会从ghcr上下载镜像,如果网络不够科学,会非常麻烦,所以网络一定要保证畅通,而这就不在本文的讨论范围了。
成功启动后,HAOS会从DHCP服务器自动获取一个IP地址,但最好还是指定一个固定的IP以便后续访问。在PVE里打开HAOS的控制台,执行一下这个命令来指定IP地址:
1 | net info |
然后重启下,就可以愉快地通过浏览器来访问HA了~
重要概念
- 实体(Entity):HA中表示数据或状态的基本单元,比如灯、开关、传感器、摄像头等等
- 设备(Device):设备是实体的逻辑组织,可能是一个物理设备,也可能是一个虚拟设备,比如一个智能插座,它可能包含一个开关实体、一个功率传感器实体,以及其他诊断信息等等
- 集成(Integration):集成主要用于连接HA和第三方服务或平台,集成包含一系列功能,比如状态更新、服务调用等,也可以根据需求和实际情况自动创建其他实体
- 自动化(Automation):根据条件和触发事件来执行一系列动作,自动化一般由一个事件触发,触发时会判断其他设定的条件是否满足,满足时就会执行一系列动作