检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
准备应用运行环境 在应用分析后,您已经了解到应用所需的操作系统、运行环境等。您需要准备好这些环境。 安装Docker:应用容器化时,需要将应用构建为容器镜像。您需要准备一台机器,并安装Docker。 获取运行环境:获取运行应用的运行环境,以及对接的MongoDB数据库。 安装Docker
分析应用 应用在容器化改造前,您需要了解自身应用的运行环境、依赖包等,并且熟悉应用的部署形态。需要了解的内容如表1。 表1 了解应用环境 类别 子类 说明 运行环境 操作系统 应用需要运行在什么操作系统上,比如centos或者Ubuntu。 本例中,应用需要运行在centos:7
编写开机运行脚本 应用容器化时,一般需要准备开机运行的脚本,写作脚本的方式和写一般shell脚本相同。该脚本的主要目的包括: 启动应用所依赖的软件。 将需要修改的配置设置为环境变量。 开机运行脚本与应用实际需求直接相关,每个应用所写的开机脚本会有所区别。请根据实际业务需求来写该脚本。
是否可以直接连接CCE集群的控制节点? CCE支持使用Kubectl工具连接集群,具体请参见通过Kubectl连接集群。 CCE不支持登录控制节点执行相关操作。 父主题: 集群运行
容器应用管理 应用场景 CCE集群支持管理X86和ARM资源,能够轻松创建Kubernetes集群、部署容器化应用,并方便地进行管理和维护。 容器化Web应用:使用CCE集群,能帮助用户快速部署Web业务应用,对接华为云中间件(如GaussDB、Redis),并支持配置高可用容灾、自动弹性伸缩、发布公网、灰度升级等。
如何确认已创建的集群是否为多控制节点模式? 登录CCE控制台,进入集群,在集群详情页面右侧查看控制节点数量: 3个节点即为多控制节点模式。 1个节点即为单控制节点模式。 集群一旦创建,便无法更改控制节点数,需要重新创建集群才能调整。 父主题: 集群运行
和部署的时间。 一致的运行环境。 容器镜像提供了完整的运行时环境,确保应用运行环境的一致性。从而不会再出现“这段代码在我机器上没问题”这类问题。 更轻松地迁移、维护和扩展。 容器确保了执行环境的一致性,使得应用迁移更加容易。同时使用的存储及镜像技术,使应用重复部分的复用更为容易,
创建工作负载时需设置CPU和内存的限制范围,提高业务的健壮性。 部署 同一个节点上部署多个应用时,当未设置资源上下限的应用出现应用异常资源泄露问题时,将会导致其它应用分配不到资源而异常,且应用监控信息会出现误差。 - 创建工作负载时可设置容器健康检查:“工作负载存活探针”和“工作负载业务探针”
创建容器工作负载 在本章节中,您将会把应用部署到CCE中。首次使用CCE时,您需要创建一个初始集群,并添加一个节点。 应用镜像上传到容器镜像服务后,部署容器应用的方式都是基本类似的。不同点在于是否需要设置环境变量,是否需要使用云存储,这些也是和业务直接相关。 使用云服务 云容器引
通过模板部署应用 在CCE控制台上,您可以上传Helm模板包,然后在控制台安装部署,并对部署的实例进行管理。 CCE从2022年9月开始,各region将逐步切换至Helm v3。模板管理不再支持Helm v2版本的模板,若您在短期内不能切换至Helm v3,可通过Helm v2
整体应用容器化改造 本教程以“整体应用容器化改造”为例,指导您将一个“部署在虚拟机上的ERP企业管理系统”进行容器化改造,部署到容器服务中。 您不需要改动任何代码和架构,仅需将整体应用构建为容器镜像,部署到云容器引擎中。 本例应用简介 本例“企业管理应用”由某企业(简称A企业)开
selector: app: test-app type: ClusterIP 部署test-app和对应Service。 kubectl apply -f test-app.yaml 创建应用sample-app和对应Service。 创建sample-app.yaml文件。
集群运行 当集群状态为“不可用”时,如何排查解决? CCE集群如何重置或重装? 如何确认已创建的集群是否为多控制节点模式? 是否可以直接连接CCE集群的控制节点? CCE集群删除之后相关数据能否再次找回? 为什么CCE集群界面的节点磁盘监控看起来不准确? 如何修改CCE集群名称?
检查项内容 集群升级完毕,由用户验证当前集群正在运行的业务是否正常。 检查步骤 业务不同,验证的方式也有所不同,建议您在升级前确认适合您业务的验证方式,并在升级前后均执行一遍。 常见的业务确认方式有: 业务界面可用 监控平台无异常告警与事件 关键应用进程无错误日志 API拨测正常等 解决方案
时,在主容器启动前执行,做初始化工作。 使用场景 部署服务时需要做一些准备工作,在运行服务的Pod中使用一个Init Container,可以执行准备工作,完成后Init Container结束退出,再启动要部署的容器。 等待其它模块Ready:比如有一个应用里面有两个容器化的服务,一个是Web
Deployment apiVersion: apps/v1 metadata: name: nginx namespace: default spec: replicas: 2 selector: matchLabels: app: nginx template:
提供实时流量拓扑、调用链等服务性能监控和运行诊断,构建全景的服务运行视图,可实时、一站式观测服务流量健康和性能状态。 建议搭配使用 弹性负载均衡ELB + 应用性能管理APM + 应用运维管理AOM 图1 微服务治理场景 父主题: 应用场景
应用模板 模板包信息 基础配置 状态信息
默认值 是否允许修改 作用范围 volumeMounts 无 无 允许 - 存活探针 参数名 取值范围 默认值 是否允许修改 作用范围 LivenessProbe 无 无 允许 - 指示容器是否正在运行。如果存活态探测失败,则 kubelet 会终止容器, 并且容器将根据其重启策略决定未来。如果容器不提供存活探针,
应用场景 容器应用管理 秒级弹性伸缩 微服务流量治理 DevOps持续交付 混合云 高性能调度