استقرار AlloyDB Omni روی یک ماشین مجازی GCE واحد

۱. مقدمه

این آزمایشگاه کد، نحوه‌ی پیاده‌سازی AlloyDB Omni را روی یک ماشین مجازی Google Compute Engine (GCE) نشان می‌دهد. در پایان این آزمایشگاه کد، شما یک ماشین مجازی GCE با اجرای Rocky Linux 9 و نصب AlloyDB Omni با استفاده از بسته‌های رسمی RPM را آماده خواهید کرد. این ماشین مجازی مجهز به تمام ابزارهای توسعه‌ای است که شما نیاز دارید. این ماشین مجازی یک دایرکتوری خانگی پایدار 20 گیگابایتی ارائه می‌دهد و روی Google Cloud اجرا می‌شود که عملکرد شبکه و احراز هویت را تا حد زیادی افزایش می‌دهد.

پیش‌نیازها

  • دسترسی به پروژه ابری گوگل و پوسته ابری از طریق کنسول ابری.
  • نصب و پیکربندی کیت توسعه نرم‌افزار گوگل کلود ( gcloud )

آنچه یاد خواهید گرفت

  • نحوه ایجاد و آماده‌سازی یک ماشین مجازی GCE برای AlloyDB Omni با استفاده از gcloud .
  • نحوه نصب RPM های AlloyDB Omni روی یک گره لینوکس.
  • نحوه بوت استرپ و پیکربندی AlloyDB Omni.
  • نحوه تأیید نصب پایگاه داده محلی.

آنچه نیاز دارید

  • یک لینک URL به RPM های AlloyDB Omni دریافت کنید . لینک‌ها به ایمیل شما ارسال می‌شوند که شامل سرور URL مخزن است. متغیر محیطی زیر را مقداردهی اولیه کنید تا URL در طول آزمایش کد آماده استفاده باشد.
    export ALLOYDB_OMNI_REPOSITORY_URL="..."
    
  • یک ترمینال فعال با دسترسی به گوگل کلود. برای این منظور می‌توانید از کلود شل استفاده کنید.

۲. تنظیمات و الزامات

راه‌اندازی پروژه

ایجاد یک پروژه ابری گوگل

  1. در کنسول گوگل کلود ، در صفحه انتخاب پروژه، یک پروژه گوگل کلود را انتخاب یا ایجاد کنید .
  2. مطمئن شوید که صورتحساب برای پروژه ابری شما فعال است. یاد بگیرید که چگونه بررسی کنید که آیا صورتحساب در یک پروژه فعال است یا خیر .

شروع پوسته ابری

اگرچه می‌توانید گوگل کلود را از راه دور از طریق لپ‌تاپ خود مدیریت کنید، اما در این آزمایشگاه کد از پوسته گوگل کلود ، یک محیط خط فرمان که در فضای ابری اجرا می‌شود، استفاده می‌کنید.

آیکون برای فعال کردن Cloud Shell

  1. کنسول گوگل کلود را باز کنید و روی آیکون Cloud Shell در نوار ابزار بالا سمت راست کلیک کنید. همچنین می‌توانید Cloud Shell را به یکی از روش‌های زیر باز کنید:

معمولاً چند لحظه طول می‌کشد تا آماده‌سازی و به محیط متصل شوید. وقتی این عملیات کامل شد، چیزی شبیه به تصویر زیر خواهید دید:

ترمینال Google Cloud Shell که نشان می‌دهد محیط متصل شده است {: عرض="624"}

۳. ماشین مجازی موتور محاسباتی را ایجاد کنید

در این بخش، شما با استفاده از ابزار خط فرمان gcloud ، یک ماشین مجازی (VM) واحد Compute Engine (GCE) ایجاد می‌کنید. شما از یک ایمیج Rocky Linux 9 استفاده می‌کنید که کاملاً با RPM های AlloyDB Omni سازگار است.

  1. متغیرهای محیطی را برای شناسه پروژه، نام ماشین مجازی، منطقه و ناحیه خود تعریف کنید.
    export PROJECT="your-project-id"
    export INSTANCE_NAME="alloydb-omni-vm"
    export ZONE="us-central1-c"
    export REGION="us-central1"
    
  2. با استفاده از حساب کاربری گوگل کلود خود وارد سیستم شوید و پروژه پیش‌فرض را پیکربندی کنید.
    gcloud auth login
    gcloud config set project $PROJECT
    
  3. یک قانون فایروال ایجاد کنید تا اتصالات SSH به ماشین مجازی شما مجاز باشد.
    gcloud compute firewall-rules create allow-ssh-alloydb-omni \
        --project=$PROJECT \
        --direction=INGRESS \
        --action=allow \
        --rules=tcp:22 \
        --source-ranges="0.0.0.0/0"
    
  4. از آنجایی که ماشین مجازی بدون آدرس IP عمومی ایجاد می‌شود، یک روتر ابری و دروازه Cloud NAT را پیکربندی کنید تا به ماشین مجازی اجازه دسترسی به مخازن بسته‌های خارجی و دانلود نرم‌افزارهای مورد نیاز را بدهد.
    gcloud compute routers create alloydb-omni-router \
        --project=$PROJECT \
        --network=default \
        --region=$REGION
    
    gcloud compute routers nats create alloydb-omni-nat \
        --project=$PROJECT \
        --router=alloydb-omni-router \
        --region=$REGION \
        --nat-all-subnet-ip-ranges \
        --auto-allocate-nat-external-ips
    
  5. مطمئن شوید که شبکه VPC شما یک مسیر پیش‌فرض دروازه اینترنت معتبر دارد. در برخی از محیط‌های اشتراکی یا محیط‌های بازی، مسیرهای پیش‌فرض گاهی اوقات توسط اسکریپت‌های پاکسازی حذف می‌شوند. این مسیر برای Cloud NAT جهت هدایت ترافیک خروجی به اینترنت مورد نیاز است.
    gcloud compute routes create default-internet-route \
        --project=$PROJECT \
        --network=default \
        --destination-range=0.0.0.0/0 \
        --next-hop-gateway=default-internet-gateway
    
  6. نمونه ماشین مجازی Compute Engine را با مشخصات مورد نیاز (۱۶ پردازنده مجازی، ۲۰ گیگابایت دیسک پایدار متعادل، Rocky Linux 9) ایجاد کنید. برای امنیت بیشتر، از پرچم --no-address استفاده می‌کنیم تا مطمئن شویم که به ماشین مجازی آدرس IP عمومی اختصاص داده نشده است.
    gcloud compute instances create $INSTANCE_NAME \
        --project=$PROJECT \
        --zone=$ZONE \
        --machine-type=n2-highmem-16 \
        --image-family=rocky-linux-9 \
        --image-project=rocky-linux-cloud \
        --boot-disk-size=20GB \
        --boot-disk-type=pd-balanced \
        --no-address
    
  7. پس از ایجاد ماشین مجازی، وضعیت ماشین مجازی را بررسی کنید.
    gcloud compute instances list --filter="name=$INSTANCE_NAME" --project=$PROJECT
    

۴. ماشین مجازی را آماده کنید

در این بخش، شما به ماشین مجازی تازه ایجاد شده خود متصل می‌شوید و محیط سیستم عامل را آماده می‌کنید، که شامل تنظیم دایرکتوری داده و پیکربندی SELinux می‌شود.

  1. با استفاده از پروکسی آگاه از هویت (IAP) از طریق SSH به ماشین مجازی متصل شوید. از آنجایی که ماشین مجازی آدرس IP عمومی ندارد، gcloud به طور خودکار اتصال SSH را از طریق IAP تونل می‌کند.
    gcloud compute ssh $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --tunnel-through-iap
    
  2. متغیرهای محیطی را در ماشین مجازی برای دایرکتوری داده‌ها و URL مخزن AlloyDB Omni خود تعریف کنید. URL را با URL دریافتی از فرم ثبت نام جایگزین کنید.
    export PGDATA="/var/lib/alloydbomni"
    export ALLOYDB_OMNI_REPOSITORY_URL="..."
    
  3. دایرکتوری داده را ایجاد کنید که AlloyDB Omni فایل‌های پایگاه داده خود را در آن ذخیره کند.
    sudo mkdir -p $PGDATA
    
  4. بسته policycoreutils-python-utils را نصب کنید تا بتوان سیاست SELinux را طوری پیکربندی کرد که به سرویس پایگاه داده AlloyDB Omni اجازه دهد به درستی اجرا شود.
    sudo dnf install -y policycoreutils-python-utils
    

۵. نصب AlloyDB Omni

با آماده شدن ماشین مجازی، اکنون می‌توانید مخزن بسته‌ها را پیکربندی کرده و بسته AlloyDB Omni RPM را نصب کنید.

  1. با ایجاد فایل پیکربندی مخزن، مخزن YUM را روی ماشین مجازی خود پیکربندی کنید.
    sudo tee /etc/yum.repos.d/alloydbomni.repo << EOF
    [alloydbomni]
    name=alloydbomni
    baseurl=$ALLOYDB_OMNI_REPOSITORY_URL
    enabled=1
    repo_gpgcheck=0
    gpgcheck=1
    gpgkey=https://dl.google.com/linux/linux_signing_key.pub
    EOF
    
  2. حافظه پنهان YUM را به‌روزرسانی کنید تا مطمئن شوید مخزن جدید شناسایی شده است.
    sudo yum makecache
    
    توجه: برای نسخه پیش‌نمایش AlloyDB Omni RPM، صحت بسته در سطح RPM هر بسته بررسی می‌شود. برای ادامه پیکربندی مخزن YUM، repo_gpgcheck=0 را پیکربندی کنید.
  3. نسخه ۱۸ از بسته AlloyDB Omni RPM را نصب کنید.
    sudo dnf install -y alloydbomni18
    

۶. راه‌اندازی AlloyDB Omni

پس از نصب بسته RPM، باید سرویس پایگاه داده AlloyDB Omni را مقداردهی اولیه، پیکربندی و شروع کنید.

  1. یک رمز عبور قوی برای کاربر مدیر postgres تعریف کنید.
    export PGPASSWORD="YourStrongPassword123!"
    
  2. نمونه پایگاه داده AlloyDB Omni را مقداردهی اولیه کنید.
    sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup initdb
    
  3. زمینه فایل SELinux را پیکربندی کنید تا به سرویس AlloyDB Omni اجازه خواندن و نوشتن داده‌ها در دایرکتوری داده‌های سفارشی شما را بدهد، سپس زمینه امنیتی صحیح را بازیابی کنید.
    sudo setenforce 0
    
  4. نمونه پایگاه داده AlloyDB Omni را آماده کنید.
    sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup preparedb
    
  5. (اختیاری) برای اجرای بهینه سرویس AlloyDB Omni، ابزار راه‌اندازی میزبان را اجرا کنید تا تنظیمات هسته و حافظه پیشنهادی به طور خودکار پیکربندی شوند.
    sudo /usr/lib/postgresql/18/bin/alloydbomni18-setup-host
    
  6. سرویس systemd AlloyDB Omni را فعال و اجرا کنید.
    sudo systemctl enable alloydbomni18
    sudo systemctl start alloydbomni18
    
  7. تأیید کنید که سرویس AlloyDB Omni فعال و با موفقیت اجرا می‌شود.
    sudo systemctl status alloydbomni18
    
    تأیید کنید که خروجی نشان‌دهنده‌ی Active: active (running) .

۷. بررسی AlloyDB Omni

برای تأیید صحت عملکرد پایگاه داده تک گره‌ای AlloyDB Omni خود، با استفاده از کلاینت استاندارد PostgreSQL ( psql ) که همراه با بسته نصب شده است، به آن متصل شوید.

  1. به عنوان کاربر postgres به پایگاه داده محلی متصل شوید. از شما رمز عبوری که قبلاً پیکربندی کرده‌اید، درخواست می‌شود.
    /usr/lib/postgresql/18/bin/psql -h localhost -U postgres -W
    
  2. پس از برقراری اتصال، یک کوئری SQL ساده اجرا کنید تا نسخه سرور پایگاه داده و همچنین اجرای AlloyDB Omni را تأیید کنید.
    postgres=# SELECT version();
    
    خروجی حاصل نشان می‌دهد که PostgreSQL 18 با AlloyDB Omni در حال اجرا است.
  3. برای خروج از اعلان psql \q را وارد کنید.

۸. پاکسازی و بررسی

پس از اتمام کدنویسی، می‌توانید منابع Google Cloud را پاک‌سازی کنید تا از هزینه‌های ناخواسته جلوگیری شود.

  1. برای بازگشت به ترمینال محلی Cloud Shell خود، از جلسه SSH خود در ماشین مجازی جدا شوید.
    exit
    
  2. نمونه ماشین مجازی Compute Engine را حذف کنید.
    gcloud compute instances delete $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --quiet
    
  3. قانون فایروال ایجاد شده برای دسترسی SSH را حذف کنید.
    gcloud compute firewall-rules delete allow-ssh-alloydb-omni --project=$PROJECT --quiet
    
  4. دروازه Cloud NAT و روتر Cloud را حذف کنید.
    gcloud compute routers nats delete alloydb-omni-nat --router=alloydb-omni-router --region=$REGION --project=$PROJECT --quiet
    gcloud compute routers delete alloydb-omni-router --region=$REGION --project=$PROJECT --quiet
    

۹. تبریک

تبریک بابت تکمیل آزمایشگاه کد! شما با موفقیت AlloyDB Omni را روی یک ماشین مجازی Compute Engine مستقر و پیکربندی کردید.

آنچه ما پوشش داده‌ایم

  • نحوه تهیه و آماده‌سازی یک ماشین مجازی Compute Engine برای AlloyDB Omni.
  • نحوه پیکربندی مخزن بسته AlloyDB Omni و نصب RPM ها.
  • نحوه مقداردهی اولیه، پیکربندی و مدیریت سرویس پایگاه داده AlloyDB Omni با استفاده از systemd .
  • نحوه تأیید عملکرد پایگاه داده با استفاده از ابزارهای استاندارد PostgreSQL.

برای اطلاعات بیشتر، به نمای کلی AlloyDB Omni مراجعه کنید.

۱۰. نظرسنجی

چگونه از این آموزش استفاده خواهید کرد؟

فقط آن را بخوانید آن را بخوانید و تمرین‌ها را انجام دهید