1

我可以在我的本地开发机器上运行 openwhisk。我喜欢将其扩展到生产环境。有没有 openwhisk 集群的概念?我无法找到关于此的好的文档。如何实现自动负载平衡等。

4

2 回答 2

0

Openwhisk 将使用 ansible 部署 openwhisk 我按照以下方式进行分布式设置

  1. 首先确保与所有服务器的 ssh 密码连接较少
  2. git 克隆https://github.com/apache/incubator-openwhisk.git
  3. 将 remote_user 和 private_key_file 值添加到的 defaults 部分

    ansible.cfg 文件。remote_user 值设置默认的 ssh 用户。使用不在默认 ~/.ssh 文件夹中的私钥时需要 private_key_file [defaults] remote_user = ubuntu private_key_file=/path/to/file.pem

  4. 转到 tools/ubuntu-setup 运行 all.sh 以安装所有必需的软件。

  5. 现在修改您的第一个节点的清单文件(主机)。这可以成为您的引导程序 VM

  6. 检查您是否能够 ping 主机:ansible all -i environment/distributed/hosts -m ping

  7. 如果 ping 正常,运行下一个命令来生成配置文件: ansible-playbook -i environment/distributed/hosts setup.yml

  8. 安装先决条件:ansible-playbook -i environment/distributed prereq_build.yml

  9. 部署注册表:ansible-playbook -i environment/distributed registry.yml

  10. 转到 openwhisk 主页运行以下命令来构建 Openwhisk ./gradlew distDocker -PdockerHost=:4243 -PdockerRegistry=:5000

  11. 构建成功后,从ansible文件夹运行以下命令

    1. ansible-playbook -i 环境/分布式/主机 couchdb.yml ansible-playbook -i 环境/分布式/主机 initdb.yml ansible-playbook -i 环境/分布式/主机 wipe.yml ansible-playbook -i 环境/分布式/主机 openwhisk .yml ansible-playbook -i 环境/分布式/主机 postdeploy.yml
  12. 现在编辑其他主机的主机文件并重复步骤 7-8 和 12

这将在所有节点中创建设置。完成后,您可以使用节点平衡器对其进行负载平衡。使用 couchdb 连续复制在 db 实例之间进行同步

于 2017-07-05T09:52:24.267 回答
0

OpenWhisk 是通过 ansible 部署的,因此可以以直接的方式分布在多个 VM 中。

查看有关分布式部署的 README 以获取更多信息和指导。

于 2017-06-07T06:23:07.723 回答