解决方法
当我开始从事金融行业时,我运行的系统包括消耗/按摩数据的网关系统,用于做出交易决策的计算节点,用于服务应用程序/集中日志记录的NFS服务器以及将它们绑定在一起的大量网络.我们还集中了crontab调度和
application monitoring配置,并将它们放在NFS挂载上.
这是基于NFSv3的,好处是,嗯……
>简单的应用程序分发:一个安装.一个地方做出改变.
>简单管理与这些应用程序相关的数据.
缺点:
>容易出错:一次装载.一个地方搞砸变化.
>可扩展性:除非您也在对存储进行群集,否则中央装载将对其可以有效服务的客户端数量设置上限.
>单点故障(SPOF):同样,集群存储可以减轻这种影响,但这是一个考虑因素.假设NFS,如果需要重启服务器会发生什么?如果NFS服务器丢失或不可用,群集节点是否会在启动时挂起?
>权限:如何跨群集节点管理权限.本地服务帐户?匹配UID / GID?就我而言,我使用了NIS,后来又使用了LDAP.目录服务在这里会有所帮助.
>性能:您依赖于网络和交换基础设施.应用程序加载,日志记录等等的性能在本地磁盘上比在线上更快.
>调整NFS很难,大多数人做得不好:)
目前,您可以通过配置管理系统(Puppet,Chef,Ansible,etc)部署和管理软件.或者甚至更好,使用操作系统的本机打包方法(RPM,.deb)并使用配置管理进行部署:
>这将删除SPOF.
>本地化应用程序应该具有性能优势.
>简化网络:例如如果您扩展到多个位置怎么办?
>可以提供更精细的控制:例如将二进制文件分发到系统子集,而不是整个群集.
>自我记录.
鉴于此,我可能会建议单独的应用程序副本,而不是使用共享安装.