יצירת מכונה של Memorystore for Redis באמצעות Terraform

במאמר הזה מוסבר איך ליצור מכונת Memorystore for Redis, להתחבר אליה ואז למחוק אותה.

במדריך למתחילים הזה נעשה שימוש בספק Google Cloud Platform ל-Terraform.

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

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Memorystore for Redis API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Memorystore for Redis API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  10. אם עדיין לא עשיתם זאת, מתקינים את Google Cloud SDK.

    כשמתבקשים, בוחרים את הפרויקט שבחרתם או יצרתם.

  11. אם כבר התקנתם את Google Cloud SDK, צריך לעדכן אותו.

    gcloud components update
  12. מפעילים את Memorystore for Redis API. ‫
    Memorystore for Redis
  13. יש לכם קובץ Terraform שאליו אפשר להוסיף את משאב Memorystore. הוראות להגדרת Terraform עם Google Cloud מופיעות במאמר תחילת העבודה עם Google Cloud Provider.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות ליצירת מכונת Memorystore for Redis, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירת מכונה של Memorystore for Redis

בקטע הזה יוצרים מכונת Memorystore for Redis בנפח 2GB שנמצאת באזור us-central1 ובמסלול Basic. מידע נוסף על רמות זמין במאמר יכולות של רמות Redis.

  1. מוסיפים את המשאב הבא לקובץ התצורה של Terraform:

    resource "google_redis_instance" "my_memorystore_redis_instance" {
      name           = "myinstance"
      tier           = "BASIC"
      memory_size_gb = 2
      region         = "us-central1"
      redis_version  = "REDIS_6_X"
    }
    
  2. מוסיפים את ערך הפלט הבא לקובץ התצורה של Terraform כדי להדפיס את כתובת ה-IP של המופע. הכתובת הזו נדרשת כדי להתחבר למכונה.

    output "host" {
     description = "The IP address of the instance."
     value = "${google_redis_instance.my_memorystore_redis_instance.host}"
    }
    
  3. מריצים את הפקודה terraform init.

  4. מריצים את הפקודה terraform plan ובודקים את המופע שייווצר.

  5. כדי ליצור את המכונה, מריצים את הפקודה terraform apply.

התחברות למכונת Memorystore for Redis ממכונה וירטואלית ב-Compute Engine

אפשר להתחבר למופע של Memorystore for Redis מכל מכונה וירטואלית ב-Compute Engine שמשתמשת ברשת המורשית של המופע עם כתובת IP נתמכת מסוג RFC 1918.

  1. אם אין לכם מכונה וירטואלית של Compute Engine שמשתמשת באותה רשת מורשית כמו המופע שלכם, אתם צריכים ליצור אחת כזו ולהתחבר אליה באמצעות SSH. כדי לעשות זאת, פועלים לפי השלבים במאמר יצירת מכונה וירטואלית של Linux ב-Compute Engine.

  2. משתמשים ב-apt-get כדי להתקין את telnet:

    sudo apt-get install telnet
    
  3. מהטרמינל, מתחברים באמצעות Telnet לכתובת ה-IP של המכונה. מחליפים את VARIABLES בערכים המתאימים.

    telnet INSTANCE_IP_ADDRESS 6379
    

    אם אפשר להתחבר למופע, הפקודה תחזיר את התוצאה הבאה:

    Trying INSTANCE_IP_ADDRESS…
    Connected to INSTANCE_IP_ADDRESS
    
  4. בסשן של telnet, מזינים כמה פקודות Redis:

    צריך להזין את הפרטים הבאים:

    PING
    

    תוצאה:

    PONG
    

    Enter

    SET HELLO WORLD
    

    תוצאה:

    +OK
    

    צריך להזין את הפרטים הבאים:

    GET HELLO
    

    תוצאה:

    $5
    WORLD
    

הסרת המשאבים

כדי לא לצבור חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה:

  1. מסירים את המשאב google_redis_instance מקובץ התצורה של Terraform.
  2. כדי למחוק את המשאב, מריצים את הפקודות terraform init, terraform plan ו-terraform apply.
  3. אופציונלי. אם יצרתם מכונה וירטואלית ב-Compute Engine לצורך המדריך למתחילים הזה, צריך למחוק אותה.

המאמרים הבאים