CloudstackManagementServerInternals.ppt

上传人:文库蛋蛋多 文档编号:2427698 上传时间:2023-02-19 格式:PPT 页数:35 大小:816.50KB
返回 下载 相关 举报
CloudstackManagementServerInternals.ppt_第1页
第1页 / 共35页
CloudstackManagementServerInternals.ppt_第2页
第2页 / 共35页
CloudstackManagementServerInternals.ppt_第3页
第3页 / 共35页
CloudstackManagementServerInternals.ppt_第4页
第4页 / 共35页
CloudstackManagementServerInternals.ppt_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《CloudstackManagementServerInternals.ppt》由会员分享,可在线阅读,更多相关《CloudstackManagementServerInternals.ppt(35页珍藏版)》请在三一办公上搜索。

1、CloudStack Architecture,Alex Huang,Old Architecture,ProsAgile development for existing developersScales well horizontallyConsMonolithicDifficult to educate new and third-party developersEasy to introduce bugs,2,XenServer Resource,Agent Manager,API Layer,EC2,CloudStack,Virtual Machine Manager,KVM Res

2、ource,SRX Resource,F5 Resource,NetScaler Resource,Other Resources,Access Control,Storage Manager,Network Manager,Console Proxy Manager,Snapshot Manager,Template Manager,Async Job Manager,New Deployment Architecture,Scales horizontally to different pressure pointsAutomatically scales service VMs in z

3、ones to facilitate most efficient data path transfersFault isolation between API servers and Execution Servers and resources within zones,API Server,New Architecture API Server,API Server isolates integration code from Execution ServerAPI Server can horizontally scale to handle trafficEasily adds ot

4、her API compatibilityEasily exposes API needed by third party vendors,Pluggable API Engine,OAM&P API,End User API,EC2 API,Other APIs,ACL&AuthenticationAccounts,Domains,and ProjectsACL,limits checking,Management ServicesResource managementConfigurationAdditional operations added by third party,REST,F

5、rameworkJob Queue Database Access LayerOSGi,Integration,New Architecture Execution Server,Execution Server protected by job queueKernel kept small for stability.It only drives processes.Plugins provide mappings of virtual entities to physical resourcesThird party plugins to provide vendor differenti

6、ation in CloudStackCommunicates with resources within data center over message bus,Execution Server,KernelDrives long running VM operationsSyncs between resources managed and DBGenerates events,FrameworkCluster ManagementJob ManagementAlert&Event ManagementDatabase Access LayerMessaging Layer,Plugin

7、sStorage HandlingNetwork HandlingDeployment planningHypervisor Handling,Component Framework(OSGi)Transaction Management,Services API,New Architecture Resources,Resources are carried in service VMs to be in close network proximity to the physical resources it managesEasily scales to utilize the most

8、abundant resource in data center(CPU&RAM)Communicates with Execution Server over message bus(JSON)Can be replicated for fault toleranceControl gateway to resources within data center,Agent,Hypervisor Resources,Network Resources,Storage Resources,Image&Template Resources,Snapshot Resources,Management

9、 Server,KernelDrives long running VM operationsSyncs between resources managed and DBGenerates events,Resource Management,Cluster Management,JobManagement,DB,Job Queue,Deployment Planning,Network Configurations,Network Elements,Hypervisor Gurus,DatabaseAccess,Alert&EventManagement,Plugin API,Hypervi

10、sor Resources,Network Resources,Storage Resources,ImageResources,SnapshotResources,REST API,OAM&P API,End User API,EC2 API,Pluggable Service API Engine,Other APIs,Security Adapters,Account Management Connectors,ACL&AuthenticationAccounts,Domains,and ProjectsACL,limits checking,Services API,Services

11、API,Console Proxy Management,Template Access,HA,Usage Calculations,Additional Services,Event Bus,Message Bus,Kernel Module,Understands how to orchestrate long running processes(i.e.VM starts,Snapshot copies,Template propagation)Well defined process stepsCalls Plugin API to execute functionalities th

12、at it needs,Plugins,Various ways to add more capability to CloudStackImplements clearly defined interfacesAll operations must be idempotentAll calls are at transaction boundariesCompiles only against the Plugin API module,Anatomy of a Plugin,ServerResourceOptional.Required if Plugin needs to be co-l

13、ocated with the resourceImplements translation layer to talk to resourceCommunicates with server component via JSON,Rest APIOptional.Required only if needs to expose configuration API to admin.,Plugin API,Data Access Layer,Implmentation,Anatomy of a Plugin,Can be two jars:server component to be depl

14、oyed on management server and an optional ServerResource component to be deployed co-located with the resourceServer component can implement multiple Plugin APIs to affect its featureCan expose its own API through Pluggable Service so administrators can configure the pluginAs an example,OVS plugin a

15、ctually implements both NetworkGuru and NetworkElement,Plugin Interfaces Available,NetworkGuru Implements various network isolation technologies and ip address technologiesNetworkElement Facilitate network services on network elements to support a VM(i.e.DNS,DHCP,LB,VPN,Port Forwarding,etc)Deploymen

16、tPlanner Different algorithms to place a VM and volumes.Investigator Ways to find out if a host is down or VM is down.Fencer Ways to fence off a VM if the state is unknownUserAuthenticator Methods of authenticating a userSecurityChecker ACL accessHostAllocator Provides different ways to allocate hos

17、tStoragePoolAllocator Provides different ways to allocate volumes,Adding a Plugin to CloudStack,Components are configured though components.xmlSupports DAO,Manager,and Adapter patternsOpen to other component frameworks(OSGi a possibility),Components.xml Example,Kernel,Sequence Flow for deploy VM,End

18、 User Rest API,SecurityCheckers,User VM Mgr,Network Mgr,Storage Mgr,Job Scheduling,VirtualMachine Mgr,Network Guru,Deploy VM,ACL Checks,Allocate Entity in CS,Allocate VM,Allocate NIC,Allocate Volume,Allocate IP,Schedules Deploy Job,Returns with job id,VM id,Query Job Result,Returns with job status,S

19、equence Flow for deploy VM,Job Threads,Network Element,User VM Mgr,Network Mgr,Storage Mgr,VirtualMachine Mgr,Network Guru,Start VM,Start VM,Prepare Nics,Notify that Nic is about to be started in network,Reserve resources for Nic,Services API,ServerResources,Start User VM,Agent Calls,Prepare Volumes

20、,Template Mgr,DeploymentPlanner,Get a Deployment Plan(Host and StoragePool),Prepare template on Primary Storage,Agent Calls,Agent Start VM Call,Stores job result,ServerResource,Translation layer between CloudStack commands and resource APIMay be Co-located with resourceHave no access to DBAPI define

21、d in JSON messages,DAO,SQL generation done mostly in GenericDaoBaseUses JPA annotationsVery little code to write for each individual DAODatabase Access Layer for KernelNo support for more complicated features such as fetch strategyWelcome to use other types of ORM in other modules but like to hear a

22、bout preferred library.(Hibernate is out due to licensing issues),Example DAO,/ExampleVO.javaEntityTable(name=“example”)public class ExampleVO Id GeneratedValue(strategy=GenerationType.IDENTITY)Column(name=“id”)long id;Column(name=“name”)String name;Column(name=“value”)String value;,/ExampleDao.java

23、public interface ExampleDao extends GenericDao/ExampleDaoImpl.javaLocal(value=ExampleDao.class)public class ExampleDaoImpl extends GenericDaoBase implements ExampleDao protected ExampleDaoImpl(),CloudStack Storage,Alex Huang,Storage,Zone-Level Layer 3 Switch,Pod 2,Pod N,Private Network,Pod 1,Scale-O

24、ut NFS,Cluster 2,Cluster 1,Primary Storage,Scale-Out NFS,Primary Storage Block device to the VMIOPs intensiveAccessible from host or cluster wideSupports storage tieringWORM StorageSecondary Storage or Object Store for templates,ISO,and snapshot archivingHigh capacityCloudStack manages the storage b

25、etween the two to achieve maximum benefit and resiliency,Primary Storage Support Matrix,Disk Offering,Disk Offering specifies how block storage are offered to the end userDisk spaceLocal or shared diskDisk Offering has storage tags which can be used to implementing storage tieringService Offering ac

26、tually contains a disk offering for the root disk,Storage Tiering,Supported via storage tags for primary storageSpecify a tag when adding a storage poolSpecify a tag when adding a disk offeringOnly storage pools with the tag will be allocated for the volume,WORM Storage,Write Once Read Many storage

27、pattern is supported by two different storage typesSecondary Storage(NFS Server within an availability zone)Object Store(Swift implementation for cross-zone)Objective for WORM storageHigh capacity,cheap storageEasy to increase capacityUsed to store templates,ISOs,and snapshots,Snapshots,Snapshots ar

28、e used as backups for DRSTaken on the primary storage and moved to secondary storageSupports individual snapshots and recurring snapshotsFull snapshots on VmWare and KVM.Need help.Incremental snapshots on XenServerAllows backup network traffic to be specified in zone to segregate the backup network

29、traffic from other network traffic types,Base Copy,Template,D1,S1,D2,VM,S2,Full1,S11,S12,S13,Full2,S21,S22,S23,Snapshot Example(XenServer),Primary Storage,Secondary Storage,New storage is allocated when a snapshot is taken and changes are written into new storageOnce Snapshot is taken,it is transfer

30、red to secondary storageOld snapshots are removed to allow for storage to be garbage collectedOne snapshot is always kept on primary storage to prevent coalescing of the delta dataEvery nth copy is a full copy to work against bad data in delta copies corrupting the entire chainCannot delete physical

31、 data until snapshots kept have passed the full copy,Storage Network,Direct access to storage server(iSCSI,CIFS,NFS,etc)from within a VMSetup the storage access via a shared networkVMs deployed will have two or more nics:One or more nics for internet accessOne nic for storage accessSecurity around s

32、torage network is lacking and requires workACL support is done by the operator,Storage Future,Secondary Storage multi-homed in PodObject Store for between zonesProduction Storage Network for enterpriseStorage Plugin Framework,CloudStack Resource Management,Organized into zones,pods,clustersEach can

33、be enabled,disabled,unmanaged,and inactive,CloudStack High Availability,Alex Huang,High Availability,Service Offering contains a flag for whether HA should be supported for the VMDoes not use the native HA capability of hypervisors for XenServer and KVMUses adapters to fine tune HA process,High Avai

34、lability,Investigation Uses investigators to find out if VM is alive or downEach investigator returns three statesUpDownUnknownFencingUses fencers to fence off the VM from accessing storage to ensure VM is not corruptedEach Fencer returns three statesFencedUnable to FenceDont know how to fenceRestar

35、tRestarts the VM,Triggering High Availability,VM HA are triggered via the following methods:VM Sync detects out of band VM changesResource Management detects that a resource is unreachable and its state can not be determined.VM start/stop has been sent to the resource but resource does not returnDet

36、ails of how high availability is done is at http:/docs.cloudstack.org/CloudStack_Documentation/Design_Documents/CloudStack_High_Availability_-_Developers_Guide,High Availability Future,Moving toward using the native HA capability of the hypervisor.Looking to do more in the DRS area to coordinate recovery of wide spread outage.,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号