Section | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
MCCS 특징 및 장점
MCCS는 다음과 같은 특징 및 장점을 가지고 있습니다.
서비스 레벨의 장애 감지와 자동화된 페일오버 제공
MCCS는 하드웨어의 장애뿐만 아니라 서비스 제공에 필요한 자원들(예를 들면 네트워크 접속, 응용프로그램 구동, 플랫폼 상태, 디스크 접속 등)에 대해서 정상적인 상태인지를 항상 감시하고 관리합니다.
따라서 해당 자원들에 대해 장애 상태가 감지되어 정상적인 서비스 제공이 불가능한 경우에는 유연한 복구 정책에 따라 자동적으로 서비스를 재구동 시키거나 다른 가용 서버로 페일오버 시키게 됩니다.
로컬 디스크 복제(Mirroring) 및 공유(Shared) 디스크 환경 지원
MCCS는 로컬 디스크 복제 환경과 공유 디스크 환경 모두를 지원합니다. 그러므로 사용자에게 디스크 시스템 환경 구성에 보다 나은 유연성을 제공합니다.
페일오버 그룹(Failover Group) 구성 지원
한번에 한 노드에서만 실행될 수 있는 리소스를 포함한 그룹을 페일오버 그룹이라고 합니다.
페일오버 그룹은 중요 자원 장애시 대기 노드로 서비스가 전환됩니다. 이 그룹에 포함된 자원은 운영 노드에서만 동작합니다.
예를 들면 IP Address 의 경우 운영 노드와 대기 노드로 동시에 사용될 수 없습니다. 또한 IP Address가 장애인 경우 대기 노드로 서비스가 전환됩니다.
병렬 그룹(Parallel Group) 구성 지원
두 개 이상의 노드에서 동시에 실행될 수 있는 리소스로 구성된 그룹을 병렬 그룹이라고 합니다. 병렬 그룹은 페일오버 하지 않습니다.
일반적으로 클러스터로 구성된 응용프로그램을 포함한 리소스들은 운영 노드에서 실행(Online)중일 때는 대기 노드에서는 정지(Offline)된 상태로 있습니다. 그러나 병렬 그룹으로 구성하는 경우에는 지정한 응용프로그램을 양 쪽 노드에서 동시에 시작, 감시, 종료 등을 행할 수 있습니다.
예를 들면 양 쪽 노드에서 백업 소프트웨어를 운영하고 있고 이를 클러스터에서 관리하는 리소스로서 등록하는 경우, 필요하다면 백업 소프트웨어를 양 쪽 노드에서 항상 동시에 실행하는 상태로 운영할 수 있습니다. (단, 해당 프로그램이 복수의 노드에서 병렬로 실행될 수 있어야 합니다.)
다중 그룹(Multi-Group) 환경 구성 지원
그룹은 MCCS에서 장애 감시, 복구, 페일오버 등을 위해 관리하는 자원들(예를 들면 네트워크 카드, IP 주소, 디스크, 응용프로그램 등)을 의존성에 따라 묶어 놓은 집합체이며, 페일오버가 되는 리소스들의 집합 단위입니다.
하나의 클러스터 안에는 여러 개의 그룹 구성이 가능합니다. 이 때문에 운영/대기(Active/Standby), 운영/운영(Active/Active) 구성이 가능합니다. (Active/Active는 각각의 서버에서 다른 서비스를 운영하는 것을 의미합니다.)
MCCS는 페일오버 그룹과 병렬 그룹을 동시에 지원합니다. 다중 그룹 환경에서 각각의 그룹은 독립적으로 운영됩니다.
하드웨어 호환성
MCCS는 특정 하드웨어의 제조사 또는 모델에 영향을 받지 않는 범용의 솔루션입니다.
원격 재해 복구 시스템 구성
MCCS는 시스템의 위치에 관계 없이 고가용성 구성을 행합니다. 따라서 대기 시스템을 원격지에 위치함으로써 추가 비용 없이 재해 복구 시스템을 쉽게 구성할 수 있습니다.
원격 관리 콘솔(Remote Management Console) 제공
MCCS는 콘솔을 통하여 로컬 서버 혹은 원격 서버에서 MCCS를 제어, 관리할 수 있습니다. 원격 서버에서는 TCP/IP와 포트 정보를 통해 MCCS가 구성된 서버로 연결할 수 있으며, 별도의 환경 파일을 구성할 필요가 없습니다. (기본 접속 url은 'http://ipaddress:10080/main' 입니다)
두 노드 환경 지원
MCCS는 2대의 서버 환경을 지원 합니다. (3대 이상의 클러스터링 환경은 ㈜맨텍으로 문의해 주시기 바랍니다.)
MCCS 구성 형태
MCCS 구성은 데이터에 대한 디스크 구성 형태에 따라 다음과 같이 구분할 수 있습니다.
일반 응용 프로그램 환경
서비스에 필요한 데이터가 클러스터에 속한 시스템이 아닌 다른 시스템에 존재하는 경우입니다. 서비스가 관리해야 하는 데이터가 없으므로 디스크 리소스를 구성할 필요가 없습니다. 일반적으로 응용 프로그램만 존재하는 환경입니다.
[그림] 일반 응용 프로그램 환경
공유 디스크 환경
이중화가 구성되는 서버에 공유 디스크(SCSI 또는 SAN)가 연결되어 있습니다. 각 서버에서는 데이터를 공유할 수 있으며 공유 디스크는 MCCS 에 의해 관리됩니다.
[그림] 공유 디스크 환경
미러 디스크 환경
서버에 각각의 로컬 디스크가 존재하며 데이터는 상대 노드의 디스크로 실시간 복제 됩니다. 디스크 복제의 최소 단위는 파티션 단위입니다. (권장 사항 : 볼륨 단위)
[그림] 미러 디스크 환경
MCCS 구성 요소
MCCS 의 기본적인 구성 요소는 다음과 같습니다.
클러스터
클러스터는 상호 이중화를 목적으로 상태 정보를 교환하는 노드들의 집합을 의미합니다.
MCCS는 2대의 시스템을 클러스터로 구성할 수 있습니다. 또한 서로의 통신을 위해 라인(핫빗 네트워크)을 별도로 연결해서 사용하고 TCP/IP를 이용하여 데이터를 전달합니다.
노드
노드는 MCCS가 설치된 물리적 혹은 가상 시스템을 의미합니다.
노드 이름은 물리적 혹은 가상 시스템의 호스트명과 반드시 동일할 필요는 없으며, 가상의 별칭으로 설정할 수 있습니다. 별칭과 실제 노드의 매핑은 노드에 등록된 핫빗 네트워크 주소에 의해 결정됩니다.
노드 상태는 MCCS 엔진 상태와 연관이 있습니다. MCCS가 운영 중일 때는 MCCS로부터 노드 상태 정보를 받고, 그 이외에는 ICMP 테스트에 의해 노드 상태를 결정합니다.
핫빗(Heartbeat)
노드들은 핫빗 네트워크를 통하여 하나의 클러스터로 구성됩니다.
노드들이 핫빗을 통하여 동기화되면 노드들 사이에 서비스 운영과 대기 역할은 노드들의 상태와 노드의 리소스 상태에 따라 결정되고, 발생하는 이벤트에 의해 명령을 전달하고 실행합니다.
상태 정보 동기화
클러스터로 구성된 노드들의 리소스 및 리소스 그룹에 대한 상태와 속성 정보들을 교환합니다.
포트 구성
MCCS는 핫빗 통신을 할 때 4개의 포트를 사용합니다. 환경을 구성할 때 등록한 포트를 기준으로 4개의 연결된 TCP 포트(기본값은 14321~14324) 와 ICMP Echo Request 를 사용합니다.
노드 상태 확인
MCCS는 원격 노드의 장애를 결정할 때 핫빗 연결 상태를 참조합니다. 원격 노드와의 모든 핫빗 연결이 단절되면 해당 노드를 장애로 결정합니다. 따라서 핫빗 네트워크의 장애는 노드 장애로 결정될 수 있기 때문에 이중화할 필요가 있습니다.
노드 상태 확인에 대한 자세한 내용은 "MCCS 사용자 안내서의 7.노드에서 MCCS 동작 원리"를 참조해 주십시오.
노드간 명령 전달
리소스의 구성 변경 또는 리소스 및 그룹 제어와 같은 명령이 콘솔 또는 CLI를 통해 접수되면 MCCS는 핫빗을 통해 이 명령을 상대 노드로 전달합니다.
리소스
리소스는 MCCS에 의해서 관리되는 서비스 자원 (예를 들어 네트워크 카드, IP 주소, 디스크, 응용 프로그램 등)을 말합니다.
MCCS는 리소스들의 상태를 감시하거나 서비스를 제어할 수 있습니다.
리소스는 동작 형태에 따라 네트워크 카드와 같은 감시 전용 리소스와 프로세스와 같은 시작/종료형 리소스가 있으며, 감시 전용 리소스는 상태 감지만 가능하며, 시작/종료 기능은 수행하지 않습니다.
리소스 타입
MCCS에서 지원하는 리소스는 다음과 같이 분류됩니다.
네트워크카드
MCCS 는 TCP/IP 기반 네트워크 연결을 모니터 합니다. 일시적인 연결 장애나 네트워크 어댑터, 케이블의 네트워크에 장애를 감지합니다.
네트워크주소
MCCS 는 전환가능한 노드안의 네트워크 장치 위에서 가상 IP 주소와 서브넷 마스크를 구성하고 가상 IP 주소를 감시하며 노드의 실제 IP 주소와 같은 방식으로 동작합니다.
가상 IP 주소를 할당할 네트워크 카드의 실제 IP 주소는 정적이어야 합니다.
기본 응용
단일 실행 파일 형태의 프로세스를 등록할 때 사용하며, MCCS는 운영 체제의 프로세스 테이블에 등록된 프로세스 이름의 존재 여부를 체크해서 장애를 감지합니다.
복합 응용
기본 응용과 달리 여러 개의 프로세스로 이루어진 응용 프로그램 또는 톰캣과 같이 스크립트로 실행해야 하는 응용 프로그램 등을 등록할 때에 사용합니다.
단순히 실행 파일만을 감지하지 않고, 프로세스에 대한 시작/종료/감지 기능을 수행하는 스크립트 명령을 이용하여 사용자가 원하는 방법으로 정상적인 동작을 감시하고자 할 경우에도 복합 응용으로 등록하여 사용합니다.
공유 디스크
디스크 잠금(Lock) 기법이 적용된 MCCS의 외장 공유 디스크 제어 모듈은 항상 서비스가 운영중인(Active) 서버에 대해서만 공유 디스크의 접근을 허용합니다.
미러 디스크
외장 공유 디스크가 없는 구성 환경에서 사용하며, 별도의 복제 모듈을 이용하여 두 대의 시스템 간 로컬 디스크를 복제합니다. MCCS는 DRBD 를 복제 기능 소프트웨어로 제공하고 있습니다.
서비스
서비스는 운영체제의 서비스 매니저에 등록된 프로세스 혹은 프로세스 그룹입니다.
스카시예약
스카시예약 에이전트는 SCSI3-PR(Persistent Reservation) 이라는 스토리지가 지원하는 SAN 프로토콜을 사용하여 LUN 단위의 Lock 을 관리합니다.
이 기능은 클러스터의 모든 노드가 다른 노드의 상태를 알 수 없을 때 데이터 손상을 방지합니다.
리소스 그룹
서로 연관(의존) 관계에 있는 리소스들의 집합으로 페일오버가 이루어지는 기본 단위입니다.
예를 들어 ORACLE 서비스에 대한 페일오버 구성을 하기 위해서는 ORACLE 클라이언트가 접속하는 IP 주소, IP 주소가 할당되는 네트워크 카드, 데이터가 저장될 디스크, ORACLE 리스너와 ORACLE 서버를 하나의 리소스 그룹으로 묶어야 합니다.
IP 주소는 네트워크 카드에 의존하며, ORACLE 리스너와 ORACLE 서버는 데이터가 존재하는 디스크에 의존하는 관계로 그룹을 구성해야 합니다.
IP 주소의 경우, 네트워크 카드 없이는 등록이 불가능하며, ORACLE 관련 프로세스도 데이터가 저장된 디스크 없이는 구동이 불가능하기 때문입니다.
그룹은 서비스의 페일오버 여부에 따라 병렬형과 페일오버형으로 나뉘어집니다.
병렬형과 페일오버형에 대한 설명은 "MCCS 사용자 안내서의 4.리소스 그룹"을 참조해 주십시오.
...
Features of MCCS
MCCS has the following features.
Service Level Fault Detection and Automatic Failover
MCCS not only detect on hardware, but it also offers detection on resources (such as network connection, application, platform, disk, etc) as well.
Therefore, if the managed resources are not working properly, it will be either restarted or failovered to the standby server according to the defined action policies.
Support External Shared Storage and Local Disk Replication Environment
MCCS supports both local disk replication and shared disk environment. Thus, it provides enhanced flexibility to make equip any type of storage for the user.
Support Failover Group
Failover group is including the resources that can be run on only one node at a time.
Application will be switch over to standby node at critical reource is failed in a failover group.
The resources that included group are online only available node.
For example, IP Address is not onlined on an active node and standby node at same the time.
Therefore, when IP address is get failed, it and its related resources will be fail over to the standby node.
Support Parallel Group
Parallel group is a group of resources that are taken online on more than two nodes at the same time. Parallel group cannot failover.
The opposition of this is Failover Group. The group can be online on a node in a cluster within a failover group.
However, when configured through parallel group, specified application can be online, monitored and terminated on the multiple nodes at the same time in a cluster.
For example, user would like to run backup software on both nodes and be managed by the MCCS, backup software should be online on both nodes at the same time.
You can use parallel group instead of failover group for this.
Support Multi Group
Group is a set of collected resources dependent on one another to manage resources (ex. Network Card, IP address, disk application etc.) such as failure monitoring, recovery, failover within MCCS. It is also a set of resource to failover.
MCCS can configure more than one group in a cluster. Thus, a configuration of Active/Passive, Active/Active is made possible. (Active/Active means different services on different server)
You can configure parallel and failover goup at the same time. Each group will be managed independently by MCCS in a multi-group environment.
Cluster between Heterogeneous Platforms
MCCS is not influenced greatly by the hardware compatibility in a cluster.
Thus, there is no need to use the exact same hardware between the nodes in a cluster.
Remote Disaster Recovery
MCCS is a high availability that can be configured with no distance limitation between nodes.
That means standby server can be easily configured on a remote site without extra charge.
Offers Remote Management Web Console
MCCS allows user to use a web browser to control MCCS from a local server or remote server.
At each server, you can connect to the server where MCCS is configured. There is no need to configure an additional environment file.
(Default access URL is 'http://ipaddress:10080/main'.)
MCCS Configuration
MCCS Configuration is distinguished according to the disk configuration of data as listed below.
Generic Application Environment
In a generic application environment, data needed for service is not in the system that has cluster but exists in other system.
ㅇSince data does not exist, there is no need to configure disk resource. Only application program exists in general in this environment.
[Figure] Basic Application Environment
Shared Disk Environment
Shared disk (SCSI or SAN) is connected to both servers physically.
MCCS attaches the file system on shared disk to the only active server and lock to the standby server to prevent file system corruption.
[Figure] Shared Disk Environment
MirrorDisk Environment
Each local disk exists in each server and data is replicated real-time to the disk of another node.
Least unit of disk replication is in partition unit. (Recommended unit : LUN)
[Figure] Mirror Disk Environment
MCCS Component
MCCS basically has the following components.
Cluster
Cluster is a set of nodes exchanging state information for redundant purpose.
MCCS can configure cluster within two systems. In addition, additional Ethernet network connection which is called heartbeat is used to communicate between two systems, and TCP/IP is used to send the status information.
Node
Node is a physical or virtual computer system with a MCCS installed and running.
Node name does not need to exactly the same with the hostname of the system, and can be set as an alias in the Cluster. Mapping between alias and the hostname is decided by its heartbeat network address.
Node state is related to the engine state of MCCS. Node state information is collected from MCCS when MCCS is, and when MCCS is not running, node state information is collected through ICMP test.
Heartbeat
Nodes are configured as a cluster through the communication path called heartbeat.
When nodes are synchronized the status of each nodes through heartbeat, service operation between nodes and standby role is decided by state and resource state of the nodes, and command will be sent through the event.
Synchronizing State Information
It exchanges state and attribute information of the resource and resource group of node configured with cluster.
Communication Port
MCCS uses 4 TCP ports for heartbeat connection. Default values are 14321 ~ 14324 and ICMP Echo Request
Check the state of a node
MCCS refers to heartbeat connection when determine a fault of remote node. If all the heartbeat connection is disconnected from the remote node, it is considered as a failure.
Therefore, redundant heartbeat connection is strongly recommended because failure on heartbeat network can result in node failure.
(Please refer to "4-Node of MCCS UserGuide" for more details about node state)
Sending command between nodes
Commands such as changing configuration of resource or control resource and group can be done through using Web console or CLI. MCCS uses heartbeat line to send commands to another node.
Resource
Resources are hardware and software components, such as network interface cards (NICs), IP address, applications, disk and etc managed by MCCS.
MCCS can monitor the state of resources and can control which are bring service online, take offline, enable and disable those.
There are two categories of resources in MCCS which are ‘PERSISTENT’ and ‘ON-OFF’. Most resources such as IP address, disk, process and service are ON-OFF which MCCS bring online and offline based on management policies.
On the contrary, a PERSISTENT resource such as NIC cannot be brought online or taken offline by MCCS and only monitored the status and operation.
Resource Type
Resources that managed by MCCS are classified as below..
Network Interface Card
MCCS monitor the TCP/IP based network connectivity. It detects the network unplug, ethernet adapter failure, or cable failure.
IP Address
MCCS manages virtual IP address and subnet mask which will be assigned on a NIC and switchable node to node in case it reacts in the same manner as the node's real IP address.
A real IP address which is static must be set in the NIC to add on a virtual IP address.
Process
Process is used when register single execution file. MCCS detects the failures by checking if the process name exists in the process table of operating system.
Application
It is similar to process. But this is more complicated. Application works with several application or scripts such as tomcat.
MCCS does only detect on execution file, but it also brings online/ take offline/monitor the process by using pre-defined script.
Shared Disk
MCCS monitors the status of I/O path for a node connected to the external shared storage.
Mirror Disk
When there is no shared disk in a cluster, data is saved in local or the direct-connected storage.
In such an environment, TCP/IP based mirror components are used to copy the changed data.
Service
Service is a component that is managed by Linux Service Module.
SCSI-LOCK
SCSI-LOCK uses SAN protocol which is called SCSI-3 PR(Persistent Reservation).
This is needed to prevent any data corruption which enable only one node can access a disk volume in environment where disk volumes are shared between nodes.
Oracle database
This resource controls the Oracle database.
It detects the Oracle database installed on the system, controls the service and monitors the status.
Oracle Listener
This resource controls the listener process of the Oracle DB.
Resource Group
Resource group is a set of resources with dependency and MCCS failover the entire resources in a group.
For example, to manage the ORACLE service by MCCS, IP address that is connected by client, network interface card, disks which database is stored, ORACLE listener and server service must be enclosed by a unit which is called as Group.
Group should be configured as IP address dependent on network interface card, ORACLE server dependent on disk where database is stored, ORACLE listener dependent on ORACLE server to provide proper service.
IP address cannot be assigned without network interface card, process related to ORACLE can be bring online after disk completed online. If there is more than a group defined on a cluster, one group will failover without affecting the other groups.
There are two types, parallel and failover group, according to the service.
Please refer to "5. Resource Group of MCCS User Guide" for more details about parallel and failover group.