יצירת אשכול עם TDE

בחירת גרסה של מאמר העזרה:

כדי לאבטח את הנתונים במנוחה ולהגן על מידע רגיש, אתם יכולים להפעיל הצפנת נתונים שקופה (TDE) ב-AlloyDB Omni. במאמר הזה מוסבר איך ליצור אשכול עם TDE, על ידי ציון משתני הסביבה הנדרשים של Vault והדגל --tde-kek-url במשתנה הסביבה POSTGRES_INITDB_ARGS במהלך האתחול של מסד הנתונים.

לפני שמתחילים

יצירת האשכול

כדי ליצור אשכול עם TDE, צריך להעביר את הגדרות Key Management Service‏ (KMS) הנדרשות ואת פרטי הכניסה לאימות במהלך האיניציאליזציה של מסד הנתונים. סוג האימות הנתמך היחיד הוא jwt.

בוחרים את הכרטיסייה של סביבת זמן הריצה של הקונטיינר.

Docker

docker run -d --name CONTAINER_NAME \
--network host \
-v DATA_DIR:/var/lib/postgresql/data \
-v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \
-e VAULT_AUTH_TYPE=jwt \
-e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \
-e VAULT_JWT_PATH=JWT_FILE_PATH \
-e VAULT_ROLE=VAULT_ROLE \
-e VAULT_CERT_PATH=VAULT_CERT_PATH \
-e POSTGRES_INITDB_ARGS=" \
--tde-kek-url=KEK_URL" \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
--network host \
-v DATA_DIR:/var/lib/postgresql/data \
-v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \
-e VAULT_AUTH_TYPE=jwt \
-e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \
-e VAULT_JWT_PATH=JWT_FILE_PATH \
-e VAULT_ROLE=VAULT_ROLE \
-e VAULT_CERT_PATH=VAULT_CERT_PATH \
-e POSTGRES_INITDB_ARGS=" \
--tde-kek-url=KEK_URL" \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
--network host \
-v DATA_DIR:/var/lib/postgresql/data \
-v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \
-e VAULT_AUTH_TYPE=jwt \
-e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \
-e VAULT_JWT_PATH=JWT_FILE_PATH \
-e VAULT_ROLE=VAULT_ROLE \
-e VAULT_CERT_PATH=VAULT_CERT_PATH \
-e POSTGRES_INITDB_ARGS=" \
--tde-kek-url=KEK_URL" \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
--network host \
-v DATA_DIR:/var/lib/postgresql/data \
-v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \
-e VAULT_AUTH_TYPE=jwt \
-e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \
-e VAULT_JWT_PATH=JWT_FILE_PATH \
-e VAULT_ROLE=VAULT_ROLE \
-e VAULT_CERT_PATH=VAULT_CERT_PATH \
-e POSTGRES_INITDB_ARGS=" \
--tde-kek-url=KEK_URL" \
google/alloydbomni:IMAGE_TAG

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CONTAINER_NAME: השם של מאגר התגים שרוצים ליצור. לדוגמה, alloydb-tde.
  • ‫DATA_DIR: הספרייה המקומית שרוצים לטעון כנפח הנתונים של AlloyDB Omni. לדוגמה, /local/data.
  • ‫VAULT_AUTH_TYPE: סוג האימות שבו יש להשתמש לחיבור למאגר. יש תמיכה רק ב-jwt.
  • JWT_AUTH_ENGINE_MOUNT: הנתיב שבו מותקן מנוע האימות של HashiCorp Vault. לדוגמה, /auth/jwt.
  • ‫JWT_FILE_PATH: הנתיב שבו שמור ה-JWT של Vault בצמתים. לדוגמה, tde-tls/jwt-token.
  • (אופציונלי) VAULT_ROLE: תפקיד הלקוח שמוגדר בהגדרת הכספת ומאפשר ל-HashiCorp Vault לאמת את האותנטיות של אסימון ה-JWT.
  • ‫VAULT_CERT_PATH_ON_DISK: הנתיב לאישורי Vault במחשב המארח. לדוגמה, /local/vault/config.
  • ‫VAULT_CERT_PATH: הנתיב שבו נמצאים האישורים לחיבור ל-Vault בקונטיינר. לדוגמה, /tde-tls. אם המדיניות לא מוגדרת, המערכת תשתמש באישורים שמוגדרים כברירת מחדל במאגר האישורים.
  • ‫KEK_URL: כתובת ה-URL המלאה של KEK ב-HashiCorp Vault. משתמשים ב-vault כפרוטוקול כדי לציין את HashiCorp Vault כספק KMS – לדוגמה, vault://127.0.0.1:8200/v1/secrets/data/alloydb_kek.
  • ‫IMAGE_TAG: משתמשים ב-18.3.0 בשביל קובץ האימג' העדכני של Debian או ב-18.3.0-ubi בשביל קובץ האימג' העדכני של UBI.

כדי להפעיל TDE לנתוני מטמון של מנוע מבוסס-עמודות שמועברים לאחסון SSD, מתחברים למכונה של מסד הנתונים ומריצים את השאילתה הבאה:

ALTER SYSTEM SET google_columnar_engine.enable_tde_for_storage_cache = 'on';

מפעילים מחדש את שרת מסד הנתונים כדי שהשינויים ייכנסו לתוקף.

הפניות למדדי TDE

אפשר לראות את כל מדדי ה-TDE בסוכן המעקב של AlloyDB Omni. בטבלה הבאה מתואר כל מדד.

שם תיאור תווית יחידה סוג
alloydb_omni_database_tde_data_blocks_decrypted_count_total מספר בלוקי הנתונים שפוענחו. לא רלוונטי מונה
alloydb_omni_database_tde_data_blocks_encrypted_count_total מספר בלוקי הנתונים המוצפנים. לא רלוונטי מונה
alloydb_omni_database_tde_data_decryption_time_us_total משך הזמן הכולל שנדרש לפענוח של בלוק הנתונים. לא רלוונטי מיקרו-שניות מונה
alloydb_omni_database_tde_data_encryption_time_us_total הזמן הכולל שהושקע בהצפנה של בלוק נתונים. לא רלוונטי מיקרו-שניות מונה
alloydb_omni_database_tde_enabled סטטוס ההפעלה של TDE. לא רלוונטי תחנה הידרומטרית
alloydb_omni_database_tde_kek_info מידע על TDE KEK.
  • ‫kek_version: הגרסה של ה-KEK
    שמשמשת לאריזת המפתחות.
  • ‫kek_url: נתיב מוגדר במלואו
    למפתח להצפנת מפתחות הצפנה (KEK) ב-KMS
  • ‫kek_creation_timestamp:
    זמן היצירה של גרסת ה-KEK שבשימוש.
מד
alloydb_omni_database_tde_temp_blocks_decrypted_count_total מספר הבלוקים הזמניים שפוענחו. לא רלוונטי דלפק
alloydb_omni_database_tde_temp_blocks_encrypted_count_total מספר החסימות הזמניות המוצפנות. לא רלוונטי מונה
alloydb_omni_database_tde_temp_decryption_time_us_total הזמן הכולל שנדרש לפענוח חסימה זמנית. לא רלוונטי מיקרו-שניות מונה
alloydb_omni_database_tde_temp_encryption_time_us_total הזמן הכולל שהוקדש להצפנת בלוקים זמנית. לא רלוונטי מיקרו-שניות דלפק
alloydb_omni_database_tde_wal_blocks_decrypted_count_total מספר בלוקי ה-WAL שפוענחו. לא רלוונטי מונה
alloydb_omni_database_tde_wal_blocks_encrypted_count_total מספר בלוקי ה-WAL שהוצפנו. לא רלוונטי דלפק
alloydb_omni_database_tde_wal_decryption_time_us_total הזמן הכולל שחלף בפענוח של בלוק WAL. לא רלוונטי מיקרו-שניות מונה
alloydb_omni_database_tde_wal_encryption_time_us_total משך הזמן הכולל של הצפנת בלוקים של WAL. לא רלוונטי מיקרו-שניות מונה
tde_chill_cache_blocks_encrypted מספר הבלוקים במטמון המצב הקריר שמוצפנים. לא רלוונטי מונה
tde_chill_cache_blocks_decrypted מספר הבלוקים של המטמון שפוענחו. לא רלוונטי מונה
tde_chill_cache_blocks_total_encryption_time_us משך הזמן הכולל של הצפנת בלוקים במטמון של Chill. לא רלוונטי מיקרו-שניות מונה
tde_chill_cache_blocks_total_decryption_time_us הזמן הכולל שהושקע בפענוח של בלוק המטמון של Chill. לא רלוונטי מיקרו-שניות דלפק
tde_ce_cache_ssd_blocks_encrypted מספר הבלוקים של המטמון הטורי שהועברו לאחסון SSD והוצפנו. לא רלוונטי מונה
tde_ce_cache_ssd_blocks_decrypted מספר הבלוקים של המטמון הטורי שזלגו לאחסון SSD ופוענחו. לא רלוונטי דלפק
tde_ce_cache_ssd_blocks_total_encryption_time_us משך הזמן הכולל שהוקדש להצפנת בלוקים של מטמון טורי שהועברו לאחסון SSD. לא רלוונטי מיקרו-שניות דלפק
tde_ce_cache_ssd_blocks_total_decryption_time_us משך הזמן הכולל שנדרש לפענוח בלוקים של מטמון טורי שהועברו לאחסון SSD. לא רלוונטי מיקרו-שניות מונה