Udostępnij za pośrednictwem


Konfigurowanie bazy danych dla narzędzia migawek spójnych aplikacja systemu Azure

Ten artykuł zawiera przewodnik konfigurowania bazy danych i wymagań wstępnych bazy danych do użycia z narzędziem aplikacja systemu Azure spójnych migawek (AzAcSnap), którego można używać z usługą Azure NetApp Files lub Azure Large Instances.

Włączanie komunikacji z bazą danych

W tej sekcji wyjaśniono, jak włączyć komunikację z bazą danych. Użyj poniższych kart, aby poprawnie wybrać używaną bazę danych.

Jeśli wdrażasz na scentralizowanej maszynie wirtualnej, musisz zainstalować i skonfigurować klienta SAP HANA, aby użytkownik AzAcSnap mógł uruchamiać hdbsql polecenia i hdbuserstore uruchamiać polecenia. Klienta SAP HANA można pobrać z witryny internetowej SAP Development Tools.

Narzędzia migawek komunikują się z platformą SAP HANA i potrzebują użytkownika z odpowiednimi uprawnieniami, aby zainicjować i zwolnić punkt zapisywania bazy danych. W poniższym przykładzie przedstawiono konfigurację użytkownika oprogramowania SAP HANA 2.0 oraz hdbuserstore komunikację z bazą danych SAP HANA.

Poniższe przykładowe polecenia konfigurują użytkownika (AZACSNAP) w bazie danych SYSTEMDB w bazie danych SAP HANA 2.0. W razie potrzeby zmień adres IP, nazwy użytkowników i hasła.

  1. Nawiązywanie połączenia z bazą danych SYSTEMDB:

    hdbsql -n <IP_address_of_host>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD>
    
    Welcome to the SAP HANA Database interactive terminal.
    
    Type: \h for help with commands
    \q to quit
    
    hdbsql SYSTEMDB=>
    
  2. Utwórz użytkownika. W tym przykładzie zostanie AZACSNAP utworzony użytkownik w bazie danych SYSTEMDB:

    hdbsql SYSTEMDB=> CREATE USER AZACSNAP PASSWORD <AZACSNAP_PASSWORD_CHANGE_ME> NO FORCE_FIRST_PASSWORD_CHANGE;
    
  3. Przyznaj użytkownikowi uprawnienia. W tym przykładzie ustawiono uprawnienie użytkownika AZACSNAP , aby umożliwić wykonywanie migawki magazynu spójnej z bazą danych:

    • W przypadku wersji sap HANA do wersji 2.0 SPS 03:

      hdbsql SYSTEMDB=> GRANT BACKUP ADMIN, CATALOG READ TO AZACSNAP;
      
    • W przypadku wersji SAP HANA z wersji 2.0 SPS 04 oprogramowanie SAP dodało nowe szczegółowe uprawnienia:

      hdbsql SYSTEMDB=> GRANT BACKUP ADMIN, DATABASE BACKUP ADMIN, CATALOG READ TO AZACSNAP;
      
  4. Opcjonalnie: Uniemożliwiaj wygasanie hasła użytkownika.

    Uwaga

    Przed wprowadzeniem tej zmiany sprawdź zasady firmowe.

    Poniższy przykład wyłącza wygaśnięcie hasła dla AZACSNAP użytkownika. Bez tej zmiany hasło użytkownika może wygasnąć i uniemożliwić prawidłowe wykonywanie migawek.

    hdbsql SYSTEMDB=> ALTER USER AZACSNAP DISABLE PASSWORD LIFETIME;
    
  5. Skonfiguruj bezpieczny magazyn użytkowników sap HANA (zmień hasło). W tym przykładzie hdbuserstore użyto polecenia z powłoki systemu Linux do skonfigurowania bezpiecznego magazynu użytkowników sap HANA:

    hdbuserstore Set AZACSNAP <IP_address_of_host>:30013 AZACSNAP <AZACSNAP_PASSWORD_CHANGE_ME>
    
  6. Sprawdź, czy poprawnie skonfigurowaliśmy bezpieczny magazyn użytkowników sap HANA. Użyj polecenia , hdbuserstore aby wyświetlić listę danych wyjściowych, podobnie jak w poniższym przykładzie. Więcej informacji na temat korzystania z usługi hdbuserstore jest dostępnych w witrynie internetowej SAP.

    hdbuserstore List
    
    DATA FILE : /home/azacsnap/.hdb/sapprdhdb80/SSFS_HDB.DAT
    KEY FILE : /home/azacsnap/.hdb/sapprdhdb80/SSFS_HDB.KEY
    
    KEY AZACSNAP
    ENV : <IP_address_of_host>:
    USER: AZACSNAP
    

Używanie protokołu SSL do komunikacji z platformą SAP HANA

Moduł AzAcSnap używa polecenia platformy SAP HANA do komunikowania hdbsql się z platformą SAP HANA. Korzystanie hdbsql z opcji PROTOKOŁU SSL umożliwia szyfrowanie komunikacji z platformą SAP HANA.

Podczas korzystania z opcji AzAcSnap zawsze są używane azacsnap --ssl następujące opcje:

  • -e: włącza szyfrowanie TLS/SSL. Serwer wybiera najwyższy dostępny.
  • -ssltrustcert: określa, czy należy zweryfikować certyfikat serwera.
  • -sslhostnameincert "*": określa nazwę hosta, który weryfikuje tożsamość serwera. Po określeniu "*" jako nazwy hosta nazwa hosta serwera nie jest weryfikowana.

Komunikacja SSL wymaga również plików magazynu kluczy i magazynu zaufania. Te pliki mogą być przechowywane w domyślnych lokalizacjach w instalacji systemu Linux. Jednak w celu zapewnienia, że odpowiedni materiał klucza jest używany w różnych systemach SAP HANA (w przypadkach, w których pliki magazynu kluczy i magazynu zaufania są używane dla każdego systemu SAP HANA), AzAcSnap oczekuje, że pliki magazynu kluczy i magazynu zaufania będą przechowywane w securityPath lokalizacji. Plik konfiguracji AzAcSnap określa tę lokalizację.

Pliki magazynu kluczy

Jeśli używasz wielu identyfikatorów systemowych (SID) z tym samym materiałem klucza, łatwiej jest utworzyć łącza do securityPath lokalizacji zdefiniowanej w pliku konfiguracji AzAcSnap. Upewnij się, że te wartości istnieją dla każdego identyfikatora SID korzystającego z protokołu SSL.

  • Dla elementu openssl: ln $HOME/.ssl/key.pem <securityPath>/<SID>_keystore
  • Dla elementu commoncrypto: ln $SECUDIR/sapcli.pse <securityPath>/<SID>_keystore

Jeśli używasz wielu identyfikatorów SID z różnymi materiałami klucza na identyfikator SID, skopiuj (lub przenieś i zmień nazwę) pliki do lokalizacji zgodnie z definicją securityPath w pliku konfiguracji AzAcSnap identyfikatora SID.

  • Dla elementu openssl: mv key.pem <securityPath>/<SID>_keystore
  • Dla elementu commoncrypto: mv sapcli.pse <securityPath>/<SID>_keystore

Gdy polecenie AzAcSnap wywołuje hdbsqlmetodę hdbsql , dodaje -sslkeystore=<securityPath>/<SID>_keystore ją do wiersza polecenia.

Pliki magazynu zaufania

Jeśli używasz wielu identyfikatorów SID z tym samym materiałem klucza, utwórz twarde linki do securityPath lokalizacji zdefiniowanej w pliku konfiguracji AzAcSnap. Upewnij się, że te wartości istnieją dla każdego identyfikatora SID korzystającego z protokołu SSL.

  • Dla elementu openssl: ln $HOME/.ssl/trust.pem <securityPath>/<SID>_truststore
  • Dla elementu commoncrypto: ln $SECUDIR/sapcli.pse <securityPath>/<SID>_truststore

Jeśli używasz wielu identyfikatorów SID z różnymi materiałami klucza na identyfikator SID, skopiuj (lub przenieś i zmień nazwę) pliki do securityPath lokalizacji zgodnie z definicją w pliku konfiguracji AzAcSnap identyfikatora SID.

  • Dla elementu openssl: mv trust.pem <securityPath>/<SID>_truststore
  • Dla elementu commoncrypto: mv sapcli.pse <securityPath>/<SID>_truststore

Składnik <SID> nazw plików musi być identyfikatorem systemu SAP HANA we wszystkich wielkich literach (na przykład H80 lub PR1). Gdy polecenie AzAcSnap wywołuje hdbsqlmetodę , dodaje -ssltruststore=<securityPath>/<SID>_truststore ją do wiersza polecenia.

Jeśli uruchomisz polecenie azacsnap -c test --test hana --ssl openssl, gdzie SID znajduje się H80 w pliku konfiguracji, wykonuje hdbsqlpołączenia w następujący sposób:

hdbsql \
    -e \
    -ssltrustcert \
    -sslhostnameincert "*" \
    -sslprovider openssl \
    -sslkeystore ./security/H80_keystore \
    -ssltruststore ./security/H80_truststore
    "sql statement"

W poprzednim kodzie znak ukośnika odwrotnego (\) jest zawijającym wierszem polecenia, aby poprawić przejrzystość wielu parametrów przekazywanych w wierszu polecenia.

Konfigurowanie bazy danych

W tej sekcji opisano sposób konfigurowania bazy danych.

Konfigurowanie oprogramowania SAP HANA

Istnieją zmiany, które można zastosować do platformy SAP HANA, aby chronić kopie zapasowe dzienników i wykaz. Domyślnie i basepath_catalogbackup są ustawione tak, basepath_logbackup aby platforma SAP HANA umieściła powiązane pliki w $(DIR_INSTANCE)/backup/log katalogu. Jest mało prawdopodobne, że ta lokalizacja znajduje się na woluminie skonfigurowanym do tworzenia migawki przez moduł AzAcSnap, więc migawki magazynu nie będą chronić tych plików.

W poniższych hdbsql przykładach poleceń pokazano ustawianie ścieżek dziennika i katalogu do lokalizacji na woluminach magazynu, które może migawek zawierać azAcSnap. Upewnij się, że wartości w wierszu polecenia są zgodne z lokalną konfiguracją platformy SAP HANA.

Konfigurowanie lokalizacji kopii zapasowej dziennika

W tym przykładzie przedstawiono zmianę parametru basepath_logbackup :

hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_logbackup') = '/hana/logbackups/H80' WITH RECONFIGURE"

Konfigurowanie lokalizacji kopii zapasowej katalogu

W tym przykładzie pokazano zmianę parametru basepath_catalogbackup . Najpierw upewnij się, że basepath_catalogbackup ścieżka istnieje w systemie plików. Jeśli nie, utwórz ścieżkę o tej samej własności co katalog.

ls -ld /hana/logbackups/H80/catalog
drwxr-x--- 4 h80adm sapsys 4096 Jan 17 06:55 /hana/logbackups/H80/catalog

Jeśli musisz utworzyć ścieżkę, poniższy przykład tworzy ścieżkę i ustawia poprawną własność i uprawnienia. Należy uruchomić te polecenia jako katalog główny.

mkdir /hana/logbackups/H80/catalog
chown --reference=/hana/shared/H80/HDB00 /hana/logbackups/H80/catalog
chmod --reference=/hana/shared/H80/HDB00 /hana/logbackups/H80/catalog
ls -ld /hana/logbackups/H80/catalog
drwxr-x--- 4 h80adm sapsys 4096 Jan 17 06:55 /hana/logbackups/H80/catalog

Poniższy przykład zmienia ustawienie platformy SAP HANA:

hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_catalogbackup') = '/hana/logbackups/H80/catalog' WITH RECONFIGURE"

Sprawdzanie lokalizacji kopii zapasowych dziennika i katalogu

Po wprowadzeniu zmian w lokalizacjach kopii zapasowych dziennika i katalogu upewnij się, że ustawienia są poprawne, używając następującego polecenia.

W tym przykładzie ustawienia są wyświetlane jako SYSTEM ustawienia. To zapytanie zwraca DEFAULT również ustawienia porównania.

hdbsql -jaxC -n <HANA_ip_address> - i 00 -U AZACSNAP "select * from sys.m_inifile_contents where (key = 'basepath_databackup' or key ='basepath_datavolumes' or key = 'basepath_logbackup' or key = 'basepath_logvolumes' or key = 'basepath_catalogbackup')"
global.ini,DEFAULT,,,persistence,basepath_catalogbackup,$(DIR_INSTANCE)/backup/log
global.ini,DEFAULT,,,persistence,basepath_databackup,$(DIR_INSTANCE)/backup/data
global.ini,DEFAULT,,,persistence,basepath_datavolumes,$(DIR_GLOBAL)/hdb/data
global.ini,DEFAULT,,,persistence,basepath_logbackup,$(DIR_INSTANCE)/backup/log
global.ini,DEFAULT,,,persistence,basepath_logvolumes,$(DIR_GLOBAL)/hdb/log
global.ini,SYSTEM,,,persistence,basepath_catalogbackup,/hana/logbackups/H80/catalog
global.ini,SYSTEM,,,persistence,basepath_datavolumes,/hana/data/H80
global.ini,SYSTEM,,,persistence,basepath_logbackup,/hana/logbackups/H80
global.ini,SYSTEM,,,persistence,basepath_logvolumes,/hana/log/H80

Konfigurowanie limitu czasu tworzenia kopii zapasowej dziennika

Ustawieniem domyślnym dla platformy SAP HANA do wykonywania kopii zapasowej dziennika jest 900 sekund (15 minut). Zalecamy zmniejszenie tej wartości do 300 sekund (5 minut). Następnie można uruchamiać regularne kopie zapasowe tych plików (na przykład co 10 minut). Te kopie zapasowe można wykonać, dodając log_backup woluminy do OTHER sekcji woluminu pliku konfiguracji.

hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'log_backup_timeout_s') = '300' WITH RECONFIGURE"

Sprawdzanie limitu czasu tworzenia kopii zapasowej dziennika

Po wprowadzeniu zmiany limitu czasu tworzenia kopii zapasowej dziennika upewnij się, że limit czasu został ustawiony przy użyciu następującego polecenia.

W tym przykładzie ustawienia są wyświetlane jako SYSTEM ustawienia. To zapytanie zwraca DEFAULT również ustawienia porównania.

hdbsql -jaxC -n <HANA_ip_address> - i 00 -U AZACSNAP "select * from sys.m_inifile_contents where key like '%log_backup_timeout%' "
global.ini,DEFAULT,,,persistence,log_backup_timeout_s,900
global.ini,SYSTEM,,,persistence,log_backup_timeout_s,300

Następne kroki