HA 구성
    • PDF

    HA 구성

    • PDF

    기사 요약

    네이버 클라우드 플랫폼이 제공하는 HSM 파티션에 대한 HA 구성 방법을 설명합니다.

    HA 구성을 위한 사전 준비

    HSM HA를 구성하려면 HA를 구성하려는 타깃 HSM과 다른 Zone에 HSM을 신규 생성하고, 타깃 HSM이 연결된 클라이언트 서버에 연결을 추가해야 합니다.

    1. HA를 구성하려는 타깃 HSM이 속한 Zone과 다른 Zone에 HSM을 신규 생성해 주십시오.
      • HSM 생성 방법은 HSM 생성을 참고해 주십시오.
    2. 생성한 HSM을 HSM 클라이언트와 연결해 주십시오. 이때 HSM 클라이언트는 타깃 HSM이 연결된 HSM 클라이언트와 동일해야 합니다.
      • 타깃 HSM이 생성한 연결 정보로 들어가서 HSM Tag를 추가합니다.
      • HSM 연결을 추가하는 방법은 연결 관리를 참고해 주십시오.
    3. HSM 클라이언트로 원격 접속해 주십시오.
    4. 생성한 HSM에 대한 초기화 설정을 진행해 주십시오.
    주의

    초기화 시에 입력하는 파티션 관리자(Partition Security Officer)의 비밀번호와 도메인 네임은 HA 구성에 속하는 모든 HSM 파티션에 동일하게 적용되어야 합니다. 그렇지 않을 경우에는 HA 구성이 정상적으로 수행되지 않습니다.

    참고

    HA 구성에 대한 자세한 정보는 HSM and Partition Prerequisites를 참고해 주십시오.

    HA 설정

    HA 그룹을 생성한 후 HA 그룹의 멤버를 추가합니다. 필요시에 HA 멤버를 대기 멤버로 변경할 수 있으며, HA 그룹 멤버 간 수동 백업을 수행할 수 있습니다.
    HA 설정은 암호화 관리자 권한으로 수행할 수 있습니다.

    1. HA 그룹 생성
    2. HA 그룹 멤버 추가
    3. (필요시) HA 그룹 대기 멤버로 지정
    4. (필요시) HA 그룹 멤버 간 수동 백업

    HA 그룹 생성

    HA 그룹을 생성하는 방법은 다음과 같습니다.

    lunacm에서 hagroup creategroup 명령을 실행해 주십시오.

    • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
    • lunacm은 타깃 HSM 파티션의 일련번호(Serial Number) 앞에 '1'을 추가하여 HA 그룹의 일련번호를 생성하고, 가상 슬롯 번호를 할당한 후 자동으로 재시작합니다.
    lunacm:>hagroup creategroup -label haGroup -slot 0
    
    
       Enter the password: *********
    
    
          New group with label "haGroup" created with group number 11464895629433.
          Group configuration is:
    
             HA Group Label:  haGroup
          HA Group Number:  11464895629433
          HA Group Slot ID:  Not Available
          Synchronization: enabled
             Group Members:  1464895629433
                Needs sync:  no
          Standby Members:  <none>
    
    
    Slot #    Member S/N                      Member Label    Status
    ======    ==========                      ============    ======
       0  1464895629433                          ha-part1     alive
    
    
    Command Result : No Error
    
    lunacm (64-bit) v10.3.0-275. Copyright (c) 2020 SafeNet. All rights reserved.
    
    
       Available HSMs:
    
       Slot Id ->              0
       Label ->                ha-part1
       Serial Number ->        1464895629433
       Model ->                LunaSA 7.7.0
       Firmware Version ->     7.7.0
       Bootloader Version ->   1.1.2
       Configuration ->        Luna User Partition With SO (PW) Key Export With Cloning Mode
       Slot Description ->     Net Token Slot
       FM HW Status ->         FM Ready
    
       Slot Id ->              1
       Label ->                ha-part2
       Serial Number ->        1467067938950
       Model ->                LunaSA 7.7.0
       Firmware Version ->     7.7.0
       Bootloader Version ->   1.1.2
       Configuration ->        Luna User Partition With SO (PW) Key Export With Cloning Mode
       Slot Description ->     Net Token Slot
       FM HW Status ->         FM Ready
    
       Slot Id ->              8
       HSM Label ->            haGroup
       HSM Serial Number ->    11464895629433
       HSM Model ->            LunaVirtual
       HSM Firmware Version -> 7.7.0
       HSM Configuration ->    Luna Virtual HSM (PW) Key Export With Cloning Mode
       HSM Status ->           N/A - HA Group
    
    
    
       Current Slot Id: 0
    
    참고

    lunacm hagroup creategroup 명령어에 대한 자세한 정보는 hagroup creategroup을 참고해 주십시오.

    HA 그룹 멤버 추가

    HA 그룹 멤버를 추가하는 방법은 다음과 같습니다.

    lunacm에서 hagroup addmember 명령을 실행해 주십시오.

    • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
    lunacm:>hagroup addmember -group haGroup -slot 1
    
    
       Enter the password: *********
    
          Member 1467067938950 successfully added to group haGroup.
       New group configuration is:
    
             HA Group Label:  haGroup
          HA Group Number:  11464895629433
          HA Group Slot ID:  8
          Synchronization: enabled
             Group Members:  1464895629433, 1467067938950
                Needs sync:  no
          Standby Members:  <none>
    
    
    Slot #    Member S/N                      Member Label    Status
    ======    ==========                      ============    ======
       0  1464895629433                          ha-part1     alive
       1  1467067938950                          ha-part2     alive
    
    
          Please use the command "ha synchronize" when you are ready
          to replicate data between all members of the HA group.
          (If you have additional members to add, you may wish to wait
          until you have added them before synchronizing to save time by
          avoiding multiple synchronizations.)
    
    Command Result : No Error
    
    참고

    lunacm hagroup addmember 명령어에 대한 자세한 정보는 hagroup addmember를 참고해 주십시오.

    HA 그룹 대기 멤버로 지정

    HA 그룹 대기 멤버(standby member)는 활성 멤버(alive member)가 정상 동작하는 동안에는 암호화 작업을 수행하지 않다가 활성 멤버(alive member) 동작 실패 시에 작동하는 멤버입니다. 대기 멤버를 구성하는 것은 고가용성을 구현함에 있어서 서비스 실패 시의 서비스 연속성을 보장하기에 매우 유용합니다. HA 그룹 대기 멤버를 지정하려면 해당하는 HSM 파티션이 HA 그룹 멤버로 추가 완료된 상태여야 합니다.

    HA 그룹 멤버를 대기 멤버로 지정하는 방법은 다음과 같습니다.

    1. lunacm에서 hagroup listGroups 명령을 실행하여, 대기 멤버로 지정하려는 HSM 파티션이 HA 그룹에 소속되어 있는지 확인해 주십시오.
      • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
      lunacm:>hagroup listGroups
      
            If you would like to see synchronization data for group haGroup,
            please enter the password for the group members. Sync info
            not available in HA Only mode.
      
      
         Enter the password: **********
      
      
                  HA auto recovery:  disabled
                  HA recovery mode:  activeBasic
         Maximum auto recovery retry:  0
         Auto recovery poll interval:  60 seconds
                        HA logging:  disabled
                  Only Show HA Slots:  no
      
      
               HA Group Label:  haGroup
            HA Group Number:  11464895629488
            HA Group Slot ID:  8
            Synchronization: enabled
               Group Members:  1464895629488, 1467067939506
                  Needs sync:  no
            Standby Members:  <none>
      
      Slot #    Member S/N                      Member Label    Status
      ======    ==========                      ============    ======
         0  1464895629488                              main     alive
         1  1467067939506                            backup     alive
      
      
      Command Result : No Error
      
    2. 해당 HSM 파티션이 HA 그룹에 소속되어 있는 경우, hagroup addstandby 명령을 실행하여 대기 멤버를 지정해 주십시오.
      lunacm:>hagroup addstandby -group haGroup -serialnumber 1467067939506
      
            The member 1467067939506 was successfully added to the standby list for the HA Group haGroup.
      
      
      Command Result : No Error
      
    3. hagroup listGroups 명령을 실행하여 변경된 설정을 확인해 주십시오.
      • 대기 멤버로 지정된 HSM 파티션은 Standby Members에 멤버로 표기됩니다.
      • 조회된 정보 중 HA auto recovery: disabled는 main 파티션과 backup 파티션 간 자동 동기화가 설정되어 있지 않다는 의미입니다.
      • main 파티션과 backup 파티션 간 실시간 자동 동기화를 설정하려면 HA Only 설정이 필요합니다. 자세한 내용은 HA 전용 모드 설정 절차를 참고해 주십시오.
      • Needs sync: yes로 표시되면 수동 백업이 필요하다는 의미입니다. main 파티션과 backup 파티션 간 수동 동기화는 HA 그룹 멤버 간 수동 백업 절차를 참고해 주십시오.
      
      lunacm:>hagroup listGroups
      
            If you would like to see synchronization data for group haGroup,
            please enter the password for the group members. Sync info
            not available in HA Only mode.
      
      
         Enter the password: **********
      
      
                  HA auto recovery:  disabled
                  HA recovery mode:  activeBasic
         Maximum auto recovery retry:  0
         Auto recovery poll interval:  60 seconds
                        HA logging:  disabled
                  Only Show HA Slots:  no
      
      
               HA Group Label:  haGroup
            HA Group Number:  11464895629488
            HA Group Slot ID:  8
            Synchronization: enabled
               Group Members:  1464895629488, 1467067939506
                  Needs sync:  yes
            Standby Members:  1467067939506
      
      Slot #    Member S/N                      Member Label    Status
      ======    ==========                      ============    ======
         0  1464895629488                              main     alive
         1  1467067939506                            backup     alive
      
      
      Command Result : No Error
      
    참고

    lunacm hagroup addstandby 명령어에 대한 자세한 정보는 hagroup addstandby를 참고해 주십시오.

    HA 그룹 멤버 간 수동 백업

    HA 그룹 main 파티션에서 backup 파티션으로 데이터를 수동 백업하는 방법은 다음과 같습니다.

    1. lunacm에서 hagroup synchronize 명령을 실행해 주십시오.
      • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
      lunacm:>hagroup synchronize -g haGroup
      
      
         Enter the password: **********
      
      
            Synchronization completed.
      
      Command Result : No Error
      
    2. lunacm에서 hagroup listGroups 명령을 실행하여 변경된 설정을 확인해 주십시오.
      • 조회된 정보 중 Needs sync: no는 main 파티션에서 backup 파티션의 정보가 동기화되었다는 의미입니다. 즉, 수동 백업이 성공적으로 수행되었음을 알 수 있습니다.
      lunacm:>hagroup listGroups
      
            If you would like to see synchronization data for group haGroup,
            please enter the password for the group members. Sync info
            not available in HA Only mode.
      
      
         Enter the password: **********
      
      
                  HA auto recovery:  disabled
                  HA recovery mode:  activeBasic
         Maximum auto recovery retry:  0
         Auto recovery poll interval:  60 seconds
                        HA logging:  disabled
                  Only Show HA Slots:  no
      
      
               HA Group Label:  haGroup
            HA Group Number:  11464895629488
            HA Group Slot ID:  8
            Synchronization: enabled
               Group Members:  1464895629488, 1467067939506
                  Needs sync:  no
            Standby Members:  1467067939506
      
      Slot #    Member S/N                      Member Label    Status
      ======    ==========                      ============    ======
         0  1464895629488                              main     alive
         1  1467067939506                            backup     alive
      
      
      Command Result : No Error
      
    참고

    lunacm hagroup synchronize 명령어에 대한 자세한 정보는 hagroup synchronize를 참고해 주십시오.

    HA 전용 모드

    SafeNet Luna Client에서 HSM 정보를 조회하면 물리적 슬롯 정보와 가상 HA 그룹 슬롯 정보가 모두 조회됩니다. SafeNet Luna Client가 물리적 슬롯과 연동되면 고가용성 및 로드 밸런싱 기능이 무시됩니다. 따라서 HA 로드 밸런싱 및 이중화를 사용하려면 가상 HA 슬롯과 연동되어야 합니다.

    HA 전용 모드(HA Only 모드)에서는 물리적 슬롯이 숨겨지고 HA 그룹 슬롯만 조회되므로 PKCS#11 슬롯 번호 지정이 간소화됩니다. 또한 모든 요청과 응답이 HA 시스템에서 투명하게 처리됩니다.

    HA 그룹 멤버 파티션이 실패하고 복구되는 경우 HA 그룹 가상 슬롯을 포함한 모든 슬롯 번호가 변경될 수 있습니다. 이로 인해 응용 프로그램이 잘못된 슬롯으로 작업을 지시할 수 있습니다. HA 그룹의 물리적 슬롯이 직접 요청을 수신하면 HA 그룹의 다른 멤버 파티션으로 결과가 복제되지 않습니다.

    HA 전용 모드를 사용하도록 설정한 경우 HA 가상 슬롯은 파티션 슬롯 변경의 영향을 받지 않습니다. 따라서 HA 그룹을 실행하는 모든 클라이언트에서 HA 전용 모드를 사용하도록 설정하는 것이 좋습니다. HA 전용 모드를 사용하도록 설정한 경우에도 개별 파티션 슬롯이 LunaCM에 계속 표시되고, 클라이언트 응용 프로그램에서만 숨겨집니다. CKdemo(옵션 11) 유틸리티를 사용하여 클라이언트 응용 프로그램에 사용할 슬롯 번호를 확인할 수 있습니다.

    참고
    • SafeNet Luna Client 슬롯 번호 지정 및 동작에 관한 자세한 정보는 Slot Numbering and Behavior를 참고해 주십시오.
    • SafeNet Luna Client HA 문제 해결에 관한 자세한 정보는 HA Troubleshooting을 참고해 주십시오.
    • CKdemo 유틸리티에 대한 자세한 정보는 ckdemo를 참고해 주십시오.

    HA 전용 모드 설정

    HA 전용 모드를 설정하는 방법은 다음과 같습니다. HA 전용 모드 설정은 암호화 관리자(Crypto Officer) 권한으로 수행합니다.

    1. lunacm에서 hagroup haonly 명령을 실행하여 HA only 모드를 활성화해 주십시오.
      lunacm:>hagroup haonly -enable
      
         "HA Only" has been enabled.
      
      Command Result : No Error
      
    2. hagroup listGroups 명령을 실행하여 변경된 설정을 확인해 주십시오.
      • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
      • 설정 결과 hagroup listgroups에서 조회되던 물리적 파티션의 슬롯 번호가 사라진 것을 확인할 수 있습니다.
      • 설정 결과 HA auto recovery: 필드가 enabled로 표시되는 것을 확인할 수 있습니다.
      lunacm:>hagroup listgroups
      
            If you would like to see synchronization data for group haGroup,
            please enter the password for the group members. Sync info
            not available in HA Only mode.
      
      
         Enter the password: *********
      
      
                  HA auto recovery:  enabled
                  HA recovery mode:  activeBasic
         Maximum auto recovery retry:  5
         Auto recovery poll interval:  60 seconds
                        HA logging:  disabled
                  Only Show HA Slots:  yes
      
      
               HA Group Label:  haGroup
            HA Group Number:  11464895629433
            HA Group Slot ID:  8
            Synchronization: enabled
               Group Members:  1464895629433, 1467067938950
                  Needs sync:  no
            Standby Members:  <none>
      
      
      Slot #    Member S/N                      Member Label    Status
      ======    ==========                      ============    ======
      ------  1464895629433                          ha-part1     alive
      ------  1467067938950                          ha-part2     alive
      
    참고

    lunacm hagroup haonly 명령어에 대한 자세한 정보는 HA Only Mode를 참고해 주십시오.

    부가 설정

    HA 그룹 부가 설정 항목으로는 HA 자동 복구 설정과 HA 로깅 설정이 있습니다.

    HA 자동 복구 설정

    HA 자동 복구가 활성화되어 있을 경우 클라이언트는 HA 멤버의 장애 감지 시 주기적인 복구를 시도합니다.
    신규 HA 그룹은 HA 자동 복구가 설정되어 있지 않으므로, 자동 복구를 설정하려면 복구 시도 횟수를 설정해 주십시오. 설정 시 암호화 관리자(Crypto Officer) 권한이 필요하며, 설정이 완료되면 클라이언트에 구성된 모든 HA 그룹에 적용됩니다.

    1. lunacm에서 hagroup retry -count 명령을 실행하여 최대 복구 횟수를 설정해 주십시오.
      • 자동 복구 최대 시도 횟수를 설정함으로써 자동 복구를 활성화할 수 있습니다.
      • hagroup recoverymode -mode {activeBasic | activeEnhanced} 명령을 실행하여 자동 복구를 설정할 수 있습니다.
      • hagroup interval -interval <seconds> 명령을 실행하여 자동 복구 인터벌 타임을 설정할 수 있습니다.
      lunacm:>hagroup retry -count 5
      
         HA Auto Recovery Count has been set to 5
      
      Command Result : No Error
      
      
      참고

      lunacm hagroup retry 명령어에 대한 자세한 정보는 hagroup retry를 참고해 주십시오.
      lunacm hagroup recoverymode 명령어에 대한 자세한 정보는 hagroup recoverymode를 참고해 주십시오.
      lunacm hagroup interval 명령어에 대한 자세한 정보는 hagroup interval를 참고해 주십시오.

    2. hagroup listGroups 명령을 실행하여 HA 그룹 설정 정보를 확인해 주십시오.
      • 비밀번호를 입력하라는 프롬프트가 나오면 암호화 관리자(Crypto Officer)의 비밀번호를 입력합니다.
      • 조회 결과 HA auto recovery: enabled, HA recovery mode: activeBasic, Maximum auto recovery retry: 5, Auto recovery poll interval: 60 seconds 등 자동 복구 설정 내용을 확인할 수 있습니다.
      lunacm:>hagroup listgroups
      
            If you would like to see synchronization data for group haGroup,
            please enter the password for the group members. Sync info
            not available in HA Only mode.
      
      
         Enter the password: *********
      
      
                  HA auto recovery:  enabled
                  HA recovery mode:  activeBasic
         Maximum auto recovery retry:  5
         Auto recovery poll interval:  60 seconds
                        HA logging:  disabled
                  Only Show HA Slots:  no
      
      
               HA Group Label:  haGroup
            HA Group Number:  11464895629433
            HA Group Slot ID:  8
            Synchronization: enabled
               Group Members:  1464895629433, 1467067938950
                  Needs sync:  no
            Standby Members:  <none>
      
      
      Slot #    Member S/N                      Member Label    Status
      ======    ==========                      ============    ======
         0  1464895629433                          ha-part1     alive
         1  1467067938950                          ha-part2     alive
      
      
      Command Result : No Error
      

    HA 로깅 설정

    HA 로깅 설정이 활성화되면 클라이언트는 HA 관련 이벤트를 로그로 기록합니다. HA 관련 이벤트에는 HA 오류뿐만 아니라 멤버 추가 및 삭제 이벤트도 포함됩니다. 단, 그룹 추가나 제거와 같이 HA 그룹 전체에 해당하는 이벤트는 기록하지 않습니다.

    • 로그 파일명: haErrorLog.txt

    로깅 시작

    Luna HSM Client 7.2.0 버전 이상일 경우, 신규 HA 그룹 생성 시에 로깅 기능이 자동으로 활성화되나 경로가 설정되어 있지 않아 정식으로 동작하지 않습니다.
    로깅을 시작하려면 haLogPath 값에 정상 경로를 설정해야 합니다.

    Chrystoki.conf 파일에 다음의 설정을 추가해 주십시오.

    HAConfiguration = {
       haLogStatus = enabled;
       HAOnly = 1;
    }
    

    로그 파일 저장 경로 설정

    로그 파일을 저장할 경로를 설정하고 확인하는 방법은 다음과 같습니다.

    1. lunacm에서 hagroup halog -path 명령을 실행하여 로그 파일 저장 경로를 설정해 주십시오.
      lunacm:>hagroup halog -path "/opt/hsm/log/lunaclientLog"
      
         HA Log path successfully set to /opt/hsm/log/lunaclientLog.
      
      Command Result : No Error
      
    2. hagroup halog -show 명령을 실행하여 로그 파일의 경로와 용량을 확인해 주십시오.
      lunacm:>hagroup halog -show
      
               HA Log: enabled
            Log File: /opt/hsm/log/haErrorLog.txt
      Max File Length: 262144 bytes
      
      
      Command Result : No Error
      
    참고
    • lunacm hagroup halog 명령어에 대한 자세한 정보는 hagroup halog를 참고해 주십시오.
    • 로그 메시지에 대한 자세한 정보는 HA Logging을 참고해 주십시오.

    이 문서가 도움이 되었습니까?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.