۱. مقدمه
این آزمایشگاه کد، نحوهی پیادهسازی 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="..." - یک ترمینال فعال با دسترسی به گوگل کلود. برای این منظور میتوانید از کلود شل استفاده کنید.
۲. تنظیمات و الزامات
راهاندازی پروژه
ایجاد یک پروژه ابری گوگل
- در کنسول گوگل کلود ، در صفحه انتخاب پروژه، یک پروژه گوگل کلود را انتخاب یا ایجاد کنید .
- مطمئن شوید که صورتحساب برای پروژه ابری شما فعال است. یاد بگیرید که چگونه بررسی کنید که آیا صورتحساب در یک پروژه فعال است یا خیر .
شروع پوسته ابری
اگرچه میتوانید گوگل کلود را از راه دور از طریق لپتاپ خود مدیریت کنید، اما در این آزمایشگاه کد از پوسته گوگل کلود ، یک محیط خط فرمان که در فضای ابری اجرا میشود، استفاده میکنید.

- کنسول گوگل کلود را باز کنید و روی آیکون Cloud Shell در نوار ابزار بالا سمت راست کلیک کنید. همچنین میتوانید Cloud Shell را به یکی از روشهای زیر باز کنید:
- اگر از کنسول گوگل کلود استفاده میکنید، ابتدا G و سپس S را فشار دهید.
- روی این لینک کلیک کنید .
معمولاً چند لحظه طول میکشد تا آمادهسازی و به محیط متصل شوید. وقتی این عملیات کامل شد، چیزی شبیه به تصویر زیر خواهید دید:
{: عرض="624"}
۳. ماشین مجازی موتور محاسباتی را ایجاد کنید
در این بخش، شما با استفاده از ابزار خط فرمان gcloud ، یک ماشین مجازی (VM) واحد Compute Engine (GCE) ایجاد میکنید. شما از یک ایمیج Rocky Linux 9 استفاده میکنید که کاملاً با RPM های AlloyDB Omni سازگار است.
- متغیرهای محیطی را برای شناسه پروژه، نام ماشین مجازی، منطقه و ناحیه خود تعریف کنید.
export PROJECT="your-project-id" export INSTANCE_NAME="alloydb-omni-vm" export ZONE="us-central1-c" export REGION="us-central1" - با استفاده از حساب کاربری گوگل کلود خود وارد سیستم شوید و پروژه پیشفرض را پیکربندی کنید.
gcloud auth login gcloud config set project $PROJECT - یک قانون فایروال ایجاد کنید تا اتصالات 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" - از آنجایی که ماشین مجازی بدون آدرس 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 - مطمئن شوید که شبکه 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 - نمونه ماشین مجازی 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 - پس از ایجاد ماشین مجازی، وضعیت ماشین مجازی را بررسی کنید.
gcloud compute instances list --filter="name=$INSTANCE_NAME" --project=$PROJECT
۴. ماشین مجازی را آماده کنید
در این بخش، شما به ماشین مجازی تازه ایجاد شده خود متصل میشوید و محیط سیستم عامل را آماده میکنید، که شامل تنظیم دایرکتوری داده و پیکربندی SELinux میشود.
- با استفاده از پروکسی آگاه از هویت (IAP) از طریق SSH به ماشین مجازی متصل شوید. از آنجایی که ماشین مجازی آدرس IP عمومی ندارد،
gcloudبه طور خودکار اتصال SSH را از طریق IAP تونل میکند.gcloud compute ssh $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --tunnel-through-iap - متغیرهای محیطی را در ماشین مجازی برای دایرکتوری دادهها و URL مخزن AlloyDB Omni خود تعریف کنید. URL را با URL دریافتی از فرم ثبت نام جایگزین کنید.
export PGDATA="/var/lib/alloydbomni" export ALLOYDB_OMNI_REPOSITORY_URL="..." - دایرکتوری داده را ایجاد کنید که AlloyDB Omni فایلهای پایگاه داده خود را در آن ذخیره کند.
sudo mkdir -p $PGDATA - بسته
policycoreutils-python-utilsرا نصب کنید تا بتوان سیاست SELinux را طوری پیکربندی کرد که به سرویس پایگاه داده AlloyDB Omni اجازه دهد به درستی اجرا شود.sudo dnf install -y policycoreutils-python-utils
۵. نصب AlloyDB Omni
با آماده شدن ماشین مجازی، اکنون میتوانید مخزن بستهها را پیکربندی کرده و بسته AlloyDB Omni RPM را نصب کنید.
- با ایجاد فایل پیکربندی مخزن، مخزن 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 - حافظه پنهان YUM را بهروزرسانی کنید تا مطمئن شوید مخزن جدید شناسایی شده است.
توجه: برای نسخه پیشنمایش AlloyDB Omni RPM، صحت بسته در سطح RPM هر بسته بررسی میشود. برای ادامه پیکربندی مخزن YUM،sudo yum makecacherepo_gpgcheck=0را پیکربندی کنید. - نسخه ۱۸ از بسته AlloyDB Omni RPM را نصب کنید.
sudo dnf install -y alloydbomni18
۶. راهاندازی AlloyDB Omni
پس از نصب بسته RPM، باید سرویس پایگاه داده AlloyDB Omni را مقداردهی اولیه، پیکربندی و شروع کنید.
- یک رمز عبور قوی برای کاربر مدیر
postgresتعریف کنید.export PGPASSWORD="YourStrongPassword123!" - نمونه پایگاه داده AlloyDB Omni را مقداردهی اولیه کنید.
sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup initdb - زمینه فایل SELinux را پیکربندی کنید تا به سرویس AlloyDB Omni اجازه خواندن و نوشتن دادهها در دایرکتوری دادههای سفارشی شما را بدهد، سپس زمینه امنیتی صحیح را بازیابی کنید.
sudo setenforce 0 - نمونه پایگاه داده AlloyDB Omni را آماده کنید.
sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup preparedb - (اختیاری) برای اجرای بهینه سرویس AlloyDB Omni، ابزار راهاندازی میزبان را اجرا کنید تا تنظیمات هسته و حافظه پیشنهادی به طور خودکار پیکربندی شوند.
sudo /usr/lib/postgresql/18/bin/alloydbomni18-setup-host - سرویس
systemdAlloyDB Omni را فعال و اجرا کنید.sudo systemctl enable alloydbomni18 sudo systemctl start alloydbomni18 - تأیید کنید که سرویس AlloyDB Omni فعال و با موفقیت اجرا میشود.
تأیید کنید که خروجی نشاندهندهیsudo systemctl status alloydbomni18Active: active (running).
۷. بررسی AlloyDB Omni
برای تأیید صحت عملکرد پایگاه داده تک گرهای AlloyDB Omni خود، با استفاده از کلاینت استاندارد PostgreSQL ( psql ) که همراه با بسته نصب شده است، به آن متصل شوید.
- به عنوان کاربر
postgresبه پایگاه داده محلی متصل شوید. از شما رمز عبوری که قبلاً پیکربندی کردهاید، درخواست میشود./usr/lib/postgresql/18/bin/psql -h localhost -U postgres -W - پس از برقراری اتصال، یک کوئری SQL ساده اجرا کنید تا نسخه سرور پایگاه داده و همچنین اجرای AlloyDB Omni را تأیید کنید.
خروجی حاصل نشان میدهد که PostgreSQL 18 با AlloyDB Omni در حال اجرا است.postgres=# SELECT version(); - برای خروج از اعلان
psql\qرا وارد کنید.
۸. پاکسازی و بررسی
پس از اتمام کدنویسی، میتوانید منابع Google Cloud را پاکسازی کنید تا از هزینههای ناخواسته جلوگیری شود.
- برای بازگشت به ترمینال محلی Cloud Shell خود، از جلسه SSH خود در ماشین مجازی جدا شوید.
exit - نمونه ماشین مجازی Compute Engine را حذف کنید.
gcloud compute instances delete $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --quiet - قانون فایروال ایجاد شده برای دسترسی SSH را حذف کنید.
gcloud compute firewall-rules delete allow-ssh-alloydb-omni --project=$PROJECT --quiet - دروازه 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 مراجعه کنید.