开发者社区 问答 正文

在edas上成功创建k8s应用,但是没有运行怎么办

在edas上成功创建k8s应用,但是没有运行怎么办

展开
收起
游客2ok3rhw244nue 2019-10-28 17:25:05 574 分享 版权
阿里云 AI 助理回答

在EDAS上成功创建K8s应用但未运行时,可能是由于配置问题或资源限制导致的。以下是详细的排查和解决步骤:


1. 检查Pod运行状态

  • 登录EDAS控制台,进入应用管理 > 应用列表页面。
  • 找到目标应用,单击应用名称进入应用总览页面。
  • 查看实例Pod的运行状态。如果状态为未运行异常,需要进一步排查原因。

2. 查看事件日志

  • 应用总览页面,单击Pod的运行状态,跳转至工作负载(Deployment)或容器组(Pod)详情页。
  • 检查Pod的事件日志,查看是否有错误信息。常见问题包括:
    • 镜像拉取失败:确认镜像地址是否正确,以及是否具有访问权限。
    • 资源不足:确认集群中是否有足够的CPU和内存资源。
    • 探针配置错误:检查livenessProbereadinessProbe配置是否合理。

3. 验证资源配置

  • 确认应用的资源配置是否符合要求:
    • CPU和内存:EDAS当前仅支持解析CPU和内存资源限制,确保配置值合理且不超过集群可用资源。
    • 端口配置:EDAS不支持直接配置container.ports,需通过控制台完成相关设置。
    • 存储挂载:如果使用了存储卷,需通过EDAS控制台配置本地存储。

4. 重新部署应用

  • 如果Pod未能正常启动,尝试重新部署应用以解决问题:
    1. 在EDAS控制台的应用总览页面,单击重新部署
    2. 或者通过命令行添加以下注解并重新部署:
      kubectl annotate deployments/<deployment-name> edas.alibabacloud.com/immediate-rollout=true
      
    3. 部署完成后,再次检查Pod运行状态。

5. 检查微服务空间和网络配置

  • 确认应用是否已正确分配到目标微服务空间:
    • 如果未指定微服务空间,默认使用导入集群所在的微服务空间。
    • 可通过以下命令手动指定微服务空间:
      annotations:
       edas.alibabacloud.com/namespace: <namespace-id>
      
  • 检查网络配置,确保Pod能够正常访问外部依赖(如数据库、消息队列等)。

6. 启用监控和诊断工具

  • EDAS默认集成了ARMS监控组件和Prometheus监控组件,可通过以下方式启用监控:
    1. 应用总览页面,单击监控 > 实例监控,查看ARMS监控信息。
    2. 如果监控功能未启用,可能需要重新部署应用以加载监控Agent。

7. 联系技术支持

  • 如果以上步骤仍无法解决问题,建议联系阿里云技术支持,提供以下信息以便快速定位问题:
    • 应用名称、Pod名称及运行状态。
    • Pod事件日志和错误信息。
    • 集群资源使用情况(CPU、内存等)。

通过以上步骤,您可以系统性地排查和解决EDAS上K8s应用未运行的问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答