华为云从入门到实战 | 云容器服务

简介: 华为云从入门到实战 | 云容器服务

1、 创建命名空间


登录华为云控制台,单击界面左上角的“服务列表”按钮,单击“容器服务”列表中的“云容器实例CCI”链接,打开云容器实例控制台,如图1所示。

image.png

在图1中,以图示的形式简单列出了使用云容器服务的简单步骤。

第一步,使用容器镜像服务(SWR)创建镜像仓库,并上传容器镜像,此步为可选项。

第二步,创建命名空间,即如果存在多个团队或项目时可按照逻辑划分创建不同类型命名空间。

第三步,使用容器镜像、kubectl等方式,创建工作负载。云容器实例支持的工作负载比云容器引擎相对少一些,主要包括无状态负载(Deployment)、短时任务(Job)和定时任务(CronJob)3种。Job是用来控制批处理型任务的资源对象。批处理业务与长期伺服业务(Deployment)的主要区别是批处理业务的运行有头有尾,而长期伺服业务在用户不停止的情况下永远运行。定时任务是基于时间控制的短时任务(Job),类似于Linux系统的crontab文件中的一行,在指定的时间周期运行指定的短时任务。

第四步,查看工作负载的运行状态、监控告警,对工作负载进行升级、弹性伸缩等操作。


单击图1所示界面中的“+创建命名空间”按钮,进入命名空间配置界面,如图2所示。针对不同的资源诉求场景,可以创建不同类型的命名空间,也可以一键式创建通用计算场景下的命名空间。


在图2中,此处样例选择“通用计算型”命名空间,单击“+创建”按钮,进入图3所示的界面。在界面中填写命名空间名称,用户可以自定义设置。设置VPC,可选择使用已有VPC或新建VPC,新建VPC需要填写VPC网段,建议使用网段10.0.0.0/8~22,172.16.0.0/12~22,192.168.0.0/16~22。在创建命名空间时,高级设置部分保持默认即可。最后单击图3所示界面右下角的“创建”按钮,完成命名空间的创建。

image.png

image.png


2、创建MySQL负载


登录CCI管理控制台,在左侧导航栏中的“工作负载”菜单项中选择“无状态(Deployment)”菜单,单击右侧界面的“创建负载”按钮,弹出如图4所示的“创建无状态负载”界面。

image.png

在图4所示的界面中配置和添加如下基本信息。

(1) 定义负载名称。由用户自定义。此处样例为mysql。

(2) 选择命名空间。选择之前创建的命名空间。此处选择为cci-namespace-wordpress。

(3) 选择Pod数量。一般实际业务部署推荐采用HA部署,即至少要有两个Pod。本文中修改Pod数量为1。

(4) 选择Pod规格。根据业务需要选择即可,此处样例选择“通用计算型”,CPU 0.5核,内存1GB。

(5) 容器配置。首先选择镜像,单击“开源镜像中心”标签,然后在标签右上角的搜索输入框内输入mysql,就会搜索出MySQL的容器镜像,如图5所示。

在图5所示中,单击“使用该镜像”按钮,弹出如图6-14所示界面。在该界面中的“镜像版本”选项的下列列表中选择镜像版本号为5.7,并为容器自定义一个名字,此处为container-mysql,然后单击“高级设置”标签,在打开的标签中单击“手动输入”环境变量,在“变量名称”处输入MYSQL_ROOT_PASSWORD,在“变量值”输入框中输入用户自定义的数据库root用户的密码,此处样例输入123456。

(6) 配置容器访问设置。在图6所示界面的右下角单击“下一步:访问设置”按钮,进入图7所示界面。在该界面中,选择“访问方式”为Service。负载访问的“协议”选择为TCP,“负载访问端口”和“容器端口”均设置为3306。

image.png

image.png

image.png

在图7所示界面中,单击“下一步:高级设置”按钮,进入如图8所示高级设置界面,选择容器的“升级策略”为“滚动升级”,“最大无效实例数”为1(每次滚动升级允许的最大无效实例数,如果等于实例数,就会有中断业务服务风险(最小存活实例数=实例数-最大无效实例数))。然后,确认容器规格无误后,单击“提交”按钮即可创建工作负载。到此为止,运行MySQL数据库的容器工作负载即创建完成。

image.png


3、创建WordPress负载


参照创建MySQL负载的过程,继续创建WordPress负载。此处所创建的WordPress工作负载仍然是一个“无状态”(Deployment)。创建工作负载的配置界面如图9所示。

(1) 负载名称:用户自定义名称。此处样例为wordpress。

(2) 命名空间:选择之前创建的命名空间。

(3) Pod数量:本文中修改Pod数量为2。

(4) Pod规格:选择“通用计算型”“CPU 0.5核”“内存1GB”选项。

image.png

(5) 容器配置。在开源镜像中心搜索wordpress,选择wordpress镜像,如图10所示。配置镜像参数,镜像版本设置为php7.1,CPU和内存(GB)分别设置为0.50和1.000,如图11所示。

image.png

image.png

(6) 容器高级配置。在高级配置中,设置环境变量,使WordPress可以访问MySQL数据库,如图12所示,环境变量的取值说明如表1所示。

(7) 配置负载访问信息。“负载访问”选择“公网访问”,“服务名称”为wordpress,选择ELB实例(如果没有实例,下拉列表中将出现“新建增强型ELB实例”选项,此时应选择并创建一个ELB),选择ELB为HTTP/HTTPS,ELB端口号为3562,指定负载访问的8088

image.png

image.png

端口映射到容器的80端口(WordPress镜像的默认访问端口),HTTP路由映射路径设置为“/”,即通过http://elb ip:外部端口,就可以访问WordPress应用,设置路由映射到8088负载端口。配置如图13所示。

image.png

配置完成后,单击“下一步”按钮,确认规格后,单击“提交”按钮,即可创建WordPress负载。在负载列表中,待负载状态为“运行中”时表明负载创建成功。


4、访问WordPress应用


在工作负载列表界面,单击刚刚创建的WordPress负载,进入负载详情界面,在“访问配置”处选择“公网访问”标签,查看公网访问地址,即ELB实例的“IP地址:端口”,如图14所示。

image.png


在客户端本地的浏览器中输入ELB的公网访问地址,即可打开如图15所示的WordPress安装界面,此时说明基于容器实例部署成功。

image.png



相关实践学习
使用ACS算力快速搭建生成式会话应用
阿里云容器计算服务 ACS(Container Compute Service)以Kubernetes为使用界面,采用Serverless形态提供弹性的算力资源,使您轻松高效运行容器应用。本文将指导您如何通过ACS控制台及ACS集群证书在ACS集群中快速部署并公开一个容器化生成式AI会话应用,并监控应用的运行情况。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
4月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
4月前
|
XML Java 测试技术
《深入理解Spring》:IoC容器核心原理与实战
Spring IoC通过控制反转与依赖注入实现对象间的解耦,由容器统一管理Bean的生命周期与依赖关系。支持XML、注解和Java配置三种方式,结合作用域、条件化配置与循环依赖处理等机制,提升应用的可维护性与可测试性,是现代Java开发的核心基石。
|
7月前
|
缓存 监控 前端开发
告别卡顿!3大前端性能优化魔法 + CSS容器查询实战
告别卡顿!3大前端性能优化魔法 + CSS容器查询实战
281 95
|
8月前
|
运维 监控 数据可视化
容器化部署革命:Docker实战指南
容器化部署革命:Docker实战指南
|
4月前
|
XML Java 应用服务中间件
【SpringBoot(一)】Spring的认知、容器功能讲解与自动装配原理的入门,带你熟悉Springboot中基本的注解使用
SpringBoot专栏开篇第一章,讲述认识SpringBoot、Bean容器功能的讲解、自动装配原理的入门,还有其他常用的Springboot注解!如果想要了解SpringBoot,那么就进来看看吧!
534 2
|
10月前
|
Ubuntu Linux Docker
Docker容器的实战讲解
这只是Docker的冰山一角,但是我希望这个简单的例子能帮助你理解Docker的基本概念和使用方法。Docker是一个强大的工具,它可以帮助你更有效地开发、部署和运行应用。
234 27
|
12月前
|
存储 SQL 索引
Python入门:7.Pythond的内置容器
Python 提供了强大的内置容器(container)类型,用于存储和操作数据。容器是 Python 数据结构的核心部分,理解它们对于写出高效、可读的代码至关重要。在这篇博客中,我们将详细介绍 Python 的五种主要内置容器:字符串(str)、列表(list)、元组(tuple)、字典(dict)和集合(set)。
Python入门:7.Pythond的内置容器
|
12月前
|
存储 缓存 C++
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
C++ 标准模板库(STL)提供了一组功能强大的容器类,用于存储和操作数据集合。不同的容器具有独特的特性和应用场景,因此选择合适的容器对于程序的性能和代码的可读性至关重要。对于刚接触 C++ 的开发者来说,了解这些容器的基础知识以及它们的特点是迈向高效编程的重要一步。本文将详细介绍 C++ 常用的容器,包括序列容器(`std::vector`、`std::array`、`std::list`、`std::deque`)、关联容器(`std::set`、`std::map`)和无序容器(`std::unordered_set`、`std::unordered_map`),全面解析它们的特点、用法
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
|
12月前
|
人工智能 安全 API
容器化AI模型的安全防护实战:代码示例与最佳实践
本文基于前文探讨的容器化AI模型安全威胁,通过代码示例展示如何在实际项目中实现多层次的安全防护措施。以一个基于TensorFlow的图像分类模型为例,介绍了输入验证、模型加密、API认证和日志记录的具体实现方法,并结合最佳实践,如使用安全容器镜像、限制权限、网络隔离等,帮助构建更安全的AI服务。

相关产品

  • 容器服务Kubernetes版