如何使用 exrm 在集群上推送新的 Elixir 版本?
How to Push a New Elixir Release on a Cluster Using exrm?
我在一个节点上确实有一个简单的 elixir 应用程序 运行,exrm 在需要时通过 upgrading/downgrading 它正确地完成了他的工作。
我最近决定创建两个节点(它将在两台不同的机器上,但我想先在本地主机上测试它)
所以我阅读了以下 Chris McCord 文章
https://dockyard.com/blog/2016/01/28/running-elixir-and-phoenix-projects-on-a-cluster-of-nodes
我现在有两个节点,
n1@127.0.0.1
和
n2@127.0.0.1
将以下内容添加到混合配置
config :kernel,
sync_nodes_optional: [:"n1@127.0.0.1", :"n2@127.0.0.1"],
sync_nodes_timeout: 10000
我是用来做以下事情的
mix release
ssh targethost mkdir deploy/releases/x.x.x
scp rel/sequence/releases/x.x.x/appname.tar.gz targethost:deploy/releases/x.x.x
ssh targethost ~/deploy/bin/appname upgrade x.x.x
有人可以指导我如何部署 upgrade/downgrade 两个节点吗?
亲切的问候,
皮埃尔
Exrm
是打包工具,你要的是部署工具
您应该在部署期间修改 vm.args
中的节点名称。我使用 fabfile 来做这个。
我在一个节点上确实有一个简单的 elixir 应用程序 运行,exrm 在需要时通过 upgrading/downgrading 它正确地完成了他的工作。
我最近决定创建两个节点(它将在两台不同的机器上,但我想先在本地主机上测试它)
所以我阅读了以下 Chris McCord 文章
https://dockyard.com/blog/2016/01/28/running-elixir-and-phoenix-projects-on-a-cluster-of-nodes
我现在有两个节点,
n1@127.0.0.1
和
n2@127.0.0.1
将以下内容添加到混合配置
config :kernel,
sync_nodes_optional: [:"n1@127.0.0.1", :"n2@127.0.0.1"],
sync_nodes_timeout: 10000
我是用来做以下事情的
mix release
ssh targethost mkdir deploy/releases/x.x.x
scp rel/sequence/releases/x.x.x/appname.tar.gz targethost:deploy/releases/x.x.x
ssh targethost ~/deploy/bin/appname upgrade x.x.x
有人可以指导我如何部署 upgrade/downgrade 两个节点吗?
亲切的问候,
皮埃尔
Exrm
是打包工具,你要的是部署工具
您应该在部署期间修改 vm.args
中的节点名称。我使用 fabfile 来做这个。