




免费预览已结束,剩余50页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
inside windows azure: the cloud operating system,mark russinovich technical fellow windows azure,cos301,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,what is a “cloud”?,cloud: on-demand, scalable, multi-tenant, self-service compute resources,cloud fundamentals,infrastructure as a service (iaas): basic compute and storage resources on-demand servers amazon ec2, vmware vcloud platform as a service (paas): cloud application infrastructure on-demand application-hosting environment e.g. google appengine, s, windows azure software as a service (saas): cloud applications on-demand applications e.g. office 365, gmail, microsoft office web companions,cloud: efficiency versus control,windows azure,efficiency,control,windows azure,windows azure is an os for the data center model: treat the data center as a machine handles resource management, provisioning, and monitoring manages application lifecycle allows developers to concentrate on business logic provides shared pool of compute, disk and network virtualized storage, compute and network illusion of boundless resources provides common building blocks for distributed applications reliable queuing, simple structured storage, sql storage application services like access control and connectivity,windows azure application philosophy: design for failure,scale out for capacity scale out for redundancy short time outs with retries idempotent operations stateless with durable external storage,windows azure application characteristics,windows azure application characteristics,windows azure,windows azure platform building blocks,windows azure compute windows azure storage blobs tables queues windows azure cdn sql azure appfabric paas middleware services appfabric caching appfabric service bus appfabric access control server,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,modeling cloud applications,a cloud application is typically made up of different components front end: e.g. load-balanced stateless web servers middle worker tier: e.g. order processing, encoding backend storage: e.g. sql tables or files multiple instances of each for scalability and availability,front-end,marks cloud application,front-end,http/https,windows azure storage, sql azure,load balancer,middle-tier,the windows azure service model,a windows azure application is called a “service” definition information configuration information at least one “role” roles are like dlls in the service “process” collection of code with an entry point that runs in its own virtual machine windows azure compute sla requires two instances of each role 99.95% for connectivity to two instances achieved with update and fault domains,availability: update domains,purpose: ensure service stays up while updating and windows azure os updates system considers update domains when upgrading a service 1/update domains = percent of service that will be offline default and max is 5, but you can override with upgradedomaincount service definition property the windows azure sla is based on at least two update domains and two role instances in each role,front-end-1,front-end-2,update domain 1,update domain 2,middle tier-1,middle tier-2,middle tier-3,update domain 3,middle tier-3,front-end-2,front-end-1,middle tier-2,middle tier-1,availability: fault domains,purpose: avoid single points of failures similar concept to update domains but you dont control the updates unit of failure based on data center topology e.g. top-of-rack switch on a rack of machines windows azure considers fault domains when allocating service roles 2 fault domains per service will try and spread roles out across more e.g. dont put all roles in same rack,front-end-1,fault domain 1,fault domain 2,front-end-2,middle tier-2,middle tier-1,fault domain 3,middle tier-3,role contents,definition: role name role type vm size (e.g. small, medium, etc.) network endpoints code: web/worker role: hosted dll and other executables vm role: vhd configuration: number of instances number of update and fault domains,role types,there are currently three role types: web role: iis7 and asp.net in windows azure-supplied os worker role: arbitrary code in windows azure-supplied os vm role: uploaded vhd with customer-supplied os vm role: is it a vm? no, because it is stateless good for: long install (5+ minutes) manual install/config fragile install/config,service model files,service definition is in servicedefinition.csdef service configuration is in serviceconfiguration.cscfg cspack program zips service binaries and definition into service package file (service.cscfg),rdfe service,portal service,us-north central datacenter,deploying a service to the cloud: the 10,000 foot view,service package uploaded to portal windows azure portal service passes service package to “red dog front end” (rdfe) azure service rdfe converts service package to native “rd” version rdfe sends service to fabric controller (fc) based on target region fc stores image in repository and deploys and activates service,fc,service,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,the fabric controller (fc),the “kernel” of the cloud operating system manages datacenter hardware manages windows azure services four main responsibilities: datacenter resource allocation datacenter resource provisioning service lifecycle management service health management inputs: description of the hardware and network resources it will control service model and binaries for cloud applications,sidebar: whats with all these “fabrics”?,the windows azure fabric controller is totally, completely, unrelated to appfabric appfabric is a brand that encompasses: windows server appfabric: a set of components for building composite applications based on windows communication foundation and windows workflow windows azure appfabric: cloud services for connecting cloud and on-premise applications appfabric access control server appfabric service bus appfabric cache built as windows azure services,datacenter architecture,tor,lb,lb,agg,pdu,lb,lb,agg,lb,lb,agg,lb,lb,agg,lb,lb,agg,lb,lb,agg,racks,datacenter routers,aggregation routers and load balancers,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,tor,pdu,top of rack switches,power distribution units,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,nodes,windows azure datacenters,high-level fc architecture,fc is a distributed, stateful application running on nodes (blades) spread across fault domains installed by “utility” fabric controller one acts as the primary and all others keep view of world in sync supports rolling upgrade, and services continue to run even if fc fails entirely,nodes,rack,provisioning a node,power on node pxe-boot maintenance os agent formats disk and downloads host os host os boots, runs sysprep /specialize, reboots fc connects with the “host agent”,fabric controller,role images,role images,role images,role images,image repository,maintenance os,parent os,node,pxe server,maintenance os,windows azure os,inside a node,fabric controller (primary),fc host agent (trusted),host partition,guest partition,guest agent,guest partition,guest agent,guest partition,guest agent,guest partition,guest agent,physical node,fabric controller (replica),fabric controller (replica),role instance,role instance,role instance,role instance,trust boundary,27,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,service deployment steps,process service model files determine resource requirements create role images allocate compute and network resources prepare nodes place role images on nodes create virtual machines start virtual machines and roles configure networking dynamic ip addresses (dips) assigned to blades virtual ip addresses (vips) + ports allocated and mapped to sets of dips programs load balancers to allow traffic,service resource allocation,goal: allocate service components to available resources while satisfying all hard constraints hw requirements: cpu, memory, storage, net fault domains secondary goal: satisfy soft constraints prefer allocations which will simplify servicing the host os/hypervisor: pick nodes that already have instances from the same update domain optimize network proximity: pack nodes service allocation produces the goal state for the resources assigned to the service components node and vm configuration (os, hosting environment) images and configuration files to deploy processes to start service allocation also allocates network resources such as lb and vips,example service allocation,role b count: 2 update domains: 2 fault domains: 2 size: medium,role a count: 3 update domains: 2 fault domains: 2 size: large,fault domain 1,fault domain 2,fault domain 3,load balancer,6,22,,,provisioning a role instance,fc pushes role files and configuration information to target node host agent host agent creates three vhds: differencing vhd for os image (d:) host agent injects fc guest agent into vhd for web/worker roles resource vhd for temporary files (c:) role vhd for role files (first available drive letter e.g. e:, f:) host agent creates vm, attaches vhds, and starts vm guest agent starts role host, which calls role entry point starts health heartbeat to and gets commands from host agent load balancer only routes to external endpoint when it responds to simple http get (lb probe),inside a role vm,guest agent,role host,role entry point,provisioning vm role instances,vm role base and differencing vhd are stored in windows azure storage blobs shadow versions are made when the originals are uploaded vhd reads all go through a vhd caching service reads come on-demand from the cache writes go to a secondary differencing vhd “reimage” simply deletes it and reboots,windows azure blob storage,original base vhd,original differencing vhd,shadow base vhd,shadow differencing vhd,rdfe,vhd caching service,base vhd,shadow differencing vhd,secondary differencing vhd,node,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,update types,there are two update types: in-place vip swap in-place update: role instances upgraded one update domain at a time two modes: automatic and manual vip swap update: new version of service deployed, external vip/dip mapping swapped with old,role a ud 1,role b ud 1,role a ud 2,role b ud 2,lb,in-place update,vip swap update,update type characteristics,in-place update detail,fc deploys updated role files and configuration to all nodes in parallel prepares new role instances: fc host agent creates new role vhd attaches and mounts new role vhd stops old role instance: fc instructs guest agent to stop role instance dismounts and detaches old role vhd starts new role instances: calls new role code entry point considers role instance update successful when role code reports “ready” note that resource volume is preserved updates of role instance,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,updating the host os,initiated by the windows azure team typically no more than once per month goal: update all machines as quickly as possible constraint: must not violate service sla service needs at least two update domains and role instances for sla cant allow more than one update domain of any service to be offline at a time note: your role instance keeps the same vm and vhds, preserving cached data in the resource volume essentially a graph coloring problem edges exist between vertices (nodes) if the two nodes host instances of the same service role in different update domains nodes that dont have edges between them can update in parallel,example allocations,both allocations are valid from the services point of view allocation 1 allows for 2 nodes rebooting simultaneously allocation 2 allows only one node to be down at any time host os upgrade rollout is 2x faster with allocation 1,allocation 1,allocation 2,service b role a-1 ud 2,service b role a-1 ud 1,agenda,introduction to windows azure windows azure fundamentals fabric controller internals deploying a service updating a service host os upgrades service health,load balancer operation,fc programs load balancers (lb) to “probe” guest agent (ga) every 15 seconds if the guest misses two probes, the lb stops forwarding traffic the role can report “busy” status to the ga ga stops responding to probes lb keeps an idle connection open for 30s use keep-alive commands if the connection needs to be open longer,node health index,timeouts vary depending on node state and operation based on heartbeats, which are typically 15 seconds used for status and recovery health state sampler resets the index on successful poll once the index falls below zero, fc attempts to heal node for example, host agent timeout is 10 minutes worst-case reaction time is timeout interval + heartbeat interval,node health index,missed heartbeats,heartbeat interval,missed heartbeat,recovery initiated,heartbeat timeout,health timeout,healthy,node and role health maintenance,fc maintains service availability by monitoring the software and hardware health based primarily on heartbeats automatically “heals” affected roles,guest agent and role instance heartbeats and timeouts,25 min,guest agent connect timeout,guest agent heartbeat 5s,role instance launch,indefinite,role instance start,role instance ready (for updates only),15 min,role instance heartbeat 15s,guest agent heartbeat timeout 10 min,role instance “unresponsive” timeout 30s,load balancer heartbeat 15s,load balancer timeout 30s,guest agent,role instance,moving a role instance (service healing),moving a role instance is similar to a service update on source node: role instances stopped vms stopped node reprovisioned on destination node: same steps as initial role instance deployment warning: resource vhd is not moved,conclusion,platform as a service is all about reducing management and operations overhead the windows azure fabric controller is the foundation for windows azures paas provisions machines deploys services configures hardware for services monitors service and hardware health the fabric controller continues to evolve,book signing and my last session,book signing teched bookstore: 12:30-1:30 case of the unexplained 2:45,track resources,dont forget to vis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省淮南市谢家集区2024-2025学年高二上学期期末考试数学考试题目及答案
- 安徽省蚌埠市五河县2024-2025学年高二上学期期末考试思想政治考点及答案
- 第03章 统计案例-学易试题君之单元测试君2025-2026学年高二数学人教版(选修2-3)(考试版)
- 第02章 地球上的大气-学易试题君之单元测试君2025-2026学年高一地理人教版(必修1)(考试版)
- 脑卒中后吞咽障碍患者进食护理
- 社区消防知识培训资料课件
- 统编版五年级语文上册第二单元拔尖测评卷(含答案)
- 社区消防安全知识培训课件新闻
- 社区流管业务知识培训课件
- iphone代理合同范本
- 危险化学品应急演练计划
- 2025-2030中国催化裂化催化剂行业前景展望及需求趋势预测报告
- 电厂设备清洁管理制度
- 左上颌骨囊肿护理查房
- 公司六一活动家属开放日活动方案
- 2025至2030年中国继电保护及自动化设备行业市场现状调查及发展趋向研判报告
- 2025年重庆市中考数学试卷真题及答案详解(精校打印版)
- 关于医院“十五五”发展规划(2026-2030)
- 民航气象专业面试题及答案
- 浙江仙琚制药股份有限公司年产2.5亿粒性激素软胶囊生产线技术改造项目环评报告
- DB37/T 3658-2019地质灾害治理工程施工技术规范
评论
0/150
提交评论