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.
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=>
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;
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;
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;
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>
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ługihdbuserstore
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 hdbsql
metodę 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 hdbsql
metodę , 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 hdbsql
połą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