最近一直在啃EPICS AA,非常感谢合肥光源的卢平老师和孙晓康老师提供的安装博客以及耐心解答。感觉这个软件虽然小众,但是很多设计是非常合理且精妙的,比如它的集群化部署和数据长短期存储等。很多功能虽然强大,但目前还只是知其然不知其所以然,特别希望能有大佬把整个源码搞明白然后一起交流。。
本文主要记录下集群化部署的过程,集群化部署可以实现在多台服务器上构建归档功能,不同服务器之间可以通过tcp协议共享其本地存储的sts(short term storage)mts(medium term storage)lts(long term storage),当归档请求发送到服务器后,AA会自主分配归档任务到各个服务器上(至于具体根据什么分配还没有搞明白。。)官网的原文是:
最终的配置效果:
我们看到这里的PV有的部署在appliancegrz1,有的在appliancegrz2,下面这个图看得更直观一些:
以下为具体的配置步骤:
1.跟着 EPICS Archiver Appliance在Debian11下安装文档_卡西莫多的博客-CSDN博客,或者https://github.com/jeonghanlee/epicsarchiverap-env完成epics AA的环境搭建。
2.完成后,项目的目录在/opt/epicsarchiverap/
使用gedit修改目录下的alliances.xml文件,这里我的两个测试用虚拟机的ip分别为192.168.149.128和192.168.149.130,identity为对应ip地址运行节点的名字。
然后如下图所示,编辑当前目录下的archappl.conf文件修改ARCHAPPL_MYIDENTITY为当前ip地址运行节点的名字。
这样192.168.149.128这台机器就部署好了,运行systemctl restart epicsarchiverap.service就可以重新加载配置并运行AA服务。
同样的操作在192.168.149.130机器上重复,具体配置如下图:
appliances.xml文件跟192.168.149.128上的一样,嫌重新写麻烦的话可以用scp命令拷贝过来。
同时如下图修改archappl.conf文件,将ARCHAPPL_MYIDENTITY为当前ip地址运行节点的名字,这是第二个节点,命名是appliancegrz2
同理运行systemctl restart epicsarchiverap.service重新启动服务。
这样就完成了两个节点的集群搭建,等待2-3分钟后,访问http://192.168.149.128:17665/mgmt/ui/metrics.html看一下如果显示两个appliance都在working的话代表集群搭建成功!
结语,本文简单介绍了epics AA集群的部署过程,如果想要加更多节点,在appliance.xml中增加<appliance>即可,预祝大家安装顺利,我的微信Nicolas727328404,有对控制,编程,epics感兴趣的可随时与我联系 (^_^)