华为云 CodeArts Deploy 常见问答汇总
1.【Deploy】部署 java 项目,为什么通过 springboot 启动步骤启动失败了?
答:用户所部署的 jar 包源码并不是 springboot 框架,所以无法用 springboot 启动步骤启动,该步骤并不等同于 java -jar 命令,需要使用 shell 脚本启动。
2.【Deploy】为什么更新代码并编译构建后,部署到机器里的包的版本仍然是旧的呢?
答:1.在流水线工作流配置中,构建和部署放到了同一阶段下,且阶段任务设置成了并行,这样的话,顾名思义,当阶段开始的时候,2 个任务没有先后顺序,而是同时并行开跑,构建任务包还没做完,部署任务已经开始了
2. 部署任务的步骤配置当中,在“选择部署来源”这一步,把包的版本给固定死了,这样无论如何更新代码,部署的都是某一次的固定版本。
具体可参考文档:https://bbs.huaweicloud.com/forum/thread-185905-1-1.html
3.【Deploy】部署 Linux 云主机时,主机和代理机连通性已通过,为什么部署时依然失败,报错信息:time out!超时。
答:若没有购买 NAT 网关,没有配置 SNAT 规则可能会导致此种报错。
具体可参考文档:https://bbs.huaweicloud.com/forum/thread-186209-1-1.html
Task:在迭代计划会议中,将纳入迭代的 Story 指派给具体成员,并分解成一个或多个 Task,是功能的具体实现。
4.【Deploy】部署容器到 CCE 上时,会在 deployment 失败之后,出现 svc 和 Igress 也失败,应如何解决?
答:需要用户先进行代码调试,将 deploy 正常启动,再调试 svc 和 Igress。
5.【Deploy】CodeArts 部署服务是否支持对接 CCE 配置项,升级组件时同时更新?
答:部署服务聚焦制品的持续部署,不支持新建、修改 CCE 配置项,也不会影响配置项的数据,需到 CCE 服务中操作。支持升级时更新 yaml。
6.【Deploy】Kubernetes 自定义集群部署步骤为什么无法支持 kubectl 完整命令?
答:Kubernetes 自定义集群部署步骤只能支持
kubectl create deployment my-dep --image=busybox
如上样例单参数命令。
解决方案: 使用如下样式
kubectl apply -f deploy.yaml
7.【Deploy】部署至 CCE 集群,pod 启动失败报错 require docker login,如何解决?
答:配置镜像拉取密钥 imagePullSecrets: - name: default-secret
可参考文档:https://support.huaweicloud.com/accessg-osc/zh-cn_topic_0000001584895114.html
8.【Deploy】部署阶段-停止服务步骤报错 command not found,如何解决?
答:停止步骤会调用目标主机的 netstat 命令来查看端口占用情况,目标主机未安装 netstat 导致报错;建议使用 yum install net-tools 安装。
9.【Deploy】自定义命令如何加到 springboot 启动过程中?
答:可以使用 shell 命令部署步骤来执行自定义命令。
10.【Deploy】一台主机只能部署一个服务吗?
答:不是的,我们的部署执行机可以配置在多个部署任务中,但是需要注意多个服务部署在同一台执行机上需要合理安排服务的端口号以及存放目录以免出现冲突异常。
11.【Deploy】部署服务是否支持部署任务配置参数化?比如 springboot 项目端口配置等
答:支持的。
1.springboot 项目启动的服务,我们可以通过部署服务来讲启动参数动态化,如将--server.port=8080 配置成--server.port=${port},对于 port 可以在服务部署时来配置;
2.docker 部署我们可以使用 build-arg 命令来动态化我们的 dockerfile 文件中的配置
12.【Deploy】我们如何把我们的镜像上传到镜像服务 swr 中?
答:1.直接登录华为云 swr 容器镜像服务页面上传我们的镜像
2.使用华为云构建服务 build 来生成容器镜像,然后通过上传任务系统会自动上传镜像到容器镜像服务 swr 上。
13.【Deploy】我想要把我本地的包使用我们部署服务部署到云上,我要怎么操作?
答:1.如果想通过 springboot 方式部署,那么我们可以把我们本地构建的 jar 包上传到我们的制品仓库中或者把我们的代码上传到华为云代码托管服务中,再使用构建服务进行云构建,部署服务支持我们部署构建任务的产物
2.如果想要使用 docker 方式或者 serviceStage 部署,那么需要我们先把我们的包打成镜像资源然后上传到 swr 镜像服务中,然后在部署的时候选择部署。
14.【Deploy】资源池中新申请的 linux 机器使用时报错连通性异常,需要用户从那几个方面去排查解决?
答:目前需要客户去排查的点如下有个:
1.登录到目标机器上排查目标机器是否开放端口
2.登录目标机器上检查目标机器网络是否正常
3.查看配置的 ip,用户名和密码是否正确
4.在主机管理页面对机器的连通性验证,如果验证不成功根据异常日志进行排查
15.【Deploy】Kubernetes 自定义集群部署,kubectl 命令参数 最大长度不能超过多少个字符?
答:当前项目的项目成员都可以被选择为评审专家。最多选择 10 位,仅需提供评审专家意见即可。
16.【Deploy】执行部署任务时报错{'error_msg': 'The IAM user is not authorized to access the API: op_svc user from untrusted ip', 'error_code': 'APIGW.0302', 'request_id
答: 建议根据文档:https://support.huaweicloud.com/deployman_faq/deployman_faq_10199.html 排查部署任务执行权限是否已给。
17.【Deploy】一台主机是否只能对应一个项目?
答:不是。
主机添加并验证成功后,帐户下的项目都可以查找到该主机。如果想要使用一台主机部署多个项目,那么需要配置不同的安装路径以及监听端口,防止互相覆盖。
18.【Deploy】部署时,仓库下载的文件为 root 权限,普通用户无法操作,如何解决?
答:步骤中可选择使用 sudo 执行,或在上传仓库前调整好文件权限。
19.【Deploy】部署任务执行 docker 命令步骤,报错"docker build" requires exactly 1 argument,如何解决?
答:出现此报错的根本原因基本都是 docker build 命令执行时,对输入参数进行解析的时候出现了问题。可能是命令编写出现问题,可能是命令编写逻辑异常。
解决方案: 例如:docker build –-build-arg bcd=openjdk-8-jdk-alpine -t javaweb . 检查命令,–-build-arg(-有问题),写错,修改为--build-arg 后,执行正常。
20.【Deploy】部署任务执行登录镜像仓步骤报错:dial tcp: lookup swrcn-southwest-2.myhuaweicloud.com on: no such host",如何解决?
答:当前登录的 docker 镜像仓地址配置不对,在“通用设置”-“服务扩展点管理”编辑当前登录的镜像仓信息并调整“仓库地址”字段。
评论