您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 亚马逊AWS 深入浅出AWS基础架构运维自动化_肖凌
深入浅出AWS基础架构运维自动化深入浅出AWS基础架构运维自动化肖凌–AWS解决方案架构师肖凌–AWS解决方案架构师我需要架构运维自动化吗?•需求1–请在这个礼拜五之前帮我准备一套Rail网站开发环境!•需求2–请在明天下班之前把所有的CentOS打上HeartBleed安全补丁!•需求3–请在周三下午一起讨论怎么搭建新的一套测试环境供电商开发组使用!•需求4–我怎么管理数以百计的计算和存储资源?•……………•需求N这是要上演上个世纪的悲剧吗?AWS云的时代-基础架构软件化即InfrastructureAsaCode基础架构软件化架构优化高效部署管理统一系统安全用软件方式定义与运行基础架构应用程序SourcecodeInterpreterDesiredapplicationstate基础架构JSONAWSServiceAPIDesiredinfrastructurestate用软件方式定义与运行基础架构应用程序源代码InterpreterDesiredapplicationstate基础架构JSONAWSServiceAPIDesiredinfrastructurestate用软件方式定义与运行基础架构应用程序源代码编译器Desiredapplicationstate基础架构JSONAWSServiceAPIDesiredinfrastructurestate用软件方式定义与运行基础架构应用程序源代码编译器运行的应用程序基础架构JSONAWSServiceAPI运行的基础架构AWS架构运维利器CloudFormation•用JSON模板的方式部署你的架构和应用程序•根据脚本定义,自动化快速的做到架构复制(跨区域),修改以及软件版本控制。•所有的AWS资源可以在模板中方便定义,自动生成。•与CI/CD集成,做到DevOps。快速上手CloudFormation模板参数策略堆栈模板CloudFormation堆栈JSON格式文件参数定义资源创建动态配置堆栈生成AWS所有服务支持区域定义定制化CloudFormation生成过程堆栈生成堆栈更新错误发现与自动回滚实例1-使用模板生成EC2实例{Description:CreateanEC2instancerunningthelatestAmazonLinuxAMI.,Parameters:{KeyPair:{Description:TheEC2KeyPairtoallowSSHaccesstotheinstance,Type:String}},Resources:{Ec2Instance:{Properties:{ImageId:ami-9d23aeea,InstanceType:m3.medium,KeyName:{Ref:KeyPair}},Type:AWS::EC2::Instance}},Outputs:{InstanceId:{Description:TheInstanceIdofthenewlycreatedEC2instance,Value:{Ref:Ec2Instance}}},AWSTemplateFormatVersion:2010-09-09}参数输入资源定义输出可视化设计–CloudFormationDesigner•可视化模板资源•即托即用式IDE编辑•定制化模板演示1–利用CloudFormation自动化部署WordPress网站实例2–使用模板构建订餐系统securitygroupAutoScalinggroupEC2instanceElasticLoadBalancing客户信息服务餐品分类服务推荐服务Softwarepkgs,config,&dataCloudWatchalarmsRDS创建模板-资源securitygroupAutoScalinggroupEC2instanceElasticLoadBalancingSoftwarepkgs,config,&dataCloudWatchalarmsResources:{SecurityGroup:{},WebServerGroup:{Type:AWS::AutoScaling::AutoScalingGroup,Properties:{MinSize:1,MaxSize:3,LoadBalancerNames:[{Ref:LoadBalancer}],...}},LoadBalancer:{},CacheCluster:{},Alarm:{}},RDS创建模板-参数输入AutoScalinggroupEC2instance推荐服务餐品分类客户信息服务参数输入在创建堆栈时输入Parameters:{CustomerDBServiceEndPoint:{Description:URLoftheCustomerDBService,Type:String},CustomerDBServiceKey:{Description:APIkeyfortheCustomerDBService,Type:String,NoEcho:true},InstanceType:{Description:WebServerEC2instancetype,Type:String,Default:m3.medium,AllowedValues:[m3.medium,m3.large,m3.xlarge],ConstraintDescription:Mustbeavalidinstancetype创建模板-输出ElasticLoadBalancingResources:{LoadBalancer:{},...},Outputs:{WebsiteDNSName:{Description:TheDNSnameofthewebsite,Value:{Fn::GetAtt:[LoadBalancer,DNSName]}}}创建模板–部署和配置软件AutoScalinggroupEC2instanceSoftwarepkgs,config,&dataAWS::CloudFormation::Init:{webapp-config:{packages:{},sources:{},files:{},groups:{},users:{},commands:{},services:{}},chef-config:{}}声明可调试可更新安全BIOT™(BringInOtherTools)通过AWSAPI接口自动化生成堆栈awscloudformationcreate-stack--stack-nameec2InstanceCmdLineDemo--template-url=KeyPair,ParameterValue=ManagementKeyPaircancel-update-stackget-stack-policycreate-stackget-templatedelete-stacklist-stack-resourcesdescribe-stack-eventslist-stacksdescribe-stack-resourceset-stack-policydescribe-stack-resourcesupdate-stackdescribe-stacksvalidate-template$awscloudformationupdate-stackhelpAWSCloudFormationCLI命令更新堆栈快速成本优化更加简单的状态和数据迁移需要切换但对生产运行时没有影响使用RollingUpdate实现在线升级securitygroupAutoScalinggroupEC2instanceElasticLoadBalancingElastiCacheMemcachedclusterSoftwarepkgs,config,&dataCloudWatchalarmsWebAnalyticsServiceAWSCloudFormationProvisionAWSResources“Create,Update,Rollback,orDelete”让CloudFormation和AWS平台服务无缝整合WorkerAmazonSNSTopicStackEvents利用Lambda做动态定制化配置操作securitygroupAutoScalinggroupEC2instanceElasticLoadBalancingSoftwarepkgs,config,&dataCloudWatchalarmsCloudFormation堆栈//Implementcustomlogichere查找AMIIDLambda函数查找VPCID和子网ID预留IP资源Lambda-poweredcustomresourcesElastiCache基础架构生成EC2SQS,SNS,Kinesis,etc.databasesVPCIAM应用部署下载,安装软件配置应用程序升级重启CloudFormation•模板化•复制•自动化OpsWorks•应用程序生存周期管理•交互式应用程序管理使用CloudFormation和OpsWorks做集成化应用架构部署在CI/CD中利用CloudFormation自动化DevOpsAWSCloudFormation问题单应用开发DevOps工程师,架构开发工程师,系统工程师开发环境代码环境应用程序包,CloudFormation脚本等。CI服务器开发测试环境预生产环境生产环境codecommit/pipeline/deploy&review“infrastructure-as-code应用程序与模板代码对了,CloudFormation功能是免费的哦!•CloudFormation功能本身是免费的!•用户只需要对生成的资源付费AWS架构运维利器大盘点•OpsWorks•CodeCommit/CodePipeline/CodeDeploy•Boto–AWSPythonSDK•丰富的集成工具和SDK参考文档:•AWSCloudFormation官方文档:•AWSOpsWorks官方文档:=h_ls•BotoAWSPython开发工具:
本文标题:亚马逊AWS 深入浅出AWS基础架构运维自动化_肖凌
链接地址:https://www.777doc.com/doc-6165100 .html