×

使用Kubernetes部署OSToy应用程序

您可以通过创建和存储前端和后端微服务容器的镜像到镜像仓库来部署OSToy应用程序。然后,您可以创建Kubernetes部署来部署应用程序。

获取登录命令

  1. 如果您未登录到CLI,请使用Web控制台访问您的集群。

  2. 单击右上角登录名旁边的下拉箭头,然后选择**复制登录命令**。

    CLI login screen

    将打开一个新标签页。

  3. 选择您的身份验证方法。

  4. 单击**显示令牌**。

  5. 复制**使用此令牌登录**下的命令。

  6. 在您的终端中,粘贴并运行复制的命令。如果登录成功,您将看到以下确认消息。

    $ oc login --token=<your_token> --server=https://api.osd4-demo.abc1.p1.openshiftapps.com:6443
    Logged into "https://api.myrosacluster.abcd.p1.openshiftapps.com:6443" as "rosa-user" using the token provided.
    
    You don't have any projects. You can try to create a new project, by running
    
    oc new-project <project name>

创建新项目

使用CLI

  1. 通过运行以下命令在您的集群中创建一个名为ostoy的新项目

    $ oc new-project ostoy
    示例输出
    Now using project "ostoy" on server "https://api.myrosacluster.abcd.p1.openshiftapps.com:6443".
  2. 可选:或者,通过运行以下命令创建一个唯一的项目名称

    $ oc new-project ostoy-$(uuidgen | cut -d - -f 2 | tr '[:upper:]' '[:lower:]')

使用Web控制台

  1. 在Web控制台中,单击**主页→项目**。

  2. 在**项目**页面上,单击创建**创建项目**。

    The project creation screen

部署后端微服务

微服务处理内部Web请求并返回一个包含当前主机名和随机生成的字符串的JSON对象。

  • 通过从您的终端运行以下命令来部署微服务

    $ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml
    示例输出
    $ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml
    deployment.apps/ostoy-microservice created
    service/ostoy-microservice-svc created

部署前端服务

前端部署使用应用程序的Node.js前端和附加的Kubernetes对象。

ostoy-frontend-deployment.yaml文件显示前端部署定义了以下功能:

  • 持久卷声明

  • 部署对象

  • 服务

  • 路由

  • Configmaps

  • Secrets

    • 通过输入以下命令来部署应用程序前端并创建所有对象

      $ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-frontend-deployment.yaml
      示例输出
      persistentvolumeclaim/ostoy-pvc created
      deployment.apps/ostoy-frontend created
      service/ostoy-frontend-svc created
      route.route.openshift.io/ostoy-route created
      configmap/ostoy-configmap-env created
      secret/ostoy-secret-env created
      configmap/ostoy-configmap-files created
      secret/ostoy-secret created

      您应该看到所有对象已成功创建。

获取路由

您必须获取路由才能访问应用程序。

  • 通过运行以下命令获取应用程序的路由

    $ oc get route
    示例输出
    NAME          HOST/PORT                                                 PATH   SERVICES             PORT    TERMINATION   WILDCARD
    ostoy-route   ostoy-route-ostoy.apps.<your-rosa-cluster>.abcd.p1.openshiftapps.com          ostoy-frontend-svc   <all>                 None

查看应用程序

  1. 复制上一步输出的ostoy-route-ostoy.apps.<your-rosa-cluster>.abcd.p1.openshiftapps.com URL。

  2. 将复制的URL粘贴到您的Web浏览器中并按Enter键。您应该会看到应用程序的主页。如果页面没有加载,请确保您使用的是http而不是https

    OStoy application homepage