CN104570831B - 过程控制系统和方法 - Google Patents
过程控制系统和方法 Download PDFInfo
- Publication number
- CN104570831B CN104570831B CN201410673629.2A CN201410673629A CN104570831B CN 104570831 B CN104570831 B CN 104570831B CN 201410673629 A CN201410673629 A CN 201410673629A CN 104570831 B CN104570831 B CN 104570831B
- Authority
- CN
- China
- Prior art keywords
- data
- cluster
- virtual machine
- server
- data storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2035—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Hardware Redundancy (AREA)
Abstract
公开了过程控制系统和方法。一种示例方法包括操作包括第一虚拟机和第一服务器的第一集群,以及操作包括第二虚拟机和第二服务器的第二集群。该示例方法还包括在第一集群的第一数据存储器处存储来自第一虚拟机的第一数据,和在第二集群的第二数据存储器处存储第一数据的副本。该示例方法还包括在第二数据存储器处存储来自第二虚拟机的第二数据和在第一数据存储器处存储第二数据的副本和识别第一集群的故障。该方法还包括,响应于该故障,使用第二服务器和第二数据存储器处的第一数据的副本重启第一虚拟机。
Description
相关申请
本专利要求2013年9月27日提交的美国临时专利申请第61/883,748号的优先权,其因此整体通过引用被结合在此。
技术领域
本发明属于过程控制领域,尤其涉及一种过程控制系统和方法。
背景技术
典型的控制系统包括许多工作站、服务器、控制器和I/O子系统的网络。多个系统开发、测试、训练和在线生产所需的建立和维护可能是昂贵和耗时的。
发明内容
一个示例方法包括:操作包括第一虚拟机和第一服务器的第一集群,以及操作包括第二虚拟机和第二服务器的第二集群。该方法还包括将来自第一虚拟机的第一数据存储在第一集群的第一数据存储器中,以及将第一数据的副本存储在第二集群的第二数据存储器中。该方法还包括将来自第二虚拟机的第二数据存储在第二数据存储器中,以及将第二数据的副本存储在第一数据存储器中。该方法包括识别第一集群的故障以及,响应于该故障,使用第二服务器和第二数据存储器中的第一数据的副本重启该第一虚拟机。
另一个示例方法包括选择第一模式以操作包括第一虚拟和第一服务器的第一集群,并且以第一模式操作第一集群,包括写入第一数据存储器的高速缓存以存储来自第一虚拟机的第一数据。该方法包括选择第二模式以操作第一集群并且以第二模式操作第一集群,包括绕过高速缓存并将数据直接写至第一数据存储器的磁盘以存储来自第一虚拟机的第一数据。
附图说明
图1描述了可被用于实施在此公开的示例的一种示例过程控制系统。
图2描述了可被用于实施在此公开的示例的另一种示例过程控制系统。
图3描述了可被用于实施在此公开的示例的另一种示例过程控制系统。
图4描述了可根据本公开的教导在一个实时迁移期间使用的一种示例用户界面。
图5-7描述了可被用于实施图1的过程控制系统或图2和3的过程控制系统的示例用户界面。
图8-11描述了可被用于实施图3的过程控制系统或图1和2的过程控制系统的示例用户界面。
图12描述了示出在此公开的示例控制系统的性能测试和/或示例控制系统的诊断的示例用户界面。
图13描述了示出在此公开的示例控制系统的诊断结果的示例用户界面。
图14描述了根据本公开教导的虚拟机副本流量的示例用户界面。
图15描述了可被用于实施在此公开的示例的示例用户界面。
图16描述了根据本公开的教导通过高速缓存直接写入磁盘。
图17描述了根据本公开的教导写至存储器。
图18描述了以正常模式操作和以依赖模式操作的处理流程。
图19是可被执行以实施图1-3的过程控制系统的代表方法的流程图。
图20示出了可被用于实施图1-3的过程控制系统的处理器平台。
附图不是按比例绘制。无论如何,相同的参考编号将用于整个附图并且所附的书面说明来指代相同或类似部分。
具体实施方式
虚拟环境可在企业中被实施以减少数据中心空间、提高安全性、降低成本和/或减少能源消耗。在某些示例虚拟环境中,虚拟机(VM)在单个服务器上操作,其中单个服务器的损失造成相关联的VM的损失和/或不生效。
在某些示例过程控制系统中,当对应的服务器失效时,为了基本上防止VM的损失,在此公开的示例虚拟化架构促使VM复制至其他主机以使得VM在相应服务器或其他组件的突然失效之后相对快地被重启。
在其他示例过程控制系统中,示例支持主机被集群在一个示例集群环境中,在该集群环境中VM被运行和/或来自每个VM的数据被集中地存储和/或通常地可访问。在某些这种示例中,如果其中一台运行虚拟机的主机失效,则使用数据存储器中保存的数据来配置和/或建立集群环境以自动重启该集群中的VM。
在其他示例过程控制系统中,示例支持主机被集群在一示例集群环境中,且一附加服务器被用于复制(例如,被用于存储与VM和/或主机相关的数据)。在这种示例中,如果该集群失效,则使用在附加和/或复制服务器上保存的数据,VM在附加和/或复制服务器上可相对快地重启。
在其他示例过程控制系统中,支持主机的两个单独集群可被用于实现在集群间的复制。在某些这种示例中,来自第一集群(例如,第一集群的VM)和第二集群(例如,第二集群的VM)两者的数据被复制和存储在与相应的集群相关的单独的数据基站中。在某些示例中,通过运行在第一集群上的第一VM中的一些VM和在第二集群上的第二VM中的一些VM,如果第一集群或第二集群故障,则与故障的集群相关的VM可被相对容易地在可操作集群上重启和/或运行。因此,使用剩余的可操作性集群维持工厂的控制。附加地或可选地,在第一VM是第二VM的冗余的示例中,通过在第一集群上运行第一VM和在第二集群上运行第二VM,如果第一集群或第二集群故障,与可操作集群相关的VM仍然可被用于控制该处理(例如,第二VM可被用于运行该工厂)。具有带复制的多个集群可以提供高可用性。
图1示出了包括集群102的示例过程控制系统100,集群102与单个控制台里的存储器、网络角色和/或节点相关和或汇集在一起。在某些示例中,集群102包括网络设备(例如,开关、防火墙和/或存储器设备)、存储器和/或数据存储器104,106、故障转移(failover)集群和/或存储器和在虚拟空间相关的一组或多组服务器108,110,112。在某些示例中,一组服务器108,110,112可被称作节点并且集群102可包括任意数目的节点(例如,22、50、64等)。在某些示例中,故障转移集群充当与该单个控制台的集群组件相关的管理者。在某些示例中,使用集群的用户和服务可连接至由故障转移集群创建的虚拟名和/或空间。
在操作中,虚拟机(VM)114、116、118和120在服务器108、110、112上操作,并且与由VM 114、116、118和/或120执行的操作相关的数据被存储在数据存储器104、106上。因此,如果服务器108、110、112中的其中一个故障,则在故障的服务器108、110和/或112上运行的VM114、116、118和/或120将使用与存储在数据存储器104、106上的VM 114、116、118和/或120相关的数据在仍然操作的服务器108、110和/或112上被重启。在其中集群102包括操作VM的服务器的第一节点和操作VM的服务器的第二节点的示例中,如果第一节点故障,则与该第一节点相关的VM将使用该第二节点重启。
在此公开的示例可支持多达每集群大约64个节点并且多达大约4000个VM。所公开的示例使集群能够自动更新(例如,集群感知更新)以及用于基本同时实时迁移一个或多个集群和/或相关节点。在此公开的示例可支持超V副本代理(Hyper-V Replica Broker)以使能和/或支持集群环境下的超V副本、虚拟机应用监控和/或集群有效性测试。在此所公开的示例使集群能实现升级和/或迁移、集群共享卷2.0和/或VM故障转移优先级化。在某些这种示例中,VM的健康度和位置可被整合至Delta V诊断以使用户不必移至其他环境便能诊断他们的系统。在某些示例中,故障转移优先级化将关键VM排在第一(例如,批处理执行)。
图2示出了包括高可用性和示例集成复制引擎(例如,超V副本、代理角色)的示例过程控制系统200。在某些示例中,这种复制引擎使用单个网络连接促使集群210的虚拟机(VM)202、204、206、208在一复制服务器(例如,远程服务器)212处被复制。例如,对于复制,超V副本代理是在一个或多个VM 202、204、206和208上运行的角色和/或应用,其中集群210将确定和/或决议哪个节点具有代理角色。该代理角色是具有高可用性的,从而如果一个节点丢失和/或失灵,该代理角色将被故障转移至另一个节点。在某些示例中,服务器212附加地或可选地包括在其上运行的超V副本服务以接收和/或同步复制的数据。
在某些示例中,复制引擎包括跟踪和/或在由所有VM 202、204、206、208使用的虚拟硬盘文件中写和/或生成日志文件。通过使复制能在虚拟硬盘(Virtual Hard Disk,VHD)级发生,提高了VM 202、204、206、208中任何一个的复制易用性。在某些示例中,VM 202、204、206、208的复制通过连接周期性和/或异步地发生(例如,HTTP连接、HTTPS连接、等等)。
在操作中,VM 202、204、206、208在服务器214、216、218上操作,并且与VM 202、204、206、208相关的数据和/或由VM 202、204、206、208执行的操作被存储在数据存储器220、222上,并且其副本被存储在复制服务器212处和/或另一个位置。因此,如果集群210和/或所有服务器214、216、218故障,则在故障的集群210和/或故障的服务器214、216、218上运行的VM 202、204、206、208将基于在复制服务器212和/或另一位置处存储的与VM 202、204、206、208相关的数据在复制服务器212上重启和/或使用复制服务器212重启。因此,示例过程控制系统200使VM 202、204、206、208能够在故障后继续运行和/或操作,从而可兼容几乎所有的灾难恢复方案。
在某些示例中,来自VM 202、204、206、208的数据被复制,使用网络模块(例如,数据压缩和/或优化)传达和/或发送至复制服务器212,其通过以慢速网络连接(例如,WAN)来优化工作负荷。在某些示例中,为了实施图2的示例过程控制系统200,两个或多个服务器212、214、216、218被使用,其通过网络连接而被连接,其中至少一个服务器是复制服务器212。在某些这种示例中,两个或多个服务器212、214、216、218运行所需的应用例如Hyper-V,并且无需其他第三方硬件、软件应用和/或共享的存储器。在某些示例中,示例过程控制系统200包括恢复点以使VM 202、204、206和208中的任意一个或多个在任何时间点上均能被重启。在某些示例中,通过使用这种恢复点,减少、基本上消除和/或消除了数据库损坏和/或病毒复制。
在某些示例中,示例过程控制系统200和/或Hyper-V副本使用少量组件以合理成本为它们的虚拟化环境促进和/或提供具有完整的灾难恢复基础设施解决方案的小型和/或中型公司。在某些示例中,Delta V主级和/或次级网络可被添加至复制服务器212以促使VM 202、204、206、208在复制服务器212更快地启动和/或使用复制服务器212来更快地启动。
图3示出了包括第一集群和/或虚拟化集群302以及第二集群和/或虚拟化集群304的示例过程控制系统300,其中,或者第一集群302的初级服务器306、308、310或者次级集群304的复制服务器312、314、316被配置以具有代理的角色(例如,超V副本代理角色)。该代理角色促使集群302和/或304与超V副本相关和/或是超V副本的一部分,以支持和/或使得例如集群302、304间的无缝复制。
在操作中,虚拟机(VM)318、320、322、324在服务器306、308、310上操作并且VM326、328、330、332在服务器312、314、316上操作。在某些示例中,VM 318、320、322、324是VM326、328、330、332的副本。在某些示例中,VM 318、320、322、324是部分或完全地不同于VM326、328、330、332。
在VM 318、320、322、324是VM 326、328、330、332的副本的示例中,与VM 318、320、322、324相关的数据和/或由VM 318、320、322、324执行的动作被存储在第一集群302的数据存储器334、336处并且数据的副本被存储在第二集群304的数据存储器338、340处。因此,如果第一集群302和/或所有的服务器306、308、310故障,则在故障的集群302和/或故障的服务器306、308、310上的运行的VM 318、320、322、324将基于来自与存储在数据存储器338、340处的VM 318、320、322、324相关的数据在复制服务器312、314、316上重启和/或使用复制服务器312、314、316重启。因此,示例过程控制系统300使VM 318、320、322、324能够在故障后继续运行和/或操作。
在VM 318、320、322、324不同于VM 326、328、330、332的示例中,与VM 318、320、322、324相关的数据和/或由VM 318、320、322、324执行的动作被存储在第一集群302的数据存储器334、336处并且数据的副本被存储在第二集群304的数据存储器338、340处,以及与VM 326、328、330、332相关的数据和/或由VM 326、328、330、332执行的操作被存储在第二集群304的数据存储器338、340处,并且数据的副本被存储在第一集群302的数据存储器334、336处。因此,如果第一集群302或第二集群304故障,则在故障的第一集群302或故障的第二集群304上运行的VM 318、320、322、324、326、328、330、332将基于来自与存储在数据存储器334、336、338和/或340处的分别与VM 318、320、322、324、326、328、330、332相关的数据,在服务器306、308、310或复制服务器312、314、316上重启和/或使用服务器306、308、310或复制服务器312、314、316重启。一旦故障的第一集群302或故障的集群304被恢复,VM 318、320、322、324、326、328、330、332可被复制和/或迁移至它们的原始集群302或304以恢复正常操作。
图4示出了可在实时迁移过程中使用的示例用户界面400。在某些示例中,一个无共享的实时迁移可能花费大约8至10分钟,一个存储器实时迁移可能花费大约5至7分钟,一个在逗号分割值(Comma Separated Value,CSV)上的实时迁移可能花费大约10至30秒以及一个CSV上的快速迁移可能花费约5秒。
图5-7描述了可被用于实施在此公开的示例(例如,配置和操作虚拟机)的示例用户界面500、600、700。在某些示例中,用户界面500、600、700可被用于实施图1的过程控制系统100。图6的用户界面600示出了所选C1-1节点的不同操作的状态和/或使不同节点(例如,C1-1;C1-2;C1-3,等等)和不同集群(例如,1,10,11,2,3,等)能够实现选择至它们各自的状态。图7的用户界面700示出了所选C1-1节点的不同操作的状态并且提供集群1的概要。
图8-11描述了可被用于实施在此公开示例的示例用户界面800、900、1000、1100。在某些示例中,当由于故障的操作(例如,OP20)和/或虚拟机318从第一集群302移至第二集群304时,用户界面800、900、1000、1100可被用于实施图3的过程控制系统300。图9示出了指示OP20和/或虚拟机318的故障已经发生的用户界面900。图10示出了指示OP20和/或虚拟机318正在第二集群304上运行的用户界面1000。图11示出了在第一集群302修复后虚拟机318从第二集群304返至第一集群302的迁移。
图12描述了示出在此公开的示例控制系统的性能测试和/或诊断的示例用户界面1200。在某些示例中,示例过程控制系统包括两个集群,每个集群运行64个虚拟机、1个PROPlus、13个应用站、50个操作站和/或4个主机。在某些示例中,执行和/或获取的度量包括和/或与系统配置、操作员运行时间、历史收藏和/或复制相关。在某些示例中,执行和/或获取的诊断包括和/或与Windows和/或SolarWinds相关。
图13描述了示出在此公开的示例控制系统的诊断结果的示例用户界面1300。用户界面1300示出了Hyper-V概要,其描述虚拟化资产(例如,C1-1;C1-2;等等)、虚拟化资产概要、内存使用百分比的前10名主机和网络利用率前10名主机。
图14描述了示出虚拟机复制流量的示例用户界面1400,其中第一部分1402在时间上对应于复制被禁用时(例如,当正配置时),第二部分1404在时间上对应于系统和/或集群(例如,C2-1)被重启时,以及第三部分1406在时间上对应于虚拟机被重启时。
图15描述了可被用于实施在此公开的示例(例如,自动创建、配置和操作用于过程控制的预安装的DeltaV虚拟机)的示例用户界面1800。特别地,该用户界面1800描述了当虚拟机应当以弹性模式操作时,与虚拟机以正常模式操作相关的诊断警告。因此,用户界面1800描述了根据需要,信息被传送至IT层以促使发生操作模式的纠正。在某些示例中,当用户悬浮(例如,用鼠标箭头)在应用状态条中的诊断自然增长数上时,显示一工具提示1802。
图16描述了通过高速缓存写入磁盘和直接(例如,绕过高速缓存;弹性模式)写入磁盘,以及图17描述了对存储器的写入(例如,正常模式)。图18描述了以正常模式和以弹性模式操作的处理流程。在某些示例中,改变高速缓存使过程控制系统能够承受硬盘错误而不破坏被用于控制的配置数据。
代表用于实施图1-3的过程控制系统的示例方法的流程图在图19中示出。在这个例子中,使用包含用于执行的程序的机器可读指令,由处理器来实施该方法,处理器例如结合图20在下描述的示例处理器平台2300中示出的处理器2312。该程序可被以存储在有形计算机可读存储介质例如CD-ROM、软盘、硬盘、数字通用盘(DVD)、蓝光盘或与处理器2312相连的存储器中的软件实现,但是整个程序和/或其部分能够可选地由处理器2312之外的设备执行和/或以固件或专用硬件实现。此外,尽管示例程序被参照图19中示出的流程图描述,实现图1-3的示例过程控制系统的许多其他方法也可选地被使用。例如,可以改变执行块的次序,和/或可以改变、删除或组合某些被描述的块。
如上所述,图19的实例方法可使用存储在有形计算机可读存储介质中的编码指令(例如,计算机和/或机器可读指令)实现,有形计算机可读存储介质例如硬盘驱动器、闪存、只读存储器(ROM)、压缩盘(CD)、数字通用盘(DVD)、高速缓存、随机访问存储器(RAM)和/或任意其他存储器设备或存储盘,在其中信息被存储任意持续时间(例如,用于扩展的时间周期、永久地、用于短期、用于临时缓冲、和/或用于缓存信息)。如在此所用,术语有形计算机可读存储介质被明确定义为包括任何类型的计算机可读存储器设备和/或存储器磁盘且排除传送信号以及传输介质。如在此所用,“有形计算机可读存储介质”和“有形机器可读存储介质”被交替使用。附加地或可选地,图1-3的示例处理可使用存储在非瞬态计算机和/或机器可读介质例如硬盘驱动器、闪存、只读存储器、压缩盘、数字多功能盘、高速缓存、随机访问存储器和/或任意其他存储器设备或存储器磁盘上的编码指令(例如,计算机和/或机器可读指令)实现,在其中信息被存储任意持续时间(例如,用于扩展的时间周期、永久地、用于短期、用于临时缓冲、和/或用于缓存信息)。如在此所用,术语非瞬态计算机可读介质被明确定义为包括任何类型的计算机可读存储器设备和/或存储器磁盘且排除传送信号以及传输介质。如在此所用,当短语“至少”在权利要求的序言中被用作过渡词,它是开放式结束以与术语“包括”是开放结束一样的方式。
图19的示例方法开始于选择第一模式以操作第一集群302(块2202)。第一集群302包括虚拟机318、320、322、324和服务器306、308、310。选择第一模式以操作第二集群304(块2204)。该第二集群304包括第二虚拟机326、328、330、332和服务器312、314、316。在某些示例中,该第一模式包括写至数据存储器334、336、338和/或340的高速缓存并且可与配置操作模式相关。第一虚拟机318、320、322、324以第一模式操作(块2206)。第二虚拟机326、328、330、332也以第一模式操作(块2208)。
来自第一虚拟机318、320、322、324的第一数据存储在第一集群302的数据存储器334和/或336处并且来自第一虚拟机318、320、322、324的第一数据的副本存储在第二集群304的数据存储器338和/或340处(块2210)。在某些示例中,第一数据和第一数据的副本采用文件级的一致性以并行和/或一致模式存储。来自第二虚拟机326、328、330、332的第二数据存储在第二集群304的数据存储器338和/或304处并且来自第二虚拟机326、328、330、332的第二数据的副本存储在第一集群302的数据存储器334和/或336处(块2212)。在某些示例中,第二数据和第二数据的副本采用文件级的一致性以并行和/或一致模式存储。
然后,例如,过程控制系统300已被配置,第二模式可被选择以操作第一集群302(块2214)。第二模式被选择以操作该第二集群304(块2216)。在某些示例中,第二模式包括绕过数据存储器334、336、338和/或340的高速缓存并且直接写至数据存储器334、336、338和/或340的磁盘以减少数据被保存在易失性存储器中的时间量。第一虚拟机318、320、322、324以第二模式操作(块2218)。第二虚拟机326、328、330、332以第二模式操作(块2220)。
在块2222,处理器确定第一集群302的故障是否已发生。如果第一集群302已故障,则使用第二集群304的服务器312、314和/或316以及来自数据存储器338和/或340的第一数据的副本重启第一虚拟机318、320、322、324(块2224)。在某些示例中,如果使用服务器312、314和/或316重启第一虚拟机318、320、322、324和/或如果第一集群302已故障,可创建和/或传达一警报(块2226)。在某些示例中,该警报指示正在使用第二集群304的服务器312、314和/或316运行第一和第二虚拟机318、320、322、324、326、328、330、332。一旦解决第一集群302的故障,可以执行从使用第二集群304的服务器338、340操作第一虚拟机318、320、322、324到使用第一集群302的服务器334、336操作第一虚拟机318、320、322、324的实时迁移(块2228)。
在块2230,处理器确定第二集群304的故障是否已发生。如果该第二集群304已故障,则使用第一集群302的服务器306、308和/或310以及来自数据存储器334和/或336的第一数据的副本而重启第二虚拟机326、328、330、332(块2232)。在某些示例中,如果使用服务器306、308和/或310重启第二虚拟机326、328、330、332和/或如果第二集群304已故障,可创建和/或传达一警报(块2234)。在某些示例中,该警报指示正在使用第一集群302的服务器306、308、310运行第一和第二虚拟机318、320、322、324、326、328、330、332。一旦解决第二集群304的故障,可以执行从使用第一集群302的服务器334、336操作第二虚拟机326、328、330、332到使用第二集群304的服务器338、340操作第二虚拟机326、328、330、332的实时迁移(块2236)。在块2238,处理确定是否结束。如果处理继续,在块2240,例如,作出确定是否在第二操作模式和第一操作模式间改变操作模式。
图20所示示例的处理器平台2300包括处理器2312。所示示例的处理器2312是硬件。例如,处理器2312可由任何所需家族或制造商的一个或多个集成电路、逻辑电路、微处理器或控制器实现。
所示示例的处理器2312包括本地存储器2313(例如,高速缓存)。所示示例的处理器2312与主存储器相连,该主存储器包括经由总线2318的易失性存储器2314和非易失性存储器2316。易失性存储器2314可由同步动态随机存取存储器(Synchronous DynamicRandom Access Memory,SDRAM)、动态随机访问存储器(Dynamic Random Access Memory,DRAM)、RAMBUS动态随机存取存储器(RAMBUS Dynamic Random Access Memory,RDRAM)和/或任何其他类型的随机访问存储器设备实现。非易失性存储器2316可由闪存和/或任意其他所需类型存储器设备实现。对主存储器2314、2316的访问由存储器控制器控制。
所示示例的处理器平台2300还包括接口电路2320。接口电路2320可由任何类型的接口标准实现,例如Ethernet接口、通用串行总线(USB)和/或PCI快速接口。
在所示示例中,一个或多个输入设备2322被连接至接口电路2320。输入设备2322允许用户输入数据和命令至处理器2312。输入设备可由例如音频传感器、麦克风、摄像机(静态或视频)、键盘、按钮、鼠标、触摸屏、跟踪板、轨迹球、isopoint和/或声音识别系统实现。
一个或多个输出设备2324也被连接至所示示例的接口电路2120。输出设备2324可由例如显示设备(例如,发光二极管(LED)、有机发光二极管(OLED)、液晶显示器、阴极射线管显示器(CRT)、触摸屏、触觉输出设备、发光二极管、打印机和/或扬声器)实现。因此,所示示例的接口电路2320典型地包括显卡驱动卡、显卡驱动芯片或显卡驱动处理器。
所示示例的接口电路2320还包括通信设备,例如发射器、接收器、收发器、调制解调器和/或网络接口卡以经由网络2326(例如,以太网连接、数字订购线(DSL)、电话线、同轴电缆、蜂窝电话系统、等等)实现与外部机器(例如,任何类型的计算设备)交换数据。
所示示例的处理器平台2300还包括一个或多个大容量存储设备2328用于存储软件和/或数据。这种大容量存储设备2328的示例包括软盘驱动器、硬盘驱动器磁盘、光盘驱动器、蓝光磁盘驱动器、RAID系统和数字通用盘(DVD)驱动器。
从前述,将理解的是在此公开的示例涉及能有效的发展、便于管理的计算机架构、联网和/或虚拟化,减少消耗并改进系统上的时间和/或启动时间的虚拟化计算环境。
在某些过程控制系统中,至少某些关键硬件组件(例如,控制器)被设计用于冗余但其他组件(例如,VM、服务器等等)都不是多余的或以其它方式能够处理和/或快速从破坏性事件中恢复,破坏性事件例如停电、计算机硬件故障等。如果故障发生在这种系统,冗余关键组件(例如,控件)可以使工厂继续操作。然而,恢复非冗余组件(例如,VM、服务器等)和/或工厂至其正常操作系统可能会花费大量的时间,在此期间工厂数据(例如,重要的工厂数据)可能会看不见、不可见和/或丢失。
与某些已知系统相反,在此公开的示例过程控制系统提供和/或促进高可用性和/或复制,如果发生故障,其使得在虚拟环境下停机时间的减少。进一步地,所公开的示例通过促使过程控制系统将已写和/或可用日志文件与系统的所有组件相关,和/或通过使系统了解整个系统的高可用虚拟化架构而实质地防止数据丢失和/或数据腐败。简单地说,在此公开的示例提供了即装即用的高可用性控制系统。
为了促使组件的日志文件可访问,冗余硬件驱动存储器(例如,独立磁盘阵列的冗余(RAID)阵列)可同时并行由多个主机计算机访问和/或写。因此,使用所公开的示例,虚拟机的虚拟硬盘是可视的和/或对于多于一个主机是可见的。在这种示例中,如果在其中一个主机中发生故障(例如,硬件故障、软件故障),则另一个主机能够接管和/或运行该虚拟硬盘驱动器并基于该硬盘驱动存储器最后保存的信息重启相关的虚拟机。
在此公开的某些示例过程控制系统中,为了实质地防止数据损坏,使用文件级的一致性以一致的方式进行写数据,例如使用NTFS文件系统、NTFS日志(日报)、卷影复制(Volume Shadow Copy,VSS)和/或事务NTFS。附加地和/或可选地,在此公开的示例过程控制系统促使系统被指示通过高速缓存写入并直接保存至磁盘、硬盘驱动器和/或虚拟硬盘驱动器。在这种示例中,为了促使逻辑文件与面向对象的数据库保持一致,示例过程控制系统和/或其组件以弹性模式运行,例如,其促使直接写至高速缓存并实质上减少易失性数据保存在存储器中的时间量。在某些示例中,由于磁盘比存储器写得慢,写至高速缓存导致性能降低。例如,如果使用高速缓存,应用和/或用户将数据提交至高速缓存并且之后系统将数据写入高速缓存。然而,由于大部分配置工作在系统上线以运行工厂和/或过程控制系统之前发生,在最初的工程和/或配置过程中,弹性模式可能被关闭,因为在此时数据丢失和/或破坏在运行工厂上没有负面含意一样(例如,没有被控制的处理)。
在某些示例中,为了促使整个和/或基本上整个系统一致,控制系统功能和虚拟化功能被集成。例如,为了实现这种集成,弹性和/或正常操作模式设置被传送至虚拟化管理软件以实现与虚拟化和高可用性设置能见度相同的水平上。
在其他示例中,使用过程控制系统(例如,DVS)集成控制系统功能和虚拟化功能,过程控制系统管理VM节点冗余和在一致性上的高可用性。在某些这种示例中,如果一冗余对应用站(例如,DeltaV应用站)被指派给相同主机,则警报(例如,DVS警报)发生,因为如果主机故障,具有指派给相同主机的应用站可能引起和/或创建比通常更长的破坏。在某些示例中,如果故障发生在其中一个主机中,冗余和备用被分布在多个主机上以促使节点发生切换。
如在此所公开的虚拟化计算平台,其使用无线基础设施使非传统测量的能够被集成,用于高级分析以组合预测算法和自动化以提供在线预测能力和/或用于新的设计和/或平台以被用于将移动中的人和控制室中的人连接起来。这种示例对于虚拟化和过程控制中的大数据是有利的。
某些公开的示例促进高可用性、故障转移集群管理、虚拟机复制、灾难恢复、性能数据和/或平台配置。某些公开的示例使虚拟化扩大、实时迁移(例如,更快、无限制、同时虚拟机实时迁移和/或存储器迁移)、无共享的迁移、高可用性故障转移聚类(例如,iSCSI、光纤通道、SMB)、故障转移优先级化、NIC合作和/或管理和/或复制支持能够实现。
某些公开的示例使主机能够包括多达每主机约160个逻辑处理器、多达每主机约2兆兆字节(TB)存储器和/或多达每主机约至1024个虚拟中央处理单元(CPU)。某些公开的示例促使虚拟机包括多达每主机约32个虚拟CPU、多达每VM约1TM存储器和/或多达每主机约1024个活跃VM,和/或与多达每主机约32个虚拟CPU、多达每VM约1TM存储器和/或多达每主机约1024个活跃VM相关联。某些公开的示例使集群能够包括约64个节点和/或约4000个VM,和/或与约64个节点和/或约4000个VM相关联。
在此公开的示例可用于获取和/或分析数据流(例如,大数据)以提供新的见解、更好的决策和/或提供改进的系统体验。在某些示例中,在此公开的示例可支持接收在所有处理测量和/或输出上收集的周期性未压缩数据以使不同类型数据一旦被接收便能够被分析。在此公开的某些示例可支持信息源,例如传统类型的警报、批作业和/或连续的新源例如流程分析仪。在此公开的某些示例可支持跨工厂边界(例如,整个油田)、数据灵活性和/或通过浏览器和/或移动设备提供可操作信息至用户。例如,数据探索可以指示和/或定义先前没有记录的信息的现在应当使用例如无线传感器(例如,振动传感器)来被记录。
示例过程控制系统使所有或基本上所有数据具有高分辨率以使得能够对其进行分析。所获的数据可使用例如高频率实时数据而被清除和/或过滤和/或探索,这提供和/或能够增加见识。示例过程控制系统使得能够进行和/或加入跨系统、平台和/或工厂所获取的分析。示例过程控制系统使经由无线和/或外部测量所获取的附加测量能够实现,和/或支持经由无线和/或外部测量所获取的附加测量,外部测量经由例如REST API,其可被从任何语言调用。过程控制系统为人类和/或闭环控制提供可实施的结果。
在某些示例中,模板被设计用于高可用性和复制以使用户能够启用这些特征作为模板的部分并且接着使用该功能作为我们从模板创建的实例。在某些示例中,在虚拟化环境中使用的联网基础设施被预定义以容易地区分控制网络(例如,主要控制网络、二级控制网络)、主机/管理网络和/或其他网络(例如,工厂网络)。在某些示例中,域控制器被集成至基础设施从而使用户能够不必建立和管理他们的计算资源。在某些示例中,诊断被集成至该控制系统以促使用户不必使用工具(例如SolarWinds)收集与他们的网络、磁盘子系统、CPU资源、存储器资源、IO吞吐量、IO延迟、集群和/或复制系统相关的信息。与更抽象的IT项相反,在某些示例中,诊断在控制系统的上下文中被报告。在某些示例中,示例管理中心与Delta V配置和诊断集成。在某些示例中,诊断可在控制系统流量和/或使用上运行(例如,如果使用模式改变则提供警报,等)。在某些示例中,系统通过分割网络流量和保护基础设施流量而被保护和/或管理。在某些示例中,虚拟化下的硬件平台可被用于实施所公开的示例。在某些示例中,虚拟演播室、Delta V基础设施、硬件(例如,Dell的VRTX平台),使虚拟设备用于过程控制。在某些示例中,示例过程控制系统被集成和/或可包括和/或使用模板、诊断和/或配置工具和/或方面。
如在此所阐述,示例方法包括操作包括第一虚拟机和第一服务器的第一集群以及操作包括第二虚拟机和第二服务器的第二集群。示例方法包括将来自第一虚拟机的第一数据存储在第一集群的第一数据存储器处,并将第一数据的副本存储在第二集群的第二数据存储器处,以及将来自第二虚拟机的第二数据存储在第二数据存储器处并将第二数据的副本存储在第一数据存储器处。该方法还包括识别第一集群的故障,以及响应于该故障,使用第二服务器和第二数据存储器处的第一数据的副本重启该第一虚拟机。
在某些示例中,存储第一数据包括在正常操作模式过程中绕过第一数据存储器的高速缓存并直接写至第一数据存储器的磁盘,以减少数据保存在易失性存储器中的时间量。在某些示例中,存储第一数据包括在配置操作模式过程中写至第一数据存储器的高速缓存。在某些示例中,使用第二服务器重启虚拟机减少停机时间。在某些示例中,将第一虚拟机的第一数据存储在第一数据存储器中,以及将第一数据的副本存储在第二数据存储器中包括并行地将第一数据存储在第一和第二数据存储器处。在某些示例中,将第一虚拟机的第一数据存储在第一数据存储器中和将第一数据的副本存储在第二数据存储器中包括用文件级一致性以一致的方式将第一数据存储在第一和第二数据存储器。在某些示例中,如果第一虚拟机使用第二服务器重启,则该方法包括创建一个警报。
在某些示例中,该方法还包括在解决第一集群的故障后执行从使用第二服务器操作第一虚拟机到使用第一服务器操作第一虚拟机的基本上实时迁移。在某些示例中,该方法包括使用第二服务器和在第二数据存储器处的第一数据的副本重启第一虚拟机,包括使用第二服务器和第二数据存储器处的第一数据的副本自动重启第一虚拟机。在某些示例中,第一集群是第二集群的冗余。在某些示例中,该方法包括自动更新第二集群。
另一个示例方法包括选择第一模式以操作包括第一虚拟机和第一服务器的第一集群,以及以第一模式操作第一集群包括写至第一数据存储器的高速缓存以存储第一虚拟机的第一数据以及选择第二模式以操作该第一集群。该方法还包括以第二模式操作第一集群,包括绕过高速缓存并直接写至第一数据存储器的磁盘以存储第一虚拟机的第一数据。
在某些示例中,第一模式包括配置模式以及第二模式包括弹性模式。
在某些示例中,该方法还包括选择第三模式以操作包括第二虚拟机和第二服务器的第二集群,以第三模式操作第二集群包括写至第二数据存储器的高速缓存以存储第二虚拟机的第二数据。该方法还包括选择第四模式以操作第二集群和以第四模式操作第二集群,包括绕过高速缓存并直接写至第二数据存储器的磁盘以存储第二虚拟机的第二数据。
在某些示例中,第二模式中的第一集群还包括在第二集群的第二数据存储器处存储第一数据的副本,且其中操作第二集群包括在第一数据存储器处存储第二数据的副本。在某些示例中,该方法还包括识别第一集群的故障并使用第二服务器和第二数据存储器处的第一数据的副本重启第一虚拟机。在某些示例中,如果第一虚拟机使用第二服务器重启,则该方法包括创建一个警报。在某些示例中,该方法还包括在解决第一集群的故障后,执行从使用第二服务器操作第一虚拟机到使用第一服务器操作第一虚拟机的基本上实时迁移。
在某些示例中,在第一数据存储处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括并行存储在第一和第二数据存储器处的第一数据。在某些示例中,在第一数据存储器处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括使用文件级一致性以一致性方式在第一和第二数据存储器处存储第一数据。
尽管在此描述了特定示例方法、装置和制品,本专利的覆盖范围不限于此。相反,本专利覆盖落在本专利权利要求范围内的所有的方法、装置和制品。
Claims (19)
1.一种方法,包括:
操作包括第一虚拟机和第一服务器的第一集群;
操作包括第二虚拟机和第二服务器的第二集群;
在第一集群的第一数据存储器处存储第一虚拟机的第一数据和在第二集群的第二数据存储器处存储第一数据的副本;
在第二数据存储处存储第二虚拟机的第二数据和在第一数据存储器处存储第二数据的副本;
识别第一集群的失败;以及
响应于该失败,使用第二服务器和第二数据存储器处的第一数据的副本重启该第一虚拟机,其中存储第一数据包括在正常操作模式过程中绕过第一数据存储器的缓存并直接写至第一数据存储器的磁盘,以减少数据保存在易失性存储器中的时间量。
2.一种方法,包括:
操作包括第一虚拟机和第一服务器的第一集群;
操作包括第二虚拟机和第二服务器的第二集群;
在第一集群的第一数据存储器处存储第一虚拟机的第一数据和在第二集群的第二数据存储器处存储第一数据的副本;
在第二数据存储处存储第二虚拟机的第二数据和在第一数据存储器处存储第二数据的副本;
识别第一集群的失败;以及
响应于该失败,使用第二服务器和第二数据存储器处的第一数据的副本重启该第一虚拟机,其中存储第一数据包括在配置操作模式过程中写至第一数据存取器的缓存。
3.如权利要求1或2所述的方法,其中使用第二服务器重启第一虚拟机以减少停机时间。
4.如权利要求1或2所述的方法,其中在第一数据存储器处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括并行存储在第一和第二数据存储器中的第一数据。
5.如权利要求1或2所述的方法,其中在第一数据存储器处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括使用文件级一致性以一致性方式在第一和第二数据存储器处存储第一数据。
6.如权利要求1或2所述的方法,进一步包括如果第一虚拟机用第二服务器重启,则创建一个警报。
7.如权利要求1或2所述的方法,进一步包括在解决第一集群的失败后,从用第二服务器操作第一虚拟机执行本质地实时迁移到用第一服务器操作第一虚拟机。
8.如权利要求1或2所述的方法,其中使用第二服务器和第二数据存储器处的第一数据的副本重启第一虚拟机包括使用第二服务器和在第二数据存储器处的第一数据的副本自动重启该第一虚拟机。
9.如权利要求1或2所述的方法,其中第一集群是第二集群的冗余。
10.如权利要求1或2所述的方法,进一步包括自动更新第二集群。
11.一种方法,包括:
选择第一模式以操作包括第一虚拟机和第一服务器的第一集群;
以第一模式操作第一集群包括写至第一数据存储器的缓存以存储第一虚拟机的第一数据;
选择第二模式以操作第一集群;以及
以第二模式操作第一集群包括绕过缓存并直接写至第一数据存储器的磁盘以存储第一虚拟机的第一数据。
12.如权利要求11所述的方法,其中第一模式包括配置模式并且第二模式包括弹性模式。
13.如权利要求11所述的方法,进一步包括:
选择第三模式以操作包括第二虚拟机和第二服务器的第二集群;
以第三模式操作第二集群,包括写至第二数据存储器的缓存以存储第二虚拟机的第二数据;
选择第四模式以操作第二集群;以及
以第四模式操作第二集群包括绕过缓存并直接写至第二数据存储器的磁盘以存储第二虚拟机的第二数据。
14.如权利要求13所述的方法,其中以第二模式操作第一集群进一步包括在第二集群的第二数据存储器处存储第一数据的副本并且其中操作第二集群包括在第一数据存储器处存储第二数据的副本。
15.如权利要求14所述的方法,进一步包括识别第一集群的失败并且使用第二服务器和第二数据存储器处的第一数据的副本重启第一虚拟机。
16.如权利要求15所述的方法,进一步包括如果第一虚拟机使用第二服务器重启则创建一个警报。
17.如权利要求15所述的方法,进一步包括在解决第一集群的失败后,从用第二服务器操作第一虚拟机执行本质地实时迁移到用第一服务器操作第一虚拟机。
18.如权利要求14所述的方法,其中在第一数据存储器处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括并行存储在第一和第二数据存储器中的第一数据。
19.如权利要求14所述的方法,其中在第一数据存储器处存储第一虚拟机的第一数据和在第二数据存储器处存储第一数据的副本包括使用文件级一致性以一致性方式在第一和第二数据存储器处存储第一数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361883748P | 2013-09-27 | 2013-09-27 | |
US61/883,748 | 2013-09-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104570831A CN104570831A (zh) | 2015-04-29 |
CN104570831B true CN104570831B (zh) | 2019-03-26 |
Family
ID=51901188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410673629.2A Active CN104570831B (zh) | 2013-09-27 | 2014-09-28 | 过程控制系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9483352B2 (zh) |
JP (1) | JP6503174B2 (zh) |
CN (1) | CN104570831B (zh) |
DE (1) | DE102014114108A1 (zh) |
GB (2) | GB2584232B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2834565C (en) * | 2013-11-28 | 2016-01-19 | Solutioninc Limited | Vbn server clustering system, method of vbn server clustering, and vbn server for clustering |
US9442792B2 (en) | 2014-06-23 | 2016-09-13 | Vmware, Inc. | Using stretched storage to optimize disaster recovery |
US9489273B2 (en) * | 2014-06-23 | 2016-11-08 | Vmware, Inc. | Using stretched storage to optimize disaster recovery |
TWI621942B (zh) * | 2015-01-16 | 2018-04-21 | 緯創資通股份有限公司 | 作業系統層次之工作階段容錯移轉方法以及使用該方法的系統 |
US9817734B2 (en) * | 2015-06-29 | 2017-11-14 | Vmware, Inc. | Virtual machine recovery on non-shared storage in a single virtual infrastructure management instance |
US9760398B1 (en) * | 2015-06-29 | 2017-09-12 | Amazon Technologies, Inc. | Automatic placement of virtual machine instances |
US9836367B2 (en) * | 2015-08-28 | 2017-12-05 | Netapp, Inc. | Trust relationship migration for data mirroring |
US9940154B2 (en) * | 2015-10-15 | 2018-04-10 | Netapp, Inc. | Storage virtual machine relocation |
CN105357038B (zh) * | 2015-10-26 | 2019-05-07 | 北京百度网讯科技有限公司 | 监控虚拟机集群的方法和系统 |
US10848405B2 (en) | 2017-02-08 | 2020-11-24 | Red Hat Israel, Ltd. | Reporting progress of operation executing on unreachable host |
CN110808882B (zh) * | 2019-11-06 | 2022-01-28 | 武汉联影医疗科技有限公司 | 测试系统和方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332625A (ja) * | 1993-05-27 | 1994-12-02 | Hitachi Ltd | ファイルのデータ多重化方法及びデータ処理システム |
JP2012190175A (ja) * | 2011-03-09 | 2012-10-04 | Nec Corp | フォールトトレラントシステム、サーバ、フォールトトレラント化方法およびプログラム |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2785693B1 (fr) * | 1998-11-06 | 2000-12-15 | Bull Sa | Dispositif et procede de cache disque securise en ecriture pour disques durs de sous-systeme a memoire de masse |
AU2001259342A1 (en) * | 2000-05-15 | 2001-11-26 | Superspeed Software, Inc. | System and method for high-speed substitute cache |
US6665775B1 (en) * | 2000-09-22 | 2003-12-16 | Intel Corporation | Cache dynamically configured for simultaneous accesses by multiple computing engines |
US7206836B2 (en) * | 2002-09-23 | 2007-04-17 | Sun Microsystems, Inc. | System and method for reforming a distributed data system cluster after temporary node failures or restarts |
US20040153700A1 (en) * | 2003-01-02 | 2004-08-05 | Nixon Mark J. | Redundant application stations for process control systems |
US7328366B2 (en) | 2003-06-06 | 2008-02-05 | Cascade Basic Research Corp. | Method and system for reciprocal data backup |
US7526479B2 (en) * | 2003-12-30 | 2009-04-28 | Sap Ag | Configuration manager in enterprise computing system |
US20050210318A1 (en) * | 2004-03-22 | 2005-09-22 | Dell Products L.P. | System and method for drive recovery following a drive failure |
US8365021B2 (en) * | 2005-06-17 | 2013-01-29 | Nec Corporation | Information processing device comprising a plurality of domains having a plurality of processors, recovery device, program and recovery method |
US7543182B2 (en) * | 2006-01-12 | 2009-06-02 | International Business Machines Corporation | Automated failover system for logical partitions |
US7461299B2 (en) * | 2006-03-08 | 2008-12-02 | Intel Corporation | Monitoring writes to cache as part of system error handling |
GB0611038D0 (en) * | 2006-06-02 | 2006-07-12 | Ibm | Apparatus and method for cluster recovery |
US7934069B2 (en) * | 2007-04-27 | 2011-04-26 | Hewlett-Packard Development Company, L.P. | Enabling and disabling cache in storage systems |
DE102008030317A1 (de) * | 2008-06-30 | 2009-12-31 | Trumpf Werkzeugmaschinen Gmbh + Co. Kg | System und Verfahren zur Fernkommunikation zwischen einem zentralen Computer und einer Maschinensteuerung |
EP2545452B1 (en) * | 2010-03-08 | 2017-11-29 | Hewlett-Packard Enterprise Development LP | Data storage apparatus and methods |
US8239863B2 (en) * | 2010-06-29 | 2012-08-07 | Hewlett-Packard Development Company, L.P. | Method and system for migrating a virtual machine |
WO2012047654A1 (en) * | 2010-09-27 | 2012-04-12 | Fisher-Rosemount Systems, Inc. | Methods and apparatus to virtualize a process control system |
US8499191B2 (en) * | 2010-12-17 | 2013-07-30 | Hitachi, Ltd. | Failure recovery method for information processing service and virtual machine image generation apparatus |
TWI537828B (zh) * | 2010-12-21 | 2016-06-11 | 萬國商業機器公司 | 虛擬機管理的方法及其電腦系統之裝置和電腦程式 |
CN102110071B (zh) * | 2011-03-04 | 2013-04-17 | 浪潮(北京)电子信息产业有限公司 | 一种虚拟机集群系统及其实现方法 |
US9015709B2 (en) * | 2011-03-08 | 2015-04-21 | Rackspace Us, Inc. | Hypervisor-agnostic method of configuring a virtual machine |
US8984330B2 (en) * | 2011-03-28 | 2015-03-17 | Siemens Corporation | Fault-tolerant replication architecture |
US8924967B2 (en) * | 2011-04-28 | 2014-12-30 | Vmware, Inc. | Maintaining high availability of a group of virtual machines using heartbeat messages |
CN102323943A (zh) * | 2011-09-02 | 2012-01-18 | 北京天地云箱科技有限公司 | 基于虚拟机的数据存储方法及系统 |
US9069587B2 (en) * | 2011-10-31 | 2015-06-30 | Stec, Inc. | System and method to cache hypervisor data |
US9104645B2 (en) * | 2012-07-27 | 2015-08-11 | Dell Products, Lp | System and method of replicating virtual machines for live migration between data centers |
US9032157B2 (en) * | 2012-12-11 | 2015-05-12 | International Business Machines Corporation | Virtual machine failover |
US9274818B2 (en) * | 2013-02-06 | 2016-03-01 | International Business Machines Corporation | Reliable and scalable image transfer for data centers with low connectivity using redundancy detection |
-
2014
- 2014-09-23 US US14/494,214 patent/US9483352B2/en active Active
- 2014-09-26 GB GB2012079.6A patent/GB2584232B/en active Active
- 2014-09-26 GB GB1417033.6A patent/GB2520808B/en active Active
- 2014-09-28 CN CN201410673629.2A patent/CN104570831B/zh active Active
- 2014-09-29 DE DE102014114108.3A patent/DE102014114108A1/de active Pending
- 2014-09-29 JP JP2014198691A patent/JP6503174B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332625A (ja) * | 1993-05-27 | 1994-12-02 | Hitachi Ltd | ファイルのデータ多重化方法及びデータ処理システム |
JP2012190175A (ja) * | 2011-03-09 | 2012-10-04 | Nec Corp | フォールトトレラントシステム、サーバ、フォールトトレラント化方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP6503174B2 (ja) | 2019-04-17 |
GB201417033D0 (en) | 2014-11-12 |
DE102014114108A1 (de) | 2015-04-02 |
GB2584232B (en) | 2021-03-17 |
US9483352B2 (en) | 2016-11-01 |
CN104570831A (zh) | 2015-04-29 |
GB2584232A (en) | 2020-11-25 |
US20150095692A1 (en) | 2015-04-02 |
GB202012079D0 (en) | 2020-09-16 |
GB2520808B (en) | 2020-11-25 |
GB2520808A (en) | 2015-06-03 |
JP2015069655A (ja) | 2015-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104570831B (zh) | 过程控制系统和方法 | |
US11675520B2 (en) | Application replication among storage systems synchronously replicating a dataset | |
EP3218810B1 (en) | Virtual machine cluster backup | |
US11882179B2 (en) | Supporting multiple replication schemes across distinct network layers | |
US9823973B1 (en) | Creating consistent snapshots in a virtualized environment | |
US9015121B1 (en) | Unified virtual machine and data storage snapshots | |
CN103164254B (zh) | 用于维持镜像虚拟环境中存储装置的一致性的方法和系统 | |
US9753761B1 (en) | Distributed dynamic federation between multi-connected virtual platform clusters | |
US8875134B1 (en) | Active/active storage and virtual machine mobility over asynchronous distances | |
CN115668172A (zh) | 管理复制端点的主机映射 | |
US9454417B1 (en) | Increased distance of virtual machine mobility over asynchronous distances | |
US8726083B1 (en) | Synchronized taking of snapshot memory images of virtual machines and storage snapshots | |
US11625185B2 (en) | Transitioning between replication sources for data replication operations | |
US11604705B2 (en) | System and method for cloning as SQL server AG databases in a hyperconverged system | |
US8682852B1 (en) | Asymmetric asynchronous mirroring for high availability | |
US20210303527A1 (en) | Mapping equivalent hosts at distinct replication endpoints | |
US9389968B2 (en) | Preventing non-detectable data loss during site switchover | |
US20220147490A1 (en) | Replica transitions for file storage | |
CN107111530A (zh) | 一种容灾方法、系统和装置 | |
US11853738B2 (en) | Upgrade infrastructure with integration points | |
US10970181B2 (en) | Creating distributed storage during partitions | |
US20230120586A1 (en) | Upgrade infrastucture with integration points | |
CN112100003A (zh) | 虚拟化磁盘双活容灾方法、装置和系统 | |
NZ714756A (en) | Managing replicated virtual storage at recovery sites | |
NZ714756B2 (en) | Managing replicated virtual storage at recovery sites |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |