跳到主要内容

部署私有应用市场

部署的应用市场基于Devtron的应用管理能力。本次部署对原始的Devtron进行了优化,使其更加适合私有部署。

前置条件

本教程假定您已经具备以下条件:

快速开始

部署脚本准备

请下载脚本文件压缩包,并解压到本地目录。

开始部署

进入解压后的目录,执行以下命令:

helm install devtron . --create-namespace -n devtroncd --values resources.yaml

部署需要一段时间,耐心等待,直到看到以下输出:

    请等待大概1分钟左右在执行以下命令。

1. 获取网页地址:
kubectl describe serviceexporter devtron-itf -n devtroncd

在其中的Status.Conditions.Message中,可以找到网页地址。如:
IngressRoute successfully updated, url: https://devtron-service-x-devtroncd-x-***********.sproxy.hd-01.alayanew.com
访问地址为:https://devtron-service-x-devtroncd-x-***********.sproxy.hd-01.alayanew.com:22443

2. 获取管理员密码:

kubectl -n devtroncd get secret devtron-secret -o jsonpath='{.data.ADMIN_PASSWORD}' | base64 -d

输出的密码即为管理员密码。
如果在Windows CMD下运行,使用如下命令:
kubectl -n devtroncd get secret devtron-secret -o jsonpath='{.data.ADMIN_PASSWORD}'
输出的结果需要进行base64解码。

在看见上面的输出信息后,还需要等待1~2分钟。可以使用以下命令查看部署状态。

kubectl get pods -n devtroncd

当看到以下输出时(其中所有Pod的状态都为Running或者Completed),说明部署成功:

    app-sync-cronjob-28982580-vjswx          0/1     Completed   0          8h
app-sync-job-2wrxh-htxqw 0/1 Completed 0 17h
argocd-dex-server-b5898578f-nkv8l 1/1 Running 0 17h
dashboard-74f7bbfc6b-cpjwl 1/1 Running 0 17h
devtron-c74fb55f-k89z7 1/1 Running 0 17h
kubelink-84964b7974-p5c7r 1/1 Running 0 17h
postgresql-migrate-casbin-xj0lo-8x8ln 0/1 Completed 0 17h
postgresql-migrate-devtron-24vpd-zzhv7 0/1 Completed 2 17h
postgresql-postgresql-0 2/2 Running 0 17h

开始使用

1.访问系统

在上一步的输出信息中,给出了获取访问地址url的方式以及管理员密码(管理员账号为admin)。

根据系统访问url以及密码,登录系统。第一次登录时会出现下面的页面,请图示红框选项(部署和管理)。 getting-started

系统将进入应用市场页面,其中可以看到如下界面: app-store

2.部署应用

选择感兴趣的应用,点击卡片,可以进入应用详情,其中的README文件中有详细的应用说明,如下图所示: details

点击”配置&部署“按钮,可以进入配置和部署页面,如下图所示: deploy

其中的一些参数需要填写,如:

  • 应用名称:应用的名称,遵循helm release name规范。
    • 只能包含小写字母 (a-z)、数字 (0-9)、以及 -(短横线)。
    • 推荐不超过 53 个字符。
    • 在同一个命名空间下,应用名称必须唯一。
  • 部署环境:应用部署在哪个集群,以及在哪个名字空间下。在下拉列表中列出了目前所有的环境,这些环境是Devtron自动创建的,其名字由集群名称和名字空间名称组合而成。比如default_cluster__test。
    • 集群名称:对于当前所在的vks集群,集群名称为default_cluster。
    • 名字空间:集群名称和名字空间以__分隔,前面的例子中名字空间为test。注意:如果需要创建新的名字空间,请预先在集群中创建好,比如使用kubectl命令行工具创建:kubectl create ns new-ns

另外,对于values.yaml文件,可以根据应用的要求进行填写。

点击”部署Chart“按钮,Devtron将根据填写的参数,部署应用。

3.查看应用部署状态

app_info 如上图所示,部署成功后,“部署应用状态”将显示为”Deployed“。但是这时候容器可能还没有启动,“应用状态”显示为“Processing”,需要等待一段时间。

如下图所示,当“应用状态”显示为”Healthy“时,说明容器已经启动,应用可以正常访问。 通常应用的启动信息会在Notes.txt中给出,可以点击图中的“Notes.txt”按钮查看。 另外,可以通过logs按钮查看应用的日志。

app_info

总结

至此,恭喜您,您已经成功部署了一个私有应用市场。您可以在应用市场中找到自己感兴趣的应用,并部署到自己的集群中。同时,也可以通过Devtron的管理功能对应用进行管理。