为了账号安全,请及时绑定邮箱和手机立即绑定

去安装图表,检查应用程序是否已启动并运行

去安装图表,检查应用程序是否已启动并运行

Go
天涯尽头无女友 2022-08-15 15:51:18
我有以下代码,我能够在目标集群中创建一个头盔图。当你安装一些图表直到应用程序(在图表内)可用时,需要时间,如何检查通过helm图表安装的应用程序是否启动并运行?有没有办法用舵手客户端做到这一点(我们使用的是舵机3.5.2)tmpfile, err := ioutil.TempFile(kp, kcp)if err != nil {    log.Error(err, "error")}defer os.Remove(tmpfile.Name()) if _, err := tmpfile.Write(cfg); err != nil {    return err}if err := tmpfile.Close(); err != nil {    return err}kcfgFilePath := tmpfile.Name()settings := cli.New()ac := new(action.Configuration)clientGetter := genericclioptions.NewConfigFlags(false)clientGetter.KubeConfig = &kcfgFilePathfor _, chartInstallation := range charts {    chart, err := loader.Load(chartInstallation.Path)    if err != nil {        return err    }    releaseName := releaseName + "-" + chartInstallation.Name    if err := ac.Init(clientGetter, settings.Namespace(), os.Getenv("HELM_DRIVER"), func(format string, v ...interface{}) {            }); err != nil {        return err    }    releasePresent := true    statusAction := action.NewStatus(ac)    status, err := statusAction.Run(releaseName)    if err != nil {        if strings.Contains(err.Error(), driver.ErrReleaseNotFound.Error()) {            releasePresent = false        } else {            return err        }    }    if !releasePresent {        // install chart        installAction := action.NewInstall(ac)        installAction.CreateNamespace = true        installAction.Namespace = chartInstallation.Namespace        installAction.ReleaseName = releaseName        _, err := installAction.Run(chart, nil)        if err != nil {            return err        }        log.Info(“chart installed: ", "releaseName", releaseName)    }
查看完整描述

1 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

您需要 (或 ) 使用 --wait 标志helm installupgrade

--wait:等到所有 Pod 都处于就绪状态、PVC 已绑定、部署具有处于就绪状态的最小(所需减号)Pod 和服务具有 IP 地址(如果是 LoadBalancer,则为 Ingress),然后再将发布标记为成功。它将等待一直到 [...]maxUnavailable--timeout

确保您的窗格具有活动性和就绪性检查。只有在这些检查通过后,使用该版本才会成功返回。--wait


查看完整回答
反对 回复 2022-08-15
  • 1 回答
  • 0 关注
  • 94 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号