یک سیستم فایل موازی Luster را در GCP مستقر کنید

1. بررسی اجمالی

به Google Codelab برای اجرای خوشه سیستم فایل موازی Luster در Google Cloud Platform خوش آمدید!

d51beef5f729cbe9.png

داده ها هسته اصلی عمل محاسبات با عملکرد بالا هستند و دسترسی به مقادیر زیادی از داده ها با سرعت بسیار بالا و تأخیر کم همیشه یک چالش کلیدی در اجرای بارهای کاری HPC بوده است. این نیاز برای ذخیره سازی با کارایی بالا در فضای ابری تغییر نکرده است و در واقع توانایی استفاده از حجم وسیعی از فضای ذخیره سازی به سرعت و آسانی بسیار مهم شده است.

مراکز HPC مدت‌هاست که این نیاز را با استفاده از فناوری‌هایی مانند سیستم فایل موازی Luster برآورده کرده‌اند. Luster امروزه یکی از محبوب‌ترین راه‌حل‌های ذخیره‌سازی با کارایی بالا منبع باز است و از ژوئن 2005، حداقل نیمی از ده ابررایانه برتر و بیش از 60 مورد از 100 ابررایانه برتر جهان از آن استفاده می‌کنند. Luster این توانایی را دارد که تا صدها PB ظرفیت را مقیاس کند و حداکثر عملکرد ممکن را برای کارهای HPC ارائه دهد، با سیستم‌هایی که TB/s خروجی را در یک فضای نام واحد ارائه می‌دهند.

به منظور پاسخگویی به تقاضای ذخیره سازی، Google Cloud دو رویکرد را در پیش گرفته است. ابتدا، GCP با DDN شریک شد تا نرم‌افزار کلاس سازمانی DDN EXAScaler Luster را به بازار GCP بیاورد. دوم، مهندسان ما در Google Cloud مجموعه‌ای از اسکریپت‌ها را برای پیکربندی و استقرار آسان خوشه ذخیره‌سازی Luster در Google Compute Engine با استفاده از Google Cloud Deployment Manager توسعه داده‌اند و منبع باز کرده‌اند .

Luster در Google Cloud Platform به همان اندازه قادر به ارائه حداکثر عملکرد زیرساختی است که روی آن اجرا می شود. عملکرد آن در GCP به قدری خوب است که در سال 2019 با شریک ما DDN در رتبه هشتم در معیار سیستم ذخیره سازی IO-500 قرار گرفت که نشان دهنده بالاترین رتبه سیستم فایل مبتنی بر ابر در IO-500 است. امروز شما را با استقرار اسکریپت‌های Open Source Deployment Manager برای Lustre آشنا می‌کنیم. اگر علاقه‌مند به داشتن یک تجربه شرکتی و سخت‌شده Luster، با پشتیبانی متخصص Lustre برای خوشه Luster خود، و همچنین ویژگی‌هایی مانند مدیریت و نظارت بر رابط کاربری گرافیکی یا تنظیم‌های Luster هستید، توصیه می‌کنیم پیشنهاد DDN EXAScaler Marketplace را بررسی کنید.

چیزی که یاد خواهید گرفت

  • نحوه استفاده از سرویس مدیر استقرار GCP
  • نحوه پیکربندی و استقرار فایل سیستم Luster در GCP.
  • نحوه پیکربندی striping و آزمایش I/O ساده در سیستم فایل Luster.

پیش نیازها

  • حساب Google Cloud Platform و یک پروژه با صورت‌حساب
  • تجربه پایه لینوکس

2. راه اندازی

تنظیم محیط خود به خود

یک پروژه ایجاد کنید

اگر قبلاً یک حساب Google (Gmail یا G Suite) ندارید، باید یک حساب ایجاد کنید . به کنسول Google Cloud Platform ( consol.cloud.google.com ) وارد شوید و صفحه مدیریت منابع را باز کنید:

359c06e07e6d699f.png

روی ایجاد پروژه کلیک کنید.

25c23d651abb837b.png

نام پروژه را وارد کنید شناسه پروژه (که در تصویر بالا با رنگ قرمز مشخص شده است) را به خاطر بسپارید . شناسه پروژه باید یک نام منحصر به فرد در تمام پروژه های Google Cloud باشد. اگر نام پروژه شما منحصر به فرد نباشد، Google Cloud یک شناسه پروژه تصادفی بر اساس نام پروژه ایجاد می کند.

در مرحله بعد، برای استفاده از منابع Google Cloud، باید صورتحساب را در Developers Console فعال کنید .

اجرای این کد نباید بیش از چند دلار برای شما هزینه داشته باشد، اما اگر تصمیم به استفاده از منابع بیشتری داشته باشید یا آنها را در حال اجرا رها کنید ممکن است بیشتر باشد (به بخش "نتیجه گیری" در انتهای این سند مراجعه کنید). ماشین حساب قیمت Google Cloud Platform در اینجا موجود است.

کاربران جدید Google Cloud Platform واجد شرایط استفاده آزمایشی رایگان 300 دلاری هستند.

Google Cloud Shell

در حالی که Google Cloud را می توان از راه دور از لپ تاپ شما کار کرد، در این کد لبه از Google Cloud Shell استفاده خواهیم کرد، یک محیط خط فرمان که در Cloud اجرا می شود.

Google Cloud Shell را راه اندازی کنید

از کنسول GCP روی نماد Cloud Shell در نوار ابزار بالا سمت راست کلیک کنید:

dbad104cef962719.png

سپس روی Start Cloud Shell کلیک کنید:

4e50db320508ac88.png

تهیه و اتصال به محیط فقط چند لحظه طول می کشد:

20b0aa80492144d.png

این ماشین مجازی با تمام ابزارهای توسعه که شما نیاز دارید بارگذاری شده است. این دایرکتوری اصلی 5 گیگابایتی دائمی را ارائه می دهد و در Google Cloud اجرا می شود و عملکرد شبکه را تا حد زیادی بهبود می بخشد و احراز هویت را ساده می کند. بسیاری از کارهای شما، اگر نه همه، در این آزمایشگاه را می توان به سادگی با یک مرورگر وب یا Google Chromebook انجام داد.

پس از اتصال به پوسته ابری، باید ببینید که قبلاً احراز هویت شده اید و پروژه قبلاً روی PROJECT_ID شما تنظیم شده است:

$ gcloud auth list

خروجی فرمان:

Credentialed accounts:
 - <myaccount>@<mydomain>.com (active)
$ gcloud config list project

خروجی فرمان:

[core]
project = <PROJECT_ID>

اگر ID پروژه به درستی تنظیم نشده باشد، می توانید آن را با این دستور تنظیم کنید:

$ gcloud config set project <PROJECT_ID>

خروجی فرمان:

Updated property [core/project].

3. پیکربندی Luster Deployment را آماده و مرور کنید

اسکریپت های Luster Deployment Manager را دانلود کنید

در جلسه Cloud Shell، دستور زیر را برای شبیه‌سازی (دانلود) مخزن Git که حاوی فایل‌های Luster for Google Cloud Platform Deployment-manager است را اجرا کنید:

git clone https://github.com/GoogleCloudPlatform/deploymentmanager-samples.git

با اجرای دستور زیر به دایرکتوری پیکربندی Luster Deployment بروید:

cd deploymentmanager-samples/community/lustre/

Luster Deployment YAML را پیکربندی کنید

Deployment Manager از یک فایل YAML برای ارائه پیکربندی استقرار استفاده می کند. این فایل YAML پیکربندی استقرار، مانند نسخه Luster برای استقرار، و انواع نمونه ماشین برای استقرار را شرح می دهد. فایل به طور پیش فرض برای استقرار در یک پروژه جدید بدون هیچ گونه افزایش سهمیه ای پیکربندی شده است، با این حال می توانید نوع یا ظرفیت دستگاه را به دلخواه برای این کد لبه تغییر دهید. این کد لبه برای استفاده از این پیش‌فرض‌ها نوشته شده است، بنابراین اگر تغییری ایجاد کردید، باید آن تغییرات را در سراسر این لبه کد برای جلوگیری از خطا انجام دهید. در تولید، بسته به ظرفیت و نوع ذخیره سازی، حداقل یک نمونه 32 vCPU برای گره MDS و حداقل یک نمونه 8 یا 16 vCPU برای گره های OSS توصیه می کنیم.

برای بازبینی یا ویرایش فایل YAML در جلسه Cloud Shell، فایل پیکربندی YAML Lustre-cluster.yaml را باز کنید . می توانید از ویرایشگر خط فرمان دلخواه خود (vi، nano، emacs و غیره) استفاده کنید یا از ویرایشگر کد کنسول Cloud برای مشاهده محتویات فایل استفاده کنید:

11efd5af658f1842.png

محتویات فایل به شکل زیر خواهد بود:

# [START cluster_yaml]
imports:
- path: lustre.jinja

resources:
- name: lustre
  type: lustre.jinja
  properties:
    ## Cluster Configuration
    cluster_name            : lustre
    zone                    : us-central1-f
    cidr                    : 10.20.0.0/16
    external_ips            : True
    ### Use these fields to deploy Lustre in an existing VPC, Subnet, and/or Shared VPC
    #vpc_net                 : < VPC Network Name >
    #vpc_subnet              : < VPC Subnet Name >
    #shared_vpc_host_proj    : < Shared VPC Host Project name >

    ## Filesystem Configuration
    fs_name                 : lustre
    ### Review https://downloads.whamcloud.com/public/ to determine version naming
    lustre_version          : latest-release
    e2fs_version            : latest

    ## Lustre MDS/MGS Node Configuration
    #mds_node_count          : 1
    mds_ip_address          : 10.20.0.2
    mds_machine_type        : n1-standard-8
    ### MDS/MGS Boot disk
    mds_boot_disk_type      : pd-standard
    mds_boot_disk_size_gb   : 10
    ### Lustre MetaData Target disk
    mdt_disk_type           : pd-ssd
    mdt_disk_size_gb        : 1000

    ## Lustre OSS Configuration
    oss_node_count          : 4
    oss_ip_range_start      : 10.20.0.5
    oss_machine_type        : n1-standard-4
    ### OSS Boot disk
    oss_boot_disk_type      : pd-standard
    oss_boot_disk_size_gb   : 10
    ### Lustre Object Storage Target disk
    ost_disk_type           : pd-standard
    ost_disk_size_gb        : 5000
#  [END cluster_yaml]

در این فایل YAML چندین فیلد وجود دارد. فیلدهای زیر با ستاره (*) الزامی است. این زمینه ها عبارتند از:

پیکربندی خوشه

  • cluster_name* - نام خوشه Luster، همه منابع مستقر شده را به خود اختصاص می دهد
  • zone* - منطقه ای برای استقرار خوشه در آن
  • cidr* - محدوده IP در قالب CIDR
  • external_ips* - True/False، گره های Luster دارای آدرس IP خارجی هستند. اگر نادرست باشد، یک Cloud NAT به عنوان دروازه NAT راه اندازی می شود
  • vpc_net - این فیلد و فیلد vpc_subnet را برای استقرار خوشه Luster در VPC موجود تعریف کنید.
  • vpc_subnet - زیرشبکه VPC موجود برای استقرار خوشه Luster
  • shared_vpc_host_proj - این فیلد و همچنین فیلدهای vpc_net و vpc_subnet را برای استقرار خوشه در یک VPC مشترک تعریف کنید.

پیکربندی فایل سیستم

  • fs_name - نام سیستم فایل Luster
  • lustre_version - نسخه Luster برای استقرار، از "latest-release" برای استقرار آخرین شاخه از https://downloads.whamcloud.com/public/lustre/ یا lustre-XXX برای استقرار هر نسخه دیگری استفاده کنید.
  • e2fs_version - نسخه E2fsprogs برای استقرار، از «آخرین» برای استقرار آخرین شاخه از https://downloads.whamcloud.com/public/e2fsprogs/ یا X.XX.X.wcX برای استقرار هر نسخه دیگری استفاده کنید.

پیکربندی MDS/MGS

  • mds_ip_address - آدرس IP داخلی برای تعیین گره MDS/MGS
  • mds_machine_type - نوع ماشین برای استفاده برای گره MDS/MGS (به https://cloud.google.com/compute/docs/machine-types مراجعه کنید)
  • mds_boot_disk_type - نوع دیسک برای استفاده برای دیسک بوت MDS/MGS (pd-standard، pd-ssd)
  • mds_boot_disk_size_gb - اندازه دیسک بوت MDS در گیگابایت
  • mdt_disk_type* - نوع دیسک برای استفاده برای دیسک هدف فراداده (MDT) (pd-standard، pd-ssd، local-ssd)
  • mdt_disk_size_gb* - اندازه دیسک MDT در گیگابایت

پیکربندی OSS

  • oss_node_count* - تعداد گره های سرور ذخیره سازی اشیاء (OSS) برای ایجاد
  • oss_ip_range_start - شروع محدوده IP برای گره(های) OSS. اگر مشخص نیست، از تخصیص IP خودکار استفاده کنید
  • oss_machine_type - نوع ماشین برای استفاده برای گره(های) OSS
  • oss_boot_disk_type - نوع دیسک برای استفاده برای دیسک بوت OSS (pd-standard، pd-ssd)
  • oss_boot_disk_size_gb - اندازه دیسک بوت MDS در گیگابایت
  • ost_disk_type* - نوع دیسک برای استفاده برای دیسک Object Storage Target (OST) (pd-standard، pd-ssd، local-ssd)
  • ost_disk_size_gb* - اندازه دیسک OST در گیگابایت

4. استقرار و تأیید پیکربندی

پیکربندی را اجرا کنید

در جلسه Cloud Shell، دستور زیر را از پوشه Lustre-gcp اجرا کنید :

gcloud deployment-manager deployments create lustre --config lustre.yaml

این دستور یک استقرار به نام Luster ایجاد می کند. این عمل ممکن است 10 تا 20 دقیقه طول بکشد، بنابراین لطفا صبور باشید .

پس از اتمام استقرار، خروجی مشابه زیر را خواهید دید:

Create operation operation-1572410719018-5961966591cad-e25384f6-d4c905f8 completed successfully.
NAME                                TYPE                   STATE      ERRORS  INTENT
lustre-all-internal-firewall-rule  compute.v1.firewall    COMPLETED  []
lustre-lustre-network              compute.v1.network     COMPLETED  []
lustre-lustre-subnet               compute.v1.subnetwork  COMPLETED  []
lustre-mds1                        compute.v1.instance    COMPLETED  []
lustre-oss1                        compute.v1.instance    COMPLETED  []
lustre-oss2                        compute.v1.instance    COMPLETED  []
lustre-oss3                        compute.v1.instance    COMPLETED  []
lustre-oss4                        compute.v1.instance    COMPLETED  []
lustre-ssh-firewall-rule           compute.v1.firewall    COMPLETED  []

استقرار را تأیید کنید

5f2a0557d3f2476f.png

برای مشاهده استقرار در Google Cloud Platform Console این مراحل را دنبال کنید:

  • در کنسول Cloud Platform، منوی محصولات و خدمات را در گوشه سمت چپ بالای کنسول باز کنید (سه خط افقی).
  • روی Deployment Manager کلیک کنید.
  • برای مشاهده جزئیات استقرار روی Luster کلیک کنید.
  • روی نمای کلی - Luster کلیک کنید. پنجره Deployment properties پیکربندی کلی استقرار را نمایش می دهد.
  • روی " نمایش " در ویژگی Config کلیک کنید. صفحه Config محتویات فایل YAML پیکربندی استقرار را که قبلاً اصلاح شده است را نشان می دهد. قبل از ادامه، صحت مطالب را بررسی کنید. اگر نیاز به تغییر پیکربندی استقرار دارید، به سادگی استقرار را طبق مراحل «پاکسازی استقرار» حذف کنید و طبق مراحل «پیکربندی استقرار Luster YAML»، استقرار را مجدداً راه اندازی کنید.
  • (اختیاری) در بخش Lustre-cluster ، روی هر یک از منابع ایجاد شده توسط الگوی Lustre.jinja کلیک کنید و جزئیات را مرور کنید.

با تأیید پیکربندی استقرار، اجازه دهید تأیید کنیم که نمونه های خوشه شروع شده اند. در کنسول Cloud Platform، در منوی محصولات و خدمات ، روی Compute Engine > VM Instances کلیک کنید.

aec8498e04a3c334.png

در صفحه VM Instances ، پنج نمونه ماشین مجازی که توسط Deployment Manager ایجاد شده اند را مرور کنید. این شامل lustre-mds1 ، lustre-oss1 ، lustre-oss2، lustre-oss3 و lustre-oss4 است.

5. به خوشه Luster دسترسی داشته باشید

نظارت بر نصب

در صفحه موارد VM، روی lustre-mds1 کلیک کنید تا صفحه جزئیات نمونه باز شود.

ba0bea7acdbb9527.png

روی پورت سریال 1 (کنسول) کلیک کنید تا صفحه خروجی کنسول سریال باز شود. ما از این خروجی سریال برای نظارت بر فرآیند نصب نمونه MDS استفاده می کنیم و منتظر می مانیم تا اسکریپت راه اندازی کامل شود. برای به‌روزرسانی خروجی سریال، روی دکمه «رفرش» در بالای صفحه کلیک کنید. گره یک بار راه اندازی مجدد می شود تا در هسته Luster راه اندازی شود و پیام هایی مشابه زیر نمایش دهد:

Startup finished in 838ms (kernel) + 6.964s (initrd) + 49.302s (userspace) = 57.105s.
Lustre: lustre-MDT0000: Connection restored to 374e2d80-0b31-0cd7-b2bf-de35b8119534 (at 0@lo)

این بدان معناست که Luster بر روی خوشه Luster نصب شده است و سیستم فایل آماده استفاده است!

به خوشه Luster دسترسی داشته باشید

در جلسه Cloud Shell، روی دکمه SSH در کنار نمونه lustre-mds1 در Google Cloud Console کلیک کنید. همچنین، دستور زیر را در Cloud Shell اجرا کنید و <ZONE> را جایگزین ناحیه گره lustre-mds1 کنید:

gcloud compute ssh lustre-mds1 --zone=<ZONE>

این دستور وارد ماشین مجازی lustre-mds1 می شود. این نمونه سرور متادیتای Luster (MDS) است که به عنوان نمونه سرور مدیریت لوستر (MGS) نیز عمل می کند. این نمونه تمام درخواست های احراز هویت و فراداده را برای سیستم فایل مدیریت می کند.

بیایید سیستم فایل را روی نمونه lustre-mds1 خود نصب کنیم تا بتوانیم آن را بعداً آزمایش کنیم. دستورات زیر را اجرا کنید :

sudo mkdir /mnt/lustre
sudo mount -t lustre lustre-mds1:/lustre /mnt/lustre
cd /mnt/lustre

این سه دستور سه کار را انجام می دهند. اولین دستور یک دایرکتوری محلی ایجاد می کند که ما به عنوان نقطه اتصال در "/mnt/lustre" استفاده خواهیم کرد. فرمان دوم دستور "mount" را اجرا می کند تا سیستم فایل نوع "lustre" را که در سرور lustre-mds1 زندگی می کند، و جایی که نام فایل سیستم "lustre" است، به عنوان "/lustre" دیده می شود، اجرا می کند. دستور mount سیستم فایل Luster را در فهرست محلی "/mnt/lustre" شما مانت می کند. در نهایت، فرمان سوم دایرکتوری را به دایرکتوری /mnt/lustre تغییر می دهد، جایی که Luster در آن نصب شده است.

اکنون فایل سیستم Luster را در /mnt/lustre نصب کرده اید. بیایید نگاهی بیندازیم به آنچه که می توانیم با این فایل سیستم انجام دهیم.

6. گشت و گذار در ابزارهای Luster CLI

اگر با Luster و ابزارهای آن آشنایی ندارید، در اینجا چند دستور مهم را مرور می کنیم.

ابزار مدیریت خوشه سطح پایین Lustre "lctl" است. ما می توانیم از lctl برای پیکربندی و مدیریت خوشه Luster و مشاهده خدمات خوشه Luster استفاده کنیم. برای مشاهده خدمات و نمونه‌های موجود در خوشه جدید Luster، موارد زیر را اجرا کنید:

sudo lctl dl

بسته به تغییراتی که در فایل پیکربندی Luster YAML ایجاد کرده اید، خروجی مشابه زیر را مشاهده خواهید کرد:

  0 UP osd-ldiskfs lustre-MDT0000-osd lustre-MDT0000-osd_UUID 11
  1 UP mgs MGS MGS 12
  2 UP mgc MGC10.128.15.2@tcp 374e2d80-0b31-0cd7-b2bf-de35b8119534 4
  3 UP mds MDS MDS_uuid 2
  4 UP lod lustre-MDT0000-mdtlov lustre-MDT0000-mdtlov_UUID 3
  5 UP mdt lustre-MDT0000 lustre-MDT0000_UUID 12
  6 UP mdd lustre-MDD0000 lustre-MDD0000_UUID 3
  7 UP qmt lustre-QMT0000 lustre-QMT0000_UUID 3
  8 UP lwp lustre-MDT0000-lwp-MDT0000 lustre-MDT0000-lwp-MDT0000_UUID 4
  9 UP osp lustre-OST0000-osc-MDT0000 lustre-MDT0000-mdtlov_UUID 4
 10 UP osp lustre-OST0002-osc-MDT0000 lustre-MDT0000-mdtlov_UUID 4
 11 UP osp lustre-OST0001-osc-MDT0000 lustre-MDT0000-mdtlov_UUID 4
 12 UP osp lustre-OST0003-osc-MDT0000 lustre-MDT0000-mdtlov_UUID 4

ما می‌توانیم سرور مدیریت لوستر (MGS) خود را به‌عنوان مورد 1، سرور متادیتای Luster خود (MDS) به‌عنوان مورد 3، هدف متادیتای Luster (MDT) خود را به‌عنوان مورد 5، و چهار سرور ذخیره‌سازی اشیاء Luster (OSS) خود را به‌عنوان موارد 8 تا ببینیم. 12. برای درک سایر خدمات، لطفاً راهنمای Luster را مرور کنید.

ابزار پیکربندی فایل سیستم Lustre "lfs" است. ما می‌توانیم از lfs برای مدیریت striping فایل‌ها در سرورهای Luster Object Storage (OSS) و Object Storage Targets (OST) و همچنین اجرای عملیات‌های رایج سیستم فایل مانند find، df و مدیریت سهمیه استفاده کنیم.

Striping به ما این امکان را می دهد که نحوه توزیع یک فایل در سراسر خوشه Luster خود را برای ارائه بهترین عملکرد ممکن پیکربندی کنیم. در حالی که نوار کردن یک فایل بزرگ در بسیاری از OSS های ممکن اغلب بهترین عملکرد را با موازی کردن IO ارائه می دهد، حذف یک فایل کوچک ممکن است منجر به عملکرد بدتر از زمانی شود که آن فایل فقط در یک نمونه نوشته شود.

برای آزمایش این، بیایید دو فهرست راه‌اندازی کنیم، یکی با تعداد نوار یک OSS، و دیگری با تعداد راه راه "-1"، که نشان می‌دهد فایل‌های نوشته شده در آن دایرکتوری باید تا حد امکان در سراسر OSS راه راه شوند. دایرکتوری‌ها می‌توانند پیکربندی‌های نواری را نگه دارند که توسط فایل‌های ایجاد شده در آنها به ارث می‌رسد، اما زیر شاخه‌ها و فایل‌های فردی در آن فهرست را می‌توان به گونه‌ای پیکربندی کرد که در صورت تمایل، راه راه متفاوتی داشته باشند. برای ایجاد این دو دایرکتوری، دستورات زیر را در پوشه "/mnt/lustre" اجرا کنید :

sudo mkdir stripe_one
sudo mkdir stripe_all
sudo lfs setstripe -c 1 stripe_one/
sudo lfs setstripe -c -1 stripe_all/

می توانید تنظیمات نوار یک فایل یا دایرکتوری را با استفاده از lfs getstripe مشاهده کنید:

sudo lfs getstripe stripe_all/

خروجی را خواهید دید که تعداد نوار را به صورت -1 نشان می دهد:

stripe_all/
stripe_count:  -1 stripe_size:   1048576 pattern:    raid0 stripe_offset: -1

اکنون ما آماده ایم تا بهبودهای عملکردی را که با نوشتن یک فایل بزرگ راه راه در چندین OSS قابل دستیابی است، آزمایش کنیم.

7. تست Luster I/O

ما دو تست ساده از Luster IO را اجرا خواهیم کرد تا مزایای عملکردی احتمالی و قابلیت‌های مقیاس‌پذیری سیستم فایل Luster را نشان دهیم. ابتدا یک آزمایش ساده با استفاده از ابزار "dd" برای نوشتن یک فایل 5 گیگابایتی در فهرست "stripe_one" خود اجرا می کنیم. دستور زیر را اجرا کنید :

sudo dd if=/dev/zero of=stripe_one/test bs=1M count=5000

فرآیند نوشتن 5 گیگابایت داده در سیستم فایل به طور متوسط ​​حدود 27 ثانیه است، و نوشتن بر روی یک دیسک ثابت (PD) روی یک سرور ذخیره سازی شی (OSS) منفرد است.

برای آزمایش striping در چندین OSS، و در نتیجه چندین PD، فقط باید دایرکتوری خروجی را که در آن می نویسیم تغییر دهیم. دستور زیر را اجرا کنید :

sudo dd if=/dev/zero of=stripe_all/test bs=1M count=5000

توجه داشته باشید که "of=stripe_one/test" را به "of=stripe_all/test" تغییر دادیم. این به نوشتن جریانی ما اجازه می‌دهد تا نوشته‌های خود را در تمام سرورهای ذخیره‌سازی شیء ما توزیع کند و نوشتن را به طور متوسط ​​در 5.5 ثانیه تکمیل کند، تقریباً 4 برابر سریع‌تر با چهار OSS.

با افزودن سرورهای ذخیره‌سازی شیء، این عملکرد همچنان افزایش می‌یابد، و می‌توانید OSS‌ها را با سیستم فایل به‌صورت آنلاین اضافه کنید و برای افزایش ظرفیت و کارایی به‌صورت آنلاین، داده‌ها را بر روی آن‌ها striping کنید. با استفاده از Luster در پلتفرم Google Cloud، امکانات بی‌پایان است، و ما از دیدن آنچه می‌توانید بسازید و چه مشکلاتی را می‌توانید حل کنید، هیجان‌زده هستیم.

8. نتیجه گیری

تبریک می‌گوییم، شما یک خوشه Luster در Google Cloud Platform ایجاد کرده‌اید! می‌توانید از این اسکریپت‌ها به‌عنوان نقطه شروع برای ساختن خوشه Luster خود و ادغام آن با خوشه محاسباتی مبتنی بر ابر خود استفاده کنید.

استقرار را پاک کنید

خروج از گره Luster:

exit

با اجرای دستور زیر از Google Cloud Shell خود، پس از خروج از خوشه Luster، به راحتی می توانید استقرار را پاک کنید.

gcloud deployment-manager deployments delete lustre

وقتی از شما خواسته شد، Y را تایپ کنید تا ادامه دهید. این عمل ممکن است کمی طول بکشد، لطفا صبور باشید.

پروژه را حذف کنید

برای پاکسازی، ما به سادگی پروژه خود را حذف می کنیم.

  • در منوی پیمایش IAM & Admin را انتخاب کنید
  • سپس در زیر منو روی تنظیمات کلیک کنید
  • روی نماد سطل زباله با متن "حذف پروژه" کلیک کنید.
  • دستورالعمل های فرمان را دنبال کنید

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

  • نحوه استفاده از سرویس مدیر استقرار GCP.
  • نحوه پیکربندی و استقرار فایل سیستم Luster در GCP.
  • نحوه پیکربندی striping و آزمایش I/O ساده در سیستم فایل Luster.

پشتیبانی را پیدا کنید

آیا با استفاده از اسکریپت های مدیر استقرار Luster چیز جالبی می سازید؟ سوالی دارید؟ در گروه بحث Google Cloud Luster با ما گپ بزنید. برای درخواست ویژگی‌ها، ارائه بازخورد، یا گزارش اشکال، لطفاً از این فرم استفاده کنید، یا در صورت تمایل کد را تغییر دهید و یک درخواست کشش ارسال کنید! آیا می خواهید با یک متخصص Google Cloud صحبت کنید؟ امروز از طریق وب‌سایت محاسبات با عملکرد بالا Google Cloud با تیم Google Cloud تماس بگیرید.

بیشتر بدانید

بازخورد

لطفاً با استفاده از این پیوند ، بازخورد خود را درباره این کد لبه ارسال کنید. تکمیل بازخورد کمتر از 5 دقیقه طول می کشد. متشکرم