linux怎么查看本机内存大小
305
2022-10-12
AWS EC2 总结和实验
Elastic Computing Cloud
其实本质就是个虚拟机。虚拟机的资源划分就和我们普通的服务器没啥区别。计算,存储,内存。所以AWS在提供EC2服务的时候也是这么划分的。当然因为业务的需求,现在细分了不少。英语名称为instance type:
当我们在launch一个EC2 intance的时候,需要选择一个AMI(AWS Machine Image)。我个人理解这个类似虚拟机硬盘的一个指针,(当然同时包含了实例需要的操作系统,应用程序及其相关的模板)。因为虚拟机的硬盘,内存等其实都是以文件的形式存在的。所以只要provision了一堆资源,当用户发起一个EC2,只要把预先弄好的指针指到相应的EBS 卷就可以了。
4种类型的AMI
Published by AMI 免费的 AMI Marketplace (这个是第三方发布的,例如微软会发布一个打完补丁的Windows 2016) Generated from Existing Instance 顾名思义 Uploaded Virtual Services (可以用VMWare 的ova,vmdk文件生产虚拟机,因为我们知道AWS是基于KVM开发的)
AWS默认以及建议使用密钥对(Key Pair)的形式访问EC2实例,AWS将保存public key,用户负责保存私private key。
安全组(Security Group)检测数据包的端口、协议、源IP地址,类似一个stateful Firewall的作用。记住Security Group只有allow,没有deny
弹性IP(Elastic IP address): An elastic IP address is an address unique on the Internet that you reserve independently and associate with an Amazon EC2 instance. 其实可以把它简单的理解为公网地址。这个Elastic IP有个备份功能,即这台虚拟机挂了,接上来的虚拟机能继续使用这个elastic ip,从而实现冗余。Because it can be transferred to a replacement instance in the event of an instance failure, it is a public address that can be shared externally without coupling clients to a particular instance.
在开启EC2 instance的时候,有几个feature在实际运维中也可以有所帮助。
Bootstraping:实际上就是在开机的时候刷一段脚本,可以是Linux bash,也可以是Windows Powershell VM import/export 不仅可以从AMI导入。也可以将现有的EC2导出,然后放入on-prem的环境里 Instance meta data: 会以json格式返回大量的关于此EC2 instance的attributes
EC2的计费类型On-Demand Instances 用多少付多少Reserved Instances 和AWS签一年或者三年的合同,可以获得折扣。同时买断这些运算资源Spot Instances 竞价实例,较为便宜,但同时用户得到的资源也不稳定Scheduled Reserved Instances Dedicated Instances Dedicated Hosts重点是前三种
在创建EC2的时候,需要挂载一个卷。通常卷我们会使用EBS。注意EBS,其实是区别于S3的一种存储服务,也是可以存数据的,只不过单价较贵,我们通常只会用来给EC2的实例使用。比较有趣的是,EBS是可以脱离EC2实例存在的,即你terminate一个EC2的时候,你是可以选择是否保留这个EBS卷的。这个EBS卷,只在本AZ里面生效。这里我搬运一句study 贵的上的原话:Each Amazon EBS volume is automatically replicated within its Availability Zone to protect you from component failure。
EBS备份的方式是做snapshot,这个snapshot可以保存在S3上面,并且是incremental的。如果要将EBS卷复制到不同的AZ,那就是将这个快照复制到另外一个AZ,然后根据这个snapshot生成一个卷。
EBS根据需求一般分为三类,magenetic,general purpose SSD, provisioned-IOPS-SSD。加个么,肯定最后那个最贵啦。总结一下:
备份的快照将会保存在亚马逊S3 (Simple Storage System)上 EBS快照属于ncremental backup,即只会在更新过的数据上做备份 你可以在EC2实例运行的状态下进行EBS的快照操作,但会给EC2的系统带来一定延迟(CPU,内存利用率会变高) 最佳实践是将EC2实例停止,然后将EBS从EC2上卸载下来,进行快照操作 你可以基于EBS Snapshot去创建一个新的EBS volume 加密的EBS volume创造的snapshot, 也是自动加密的
EC2/AMI/EBS/Snapshot的关系
如果想要将EC2从一个区域迁移到另外一个区域。唯一的方法就是如下:
从EC2中创建一个AMI 将此AMI复制到另一个region中,注意,虽然AMI 内容一样,但是AMI的ID是不同的 通过这个AMI创建一个EC2实例 将此EC2挂载的EBS卷,备份成snapshot 将snapshot迁移到另外一个区域(其实这是S3的操作),转换成一个EBS卷 将这个volume挂载到我们之前创建的EC2上
同一个AZ就不用那么麻烦了,直接创建一个你想要的用的EBS挂上去就行。
ELB/ALB/ASGAWS的load balancer在功能性上较为简单,只是简单的TCP,SSL。实际上就是F5的LTM的基础功能。不过在一般的生产环境中也够用了。load balancer本身也是managed service,所以不需要对太多的具体参数进行调优,也不需要考虑redundancy,打补丁等,因为本来就是分布式架构
study guide上把load balancingf和auto scaling 单独放在一章,配置界面里面可以看到实际上集成在EC2 dashboard的。
Step 1: 基础配置Internet LB vs Internal LBInternet 好理解,一般来说end user都是通过用户名访问某些资源(通常是web server,所以这里我选择了ALB,listener 开启443)Internal LB 通常是放在web server访问application server之间。我放一段学习指南的原话:An Internet-facing load balancer might receive and balance external traffic to the presentation or web tier whose Amazon EC2 instances then send its requests to a load balancer sitting in front of the application tier.
注意在基础配置里面,会让你选择AZ,可以看出AWS的load balancer就是分布式架构。
Step 3 Configuring Routing
Step 4 Registering Targets往Pool 里面添加pool member。一般这时候Auto Scaling Group就派上用场了。附上茶馆的一张图:
Auto Scaling:自动地增加/减少EC2实例的数量,从而让你的应用程序一直能保持可用的状态。
Auto Scaling Plans:(一看名字就一目了然,没啥好说的)
Manual Scaling Sceduled Scaling Dynamic Scaling
Auto Scling 的组件
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~