文档API 参考📓 教程🧑‍🍳 食谱🤝 集成💜 Discord🎨 Studio
文档

OpenShift

了解如何使用 OpenShift 部署运行 Haystack 管道的应用程序。

引言

Red Hat 的 OpenShift 是一个平台,有助于创建和管理构建在 Kubernetes 之上的应用程序。它可以用于构建、更新、启动和监控运行 Haystack 管道的应用程序。提供了一个 开发者沙盒,非常适合熟悉该平台并构建可以顺利迁移到生产环境的原型,使用公共云、私有网络、混合云或边缘计算。

先决条件

部署 Haystack 管道的最快方法是部署一个运行 Hayhooks 的 OpenShift 应用程序。开始之前,请确保具有以下先决条件:

  • 访问 OpenShift 项目。遵循 RedHat 的 说明 创建一个项目并立即开始实验。
  • 已安装 Hayhooks。运行pip install hayhooks 并通过运行以下命令进行验证:hayhooks --version。在我们的 文档 中了解有关 Hayhooks 的更多信息。
  • 您可以选择安装 OpenShift 命令行实用程序oc。按照适用于您平台的 安装说明 进行操作,并通过运行以下命令进行验证:oc—h.

创建 Hayhooks 应用程序

在本指南中,我们将使用oc 命令行,但您可以通过与 OpenShift 控制台提供的用户界面进行交互来实现相同的功能。

  1. 第一步是使用oc 登录到您的 OpenShift 帐户。从 OpenShift 控制台的右上角,单击您的用户名并打开菜单。点击 **复制登录命令** 并按照说明进行操作。

  2. 控制台将显示在终端中运行的确切命令。它看起来像以下内容:

    oc login --token=<your-token> --server=https://<your-server-url>:6443
    
  3. 假设您已经有一个项目(开发者沙盒就是这种情况),请创建一个运行 Docker Hub 上可用的 Hayhooks Docker 镜像的应用程序。
    请注意,您可以传递应用程序在运行时将使用的环境变量。在这种情况下,我们将禁用 Haystack 的内部遥测,并设置一个 OpenAI 密钥,该密钥将由我们最终将在 Hayhooks 中部署的管道使用。

    oc new-app deepset/hayhooks:main -e HAYSTACK_TELEMETRY_ENABLED=false -e OPENAI_API_KEY=$OPENAI_API_KEY
    
  4. 为了确保您充分利用 OpenShift 管理应用程序生命周期的能力,您可以设置一个 活跃度探针

    oc set probe deployment/hayhooks --liveness --get-url=http://:1416/status
    
  5. 最后,您可以将 Hayhooks 实例公开到公共互联网。

    oc expose service/hayhooks
    
  6. 您可以通过运行以下命令获取分配给您的应用程序的公共地址:

    oc status
    

    在输出中,查找类似以下内容的内容:

    In project <your-project-name> on server https://<your-server-url>:6443
    
    http://hayhooks-XXX.openshiftapps.com to pod port 1416-tcp (svc/hayhooks)
    
  7. http://hayhooks-XXX.openshiftapps.com 将是提供 Hayhooks 实例的公共 URL。此时,您可以通过运行以下命令来查询 Hayhooks 状态:

    hayhooks --server http://hayhooks-XXX.openshiftapps.com status
    
  8. 最后,照常部署您的管道。

    hayhooks --server http://hayhooks-XXX.openshiftapps.com deploy your_pipeline.yaml