亚马逊云科技-使用容器快速部署服务

容器
re:Invent
0
0
##### 前言: 随着容器技术的发展,云服务器逐渐不再是我搭建服务的首选,云服务虽然可以用户的自由度高,可以自己弄多个容器,但是在操作的过程中复杂度也随之而升,为了可以尽快的部署好服务,直接购买容器就显得更省事、方便。 #### 一、何为亚马逊云科技 对于大多数的国内玩家,我想可能都不太清楚亚马逊云科技这个产品,如果不是电商或者玩云服务器玩家,基本上是很难接触到亚马逊官方网站的。但是,对于在大学喜欢捣鼓各种计算机知识的小伙伴,这里可以推荐试着入门简单的亚马逊云产品,谁让它有首年十二个月免费呢~ 那么关于亚马逊云科技我想大家可以将其比之为国内的阿里云和腾讯云,至于优缺点上面已经说到。关于亚马逊的产品大家可能也不是很熟悉,但是大家只要知道亚马逊云科技是服务于全球的云服务厂商,它的产品会比国内少吗?而且控制台给人看上去就是很清晰的那种感觉,对于中文的适配也有很大的改进。 #### 二.亚马逊云科技-黑科技“容器” 那么这里我们首先介绍一下它的黑科技——容器服务,其中最简单的是较为轻量的Amazon Lightsall :虽然是作为轻量的容器构建,但是它也有完整托管的基础设施。可以用来部署 Web 应用程序,比如电商的小伙伴经常会使用 wordpress 来搭建网站,又或者是小型网站,也可以尝试使用这种容器服务,并且我们还能学习到与容器相关的基础知识,一箭双雕。 第二种是 Amazon ECS(Amazon Elastic Container Service) ,是一种完全托管式的容器编排服务,它可以帮我们进行部署、管理和扩展容器化的应用程序。得益于它与亚马逊云科技平台的其余部分深度集成,可给我们提供安全、易于使用的解决方案,还可以在云中运行容器工作负载。我们平时自己在学校写的小型系统想要跑起来也是可以尝试的,并且经过迭代以后在面试中也是很大的加分项。 第三种是 Amazon EKS(Elastic Kubernetes Service) ,它可以和 Amazon EC2 Worker 节点创建 Kubernetes 集群,并启动托管式 Amazon EC2 Worker 节点。这种可以自己进行简单化的部署,相关的服务还是企业型的会用得多一些。 #### 三.如何选择适合自己的黑科技“容器” 上面我们对容器相关的产品进行了简单介绍,那么我们该如何选择一款更适合自己的产品呢? 首先,如果你是学生,那么小编还是建议尽量选择更节省的方式,加上对自己项目进行合理的规划和安排,来确定自己更适合那款产品。比如小编在使用时就会选择较为轻量的 Amazon Lightsall ,毕竟我的项目仅仅是个小博客。 对于使用 ECS 其实也会比较注重能否给你带来一定的收入,否则必要性也不是很大,毕竟为爱发电还是需要考虑成本的。 对于大多数的个人项目很难用到比较复杂比如上面说到的 EKS ,除非是企业级用户,会首先考虑后续的迭代以及用户量的增加,会更加在意后续的优化和管理,那么 EKS 便是最佳的选择。 #### 四.黑科技的使用体验 这里以ECS为例来大概讲解一下操作流程: 1. 首先,你得有一个亚马逊云科技的个人账户,这个使用个人邮箱注册即可。 2. 注册好后我们首先得了解 ECS 有哪些组件,便于以后我们对容器进行管理和操作,从官网可以了解到编排容器的生命周期涵盖了从部署、确保运行以及替换无法正常运行的节点到处理新部署的整个过程。 ECS集群是一种逻辑结构,我们可以将所有部署的容器分组到一个集群中,此时集群并不会产生费用,只有在运行容器的计算和其他基础设施才会产生费用。基础设施如下图; ![image.png](https://dev-media.amazoncloud.cn/ca6b9c456ff748f3b63db2c7dc1404e2_image.png "image.png") 3. 在正确的使用容器之前我们需要知道我们的服务需要多大的容量,并对其进行规划。比如我一个博客暂时给他一个小主机的容量即可,那么我便会只需要一个小主机来进行管理,以后的增量可以在以后去进行管理操作。需要注意的是,假设一个的主机的内存是 512MB ,我们是无法单独启动一个内存超过 512MB 的新容器,但是我们可以使用自动扩展程序来使多个主机形成一个集群。 4. 随后我们便可以开始部署了,首先我们需要创建 CDK 应用程序,安装命令为: npm install -g aws-cdk// 下载命令 cdk –version// 查看版本 安装完成后,我们需要选择 TypeScript 用作我们的选择语言,创建框架CDK的应用程序。 相关命令如下: mkdir cdk-ecs-infra// 新建文件夹 cd cdk-ecs-infra// 进入该文件目录 cdk init app --language typescript// 选择语言 然后我们可以看到会输出如下内容: ![image.png](https://dev-media.amazoncloud.cn/10ceecfa2cc0483abe50748666a1cc33_image.png "image.png") 在完成上述操作后,我们需要为资源堆栈创建代码,找到/lib/cdk-ecs-infra-stack.ts,然后在此文件中编写相关代码。 相关内容因为项目的不同便不在此处展示,如官方给出的代码示例如下: ![image.png](https://dev-media.amazoncloud.cn/0a9f581635804fd3a968cfb0fd1260bd_image.png "image.png") 像划线的地方这些都是需要根据自己的项目进行修改并且去完善的。 最后,我们部署的项目结束或者不再使用时,需要对其进行释放和清理,不然会对资源形成不必要的浪费。 清理ECS容器的环境也很简单,命令如下: cdk destory 当我们收到提示按y并且回车后将开始对所有的基础设施进行删除,切记平时不要随便使用这个命令,当我们看到如下页面时,便可以知道已经删除成功了。 ![image.png](https://dev-media.amazoncloud.cn/2fdd447aa8c544b0bddfa5668656b00b_image.png "image.png") 在体验完亚马逊云科技的容器服务后,相较于之前使用云服务器搭建并且部署一个环境会简单很多,并且管理起来也会更加方便。如果你有部署服务的需求,容器将会有一个非常不错的选择。最后,希望亚马逊云科技的容器服务可以更简单一些,让用户更容易上手,这将会给用户带来很棒的体验。
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭
contact-us