7.2. 데이터베이스 클러스터 무결성 확인

MariaDB Galera Cluster에서 문제를 조사할 때 각 컨트롤러 노드에서 특정 wsrep 데이터베이스 변수를 확인하여 전체 클러스터의 무결성을 확인할 수 있습니다.

절차

다음 명령을 실행하고 확인할 wsrep 데이터베이스 변수로 VArichBLE을 바꿉니다.

$ sudo docker exec galera-bundle-docker-0 sudo mysql -B --password="[MYSQL-HIERA-PASSWORD]" -e "SHOW GLOBAL STATUS LIKE 'VARIABLE';"

다음 예제는 노드의 클러스터 상태 UUID를 확인하는 방법을 보여줍니다.

$ sudo docker exec galera-bundle-docker-0 sudo mysql -B --password="[MYSQL-HIERA-PASSWORD]" -e "SHOW GLOBAL STATUS LIKE 'wsrep_cluster_state_uuid';"

    +--------------------------+--------------------------------------+
    | Variable_name            | Value                                |
    +--------------------------+--------------------------------------+
    | wsrep_cluster_state_uuid | e2c9a15e-5485-11e0-0800-6bbb637e7211 |
    +--------------------------+--------------------------------------+

다음 표에는 클러스터 무결성을 확인하는 데 사용할 수 있는 wsrep 데이터베이스 변수가 나열되어 있습니다.

표 7.1. 클러스터 무결성을 확인하는 데이터베이스 변수

변수요약설명

wsrep_cluster_state_uuid

클러스터 상태 UUID

노드가 속한 클러스터의 ID입니다. 모든 노드에는 동일한 클러스터 ID가 있어야 합니다. 다른 ID를 가진 노드는 클러스터에 연결되어 있지 않습니다.

wsrep_cluster_size

클러스터의 노드 수

모든 노드에서 확인할 수 있습니다. 값이 실제 노드 수보다 작으면 일부 노드가 실패하거나 연결이 끊어진 것입니다.

wsrep_cluster_conf_id

총 클러스터 변경 수

클러스터가 여러 구성 요소( 파티션 이라고도 함)로 분할되었는지 여부를 확인합니다. 파티션은 일반적으로 네트워크 오류로 인해 발생합니다. 모든 노드는 동일한 값을 가져야 합니다.

일부 노드가 다른 wsrep_cluster_conf_id 를 보고하는 경우 wsrep_cluster_status 값을 확인하여 노드가 여전히 클러스터에 쓸 수 있는지 확인합니다(기본).

wsrep_cluster_status

기본 구성 요소 상태

노드가 클러스터에 쓸 수 있는지 여부를 확인합니다. 노드가 클러스터에 쓸 수 있는 경우 wsrep_cluster_status 값은 Primary 입니다. 다른 값은 노드가 작동하지 않는 파티션의 일부임을 나타냅니다.