GCP-এ একটি দীপ্তি সমান্তরাল ফাইল সিস্টেম স্থাপন করুন

1. ওভারভিউ

Google ক্লাউড প্ল্যাটফর্মে একটি লাস্টার প্যারালাল ফাইল সিস্টেম ক্লাস্টার চালানোর জন্য Google Codelab-এ স্বাগতম!

d51beef5f729cbe9.png

ডেটা হাই পারফরম্যান্স কম্পিউটিং অনুশীলনের মূল বিষয়, এবং অত্যন্ত উচ্চ গতিতে এবং কম বিলম্বে প্রচুর পরিমাণে ডেটা অ্যাক্সেস করা HPC ওয়ার্কলোড চালানোর ক্ষেত্রে সর্বদা একটি মূল চ্যালেঞ্জ হয়ে দাঁড়িয়েছে। উচ্চ কার্যসম্পাদন সঞ্চয়স্থানের জন্য এই প্রয়োজনীয়তাটি ক্লাউডে পরিবর্তিত হয়নি, এবং প্রকৃতপক্ষে দ্রুত এবং সহজে বিপুল পরিমাণ সঞ্চয়স্থান ব্যবহার করার ক্ষমতা সর্বাধিক গুরুত্বপূর্ণ হয়ে উঠেছে।

এইচপিসি কেন্দ্রগুলি দীর্ঘকাল ধরে লাস্টার সমান্তরাল ফাইল সিস্টেমের মতো প্রযুক্তি ব্যবহার করে এই প্রয়োজনীয়তা পূরণ করেছে। Luster হল আজকের সবচেয়ে জনপ্রিয় ওপেন সোর্স হাই পারফরম্যান্স স্টোরেজ সলিউশনগুলির মধ্যে একটি, এবং জুন 2005 থেকে, এটি ধারাবাহিকভাবে শীর্ষ দশের অন্তত অর্ধেক এবং বিশ্বের শীর্ষ 100টি দ্রুততম সুপার কম্পিউটারের মধ্যে 60টিরও বেশি ব্যবহার করেছে৷ Luster ক্ষমতার শত শত PB পর্যন্ত স্কেল করার ক্ষমতা রাখে, এবং HPC জবগুলির জন্য সম্ভাব্য সর্বাধিক পারফরম্যান্স প্রদান করে, সিস্টেমগুলি একটি একক নামস্থানে TB/s থ্রুপুট সরবরাহ করে।

স্টোরেজের চাহিদা মেটাতে গুগল ক্লাউড দুটি পন্থা নিয়েছে। প্রথমে, GCP তাদের সমর্থিত, এন্টারপ্রাইজ-শ্রেণির DDN EXAScaler Luster সফ্টওয়্যার GCP মার্কেটপ্লেসে আনতে DDN-এর সাথে অংশীদারিত্ব করেছে৷ দ্বিতীয়ত, Google ক্লাউডের আমাদের প্রকৌশলীরা Google ক্লাউড ডিপ্লোয়মেন্ট ম্যানেজার ব্যবহার করে Google Compute Engine-এ একটি Luster স্টোরেজ ক্লাস্টার সহজে কনফিগার করতে এবং স্থাপন করার জন্য স্ক্রিপ্টের একটি সেট তৈরি এবং ওপেন-সোর্স করেছেন

Google ক্লাউড প্ল্যাটফর্মের লাস্টার এটি যে পরিকাঠামোতে চলছে তার সর্বোচ্চ কার্যক্ষমতা প্রদান করতে সমানভাবে সক্ষম৷ GCP-এ এর পারফরম্যান্স এতই ভালো যে এটি IO-500 স্টোরেজ সিস্টেম বেঞ্চমার্কে 2019 সালে আমাদের অংশীদার DDN-এর সাথে 8ম স্থানে রয়েছে , যা IO-500-এ সর্বোচ্চ-র্যাঙ্কিং ক্লাউড-ভিত্তিক ফাইল সিস্টেমের প্রতিনিধিত্ব করে। আজ আমরা আপনাকে Lustre-এর জন্য ওপেন সোর্স ডিপ্লোয়মেন্ট ম্যানেজার স্ক্রিপ্টগুলি স্থাপনের মাধ্যমে নিয়ে যাব। আপনি যদি আপনার Luster ক্লাস্টারের জন্য Lustre-বিশেষজ্ঞ সমর্থন সহ একটি এন্টারপ্রাইজ, কঠোর দ্যুতি অভিজ্ঞতা, সেইসাথে একটি ব্যবস্থাপনা এবং GUI বা Luster টিউনিংয়ের মতো বৈশিষ্ট্যগুলি পেতে আগ্রহী হন, আমরা DDN EXAScaler Marketplace অফারটি তদন্ত করার পরামর্শ দিই।

আপনি কি শিখবেন

  • কিভাবে GCP ডিপ্লোয়মেন্ট ম্যানেজার সার্ভিস ব্যবহার করবেন
  • কিভাবে GCP-এ একটি Luster ফাইল সিস্টেম কনফিগার এবং স্থাপন করবেন।
  • কীভাবে স্ট্রিপিং কনফিগার করবেন এবং লুস্টার ফাইল সিস্টেমে সাধারণ I/O পরীক্ষা করবেন।

পূর্বশর্ত

  • Google ক্লাউড প্ল্যাটফর্ম অ্যাকাউন্ট এবং বিলিং সহ একটি প্রকল্প
  • মৌলিক লিনাক্স অভিজ্ঞতা

2. সেটআপ

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

একটি প্রকল্প তৈরি করুন

আপনার যদি ইতিমধ্যে একটি Google অ্যাকাউন্ট না থাকে (Gmail বা G Suite), তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে। Google ক্লাউড প্ল্যাটফর্ম কনসোলে সাইন-ইন করুন ( console.cloud.google.com ) এবং সংস্থান পরিচালনা পৃষ্ঠাটি খুলুন:

359c06e07e6d699f.png

প্রকল্প তৈরি করুন ক্লিক করুন।

25c23d651abb837b.png

একটি প্রকল্পের নাম লিখুন । প্রজেক্ট আইডিটি মনে রাখুন (উপরের স্ক্রিনশটে লাল রঙে হাইলাইট করা হয়েছে)। সমস্ত Google ক্লাউড প্রজেক্ট জুড়ে প্রোজেক্ট আইডি একটি অনন্য নাম হতে হবে। আপনার প্রকল্পের নাম অনন্য না হলে Google ক্লাউড প্রকল্পের নামের উপর ভিত্তি করে একটি এলোমেলো প্রকল্প আইডি তৈরি করবে।

এর পরে, Google ক্লাউড সংস্থানগুলি ব্যবহার করার জন্য আপনাকে বিকাশকারী কনসোলে বিলিং সক্ষম করতে হবে৷

এই কোডল্যাবের মাধ্যমে চালানোর জন্য আপনার কয়েক ডলারের বেশি খরচ করা উচিত নয়, তবে আপনি যদি আরও সংস্থান ব্যবহার করার সিদ্ধান্ত নেন বা আপনি সেগুলিকে চলমান রেখে দেন তবে এটি আরও বেশি হতে পারে (এই নথির শেষে "উপসংহার" বিভাগটি দেখুন)। Google ক্লাউড প্ল্যাটফর্ম মূল্য নির্ধারণ ক্যালকুলেটর এখানে উপলব্ধ।

Google ক্লাউড প্ল্যাটফর্মের নতুন ব্যবহারকারীরা $300 বিনামূল্যের ট্রায়ালের জন্য যোগ্য৷

গুগল ক্লাউড শেল

যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আমরা Google ক্লাউড শেল ব্যবহার করব, ক্লাউডে চলমান একটি কমান্ড লাইন পরিবেশ।

গুগল ক্লাউড শেল চালু করুন

GCP কনসোল থেকে উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

dbad104cef962719.png

তারপর স্টার্ট ক্লাউড শেল ক্লিক করুন:

4e50db320508ac88.png

পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে:

20b0aa80492144d.png

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, নেটওয়ার্ক কর্মক্ষমতাকে ব্যাপকভাবে উন্নত করে এবং প্রমাণীকরণ সহজ করে। এই ল্যাবে আপনার অনেক কাজ, যদি না হয়, তবে অনেক কিছুই করা যেতে পারে শুধু একটি ওয়েব ব্রাউজার বা একটি Google Chromebook দিয়ে৷

একবার ক্লাউড শেলের সাথে সংযুক্ত হয়ে গেলে, আপনি দেখতে পাবেন যে আপনি ইতিমধ্যেই প্রমাণীকরণ করেছেন এবং প্রকল্পটি ইতিমধ্যেই আপনার PROJECT_ID এ সেট করা আছে:

$ gcloud auth list

কমান্ড আউটপুট:

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

কমান্ড আউটপুট:

[core]
project = <PROJECT_ID>

যদি প্রজেক্ট আইডি সঠিকভাবে সেট করা না থাকে তাহলে আপনি এই কমান্ড দিয়ে এটি সেট করতে পারেন:

$ gcloud config set project <PROJECT_ID>

কমান্ড আউটপুট:

Updated property [core/project].

3. দীপ্তি স্থাপনার কনফিগারেশন প্রস্তুত করুন এবং পর্যালোচনা করুন

Luster Deployment Manager Scripts ডাউনলোড করুন

ক্লাউড শেল সেশনে, Google ক্লাউড প্ল্যাটফর্ম স্থাপনার-ব্যবস্থাপক ফাইলগুলির জন্য লুস্টার ধারণ করে গিট সংগ্রহস্থল ক্লোন (ডাউনলোড) করতে নিম্নলিখিত কমান্ডটি চালান:

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

নিম্নলিখিত কমান্ডটি চালানোর মাধ্যমে Luster স্থাপনার কনফিগারেশন ডিরেক্টরিতে স্যুইচ করুন:

cd deploymentmanager-samples/community/lustre/

লাস্টার ডিপ্লয়মেন্ট YAML কনফিগার করুন

স্থাপনা ব্যবস্থাপক স্থাপনার কনফিগারেশন প্রদান করতে একটি YAML ফাইল ব্যবহার করে। এই YAML ফাইলটি স্থাপনার কনফিগারেশনের বিবরণ দেয়, যেমন মোতায়েন করার জন্য Luster সংস্করণ এবং স্থাপন করার জন্য মেশিনের উদাহরণের ধরন। ফাইলটি ডিফল্টরূপে কনফিগার করা হয়েছে কোনো কোটা বৃদ্ধি ছাড়াই একটি নতুন প্রকল্পে স্থাপন করার জন্য, তবে আপনি এই কোডল্যাবের জন্য ইচ্ছামতো মেশিনের ধরন বা ক্ষমতা পরিবর্তন করতে পারেন। এই কোডল্যাবটি এই ডিফল্টগুলি ব্যবহার করার জন্য লেখা হয়েছে, তাই আপনি যদি কোনও পরিবর্তন করেন তবে ত্রুটি এড়াতে আপনাকে অবশ্যই এই কোডল্যাব জুড়ে সেই পরিবর্তনগুলি বহন করতে হবে। উৎপাদনে, আমরা সঞ্চয় ক্ষমতা এবং প্রকারের উপর নির্ভর করে, MDS নোডের জন্য কমপক্ষে একটি 32 vCPUs দৃষ্টান্ত এবং OSS নোডগুলির জন্য কমপক্ষে একটি 8 বা 16 vCPUs উদাহরণ সুপারিশ করি৷

ক্লাউড শেল সেশনে YAML ফাইল পর্যালোচনা বা সম্পাদনা করতে, স্থাপনার কনফিগারেশন YAML ফাইল Lustre-cluster.yaml খুলুন । আপনি হয় আপনার পছন্দের কমান্ড লাইন সম্পাদক (vi, nano, emacs, ইত্যাদি) ব্যবহার করতে পারেন অথবা ফাইলের বিষয়বস্তু দেখতে ক্লাউড কনসোল কোড এডিটর ব্যবহার করতে পারেন:

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 ফাইলের মধ্যে বেশ কয়েকটি ক্ষেত্র রয়েছে। একটি তারকাচিহ্ন (*) সহ নীচের ক্ষেত্রগুলি প্রয়োজন৷ এই ক্ষেত্র অন্তর্ভুক্ত:

ক্লাস্টার কনফিগারেশন

  • ক্লাস্টার_নাম* - লাস্টার ক্লাস্টারের নাম, সমস্ত স্থাপন করা সংস্থানকে পূর্বে যুক্ত করে
  • জোন* - যে অঞ্চলে ক্লাস্টার স্থাপন করতে হবে
  • cidr* - CIDR বিন্যাসে IP পরিসর
  • external_ips* - True/False, Luster নোডের বাহ্যিক IP ঠিকানা আছে। মিথ্যা হলে একটি ক্লাউড NAT একটি NAT গেটওয়ে হিসাবে সেটআপ করা হয়৷
  • vpc_net - বিদ্যমান ভিপিসিতে লুস্টার ক্লাস্টার স্থাপন করতে এই ক্ষেত্রটি এবং vpc_subnet ক্ষেত্রটিকে সংজ্ঞায়িত করুন
  • vpc_subnet - বিদ্যমান ভিপিসি সাবনেট যাতে লুস্টার ক্লাস্টার স্থাপন করে
  • shared_vpc_host_proj - এই ক্ষেত্রটিকে সংজ্ঞায়িত করুন, সেইসাথে vpc_net এবং vpc_subnet ক্ষেত্রগুলি, একটি শেয়ার্ড ভিপিসিতে ক্লাস্টার স্থাপন করতে

ফাইল সিস্টেম কনফিগারেশন

  • fs_name - লুস্টার ফাইল সিস্টেমের নাম
  • lustre_version - মোতায়েন করার জন্য Luster সংস্করণ, 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 - MDS/MGS নোডের জন্য নির্দিষ্ট করার জন্য অভ্যন্তরীণ IP ঠিকানা
  • 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 - GB-তে MDS বুট ডিস্কের আকার
  • mdt_disk_type* - মেটাডেটা টার্গেট (MDT) ডিস্কের জন্য ডিস্কের ধরন (pd-standard, pd-ssd, local-ssd)
  • mdt_disk_size_gb* - GB তে MDT ডিস্কের আকার

ওএসএস কনফিগারেশন

  • oss_node_count* - তৈরি করার জন্য অবজেক্ট স্টোরেজ সার্ভার (OSS) নোডের সংখ্যা
  • oss_ip_range_start - OSS নোড(গুলি) এর জন্য IP পরিসরের শুরু। নির্দিষ্ট না থাকলে, স্বয়ংক্রিয় আইপি অ্যাসাইনমেন্ট ব্যবহার করুন
  • oss_machine_type - OSS নোডের জন্য ব্যবহার করার জন্য মেশিনের ধরন
  • oss_boot_disk_type - OSS বুট ডিস্কের জন্য ডিস্কের ধরন (pd-standard, pd-ssd)
  • oss_boot_disk_size_gb - GB তে MDS বুট ডিস্কের আকার
  • ost_disk_type* - অবজেক্ট স্টোরেজ টার্গেট (OST) ডিস্কের জন্য ডিস্কের ধরন (pd-standard, pd-ssd, local-ssd)
  • ost_disk_size_gb* - GB তে OST ডিস্কের আকার

4. কনফিগারেশন স্থাপন এবং যাচাই করা

কনফিগারেশন স্থাপন করুন

ক্লাউড শেল সেশনে, 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 ক্লাউড প্ল্যাটফর্ম কনসোলে স্থাপনা দেখতে এই পদক্ষেপগুলি অনুসরণ করুন:

  • ক্লাউড প্ল্যাটফর্ম কনসোলে, কনসোলের উপরের বাম কোণে পণ্য ও পরিষেবা মেনু খুলুন (তিনটি অনুভূমিক লাইন)।
  • ডিপ্লয়মেন্ট ম্যানেজার এ ক্লিক করুন।
  • স্থাপনার বিবরণ দেখতে Luster ক্লিক করুন.
  • ওভারভিউ - দীপ্তিতে ক্লিক করুন। স্থাপনার বৈশিষ্ট্য ফলক সামগ্রিক স্থাপনার কনফিগারেশন প্রদর্শন করে।
  • কনফিগার সম্পত্তিতে " দেখুন " ক্লিক করুন। কনফিগ ফলক পূর্বে পরিবর্তিত স্থাপনার কনফিগারেশন YAML ফাইলের বিষয়বস্তু প্রদর্শন করে। এগিয়ে যাওয়ার আগে বিষয়বস্তু সঠিক কিনা যাচাই করুন। আপনি যদি একটি স্থাপনার কনফিগারেশন পরিবর্তন করতে চান তবে "ক্লিন আপ দ্য ডিপ্লয়মেন্ট" এর ধাপ অনুযায়ী স্থাপনাটি মুছে ফেলুন এবং "কনফিগার লাস্টার ডিপ্লয়মেন্ট YAML" এর ধাপ অনুযায়ী স্থাপনাটি পুনরায় চালু করুন।
  • (ঐচ্ছিক) Lustre-cluster বিভাগের অধীনে, Lustre.jinja টেমপ্লেট দ্বারা তৈরি প্রতিটি সংস্থান ক্লিক করুন এবং বিশদ পর্যালোচনা করুন।

ডিপ্লয়মেন্টের কনফিগারেশন যাচাই করার সাথে সাথে ক্লাস্টারের দৃষ্টান্তগুলি শুরু হয়েছে তা নিশ্চিত করা যাক। ক্লাউড প্ল্যাটফর্ম কনসোলে, পণ্য ও পরিষেবা মেনুতে, কম্পিউট ইঞ্জিন > ভিএম ইনস্ট্যান্সে ক্লিক করুন।

aec8498e04a3c334.png

VM দৃষ্টান্ত পৃষ্ঠায়, পাঁচটি ভার্চুয়াল মেশিনের দৃষ্টান্ত পর্যালোচনা করুন যা স্থাপনার ব্যবস্থাপক দ্বারা তৈরি করা হয়েছে। এর মধ্যে রয়েছে lustre-mds1 , lustre-oss1 , lustre-oss2, lustre-oss3, এবং lustre-oss4

5. লাস্টার ক্লাস্টার অ্যাক্সেস করুন

ইনস্টলেশন মনিটর

ভিএম ইনস্ট্যান্স পৃষ্ঠায়, ইনস্ট্যান্স বিবরণ পৃষ্ঠা খুলতে lustre-mds1-এ ক্লিক করুন

ba0bea7acdbb9527.png

সিরিয়াল কনসোল আউটপুট পৃষ্ঠা খুলতে সিরিয়াল পোর্ট 1 (কনসোল)ক্লিক করুন । আমরা এই সিরিয়াল আউটপুটটি এমডিএস ইন্সট্যান্সের ইনস্টলেশন প্রক্রিয়া নিরীক্ষণ করতে ব্যবহার করব এবং স্টার্টআপ-স্ক্রিপ্ট সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করব। সিরিয়াল আউটপুট আপডেট করতে পৃষ্ঠার শীর্ষে "রিফ্রেশ" বোতামে ক্লিক করুন। লুস্টার কার্নেলে বুট করার জন্য নোডটি একবার রিবুট হবে এবং নীচের মত বার্তাগুলি প্রদর্শন করবে:

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 ইনস্টল করা হয়েছে, এবং ফাইল সিস্টেমটি ব্যবহারের জন্য প্রস্তুত!

লাস্টার ক্লাস্টার অ্যাক্সেস করুন

ক্লাউড শেল সেশনে, Google ক্লাউড কনসোলে lustre-mds1 ইন্সট্যান্সের পাশের SSH বোতামে ক্লিক করুন। বিকল্পভাবে, ক্লাউড শেল-এ নিম্নলিখিত কমান্ডটি চালান , lustre-mds1 নোডের জোনের জন্য <ZONE> প্রতিস্থাপন করুন:

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

এই কমান্ডটি lustre-mds1 ভার্চুয়াল মেশিনে লগ ইন করে। এটি হল Luster Metadata Server (MDS) উদাহরণ, যা Luster Management Server (MGS) উদাহরণ হিসেবেও কাজ করে। এই উদাহরণটি ফাইল সিস্টেমের জন্য সমস্ত প্রমাণীকরণ এবং মেটাডেটা অনুরোধগুলি পরিচালনা করে।

আমাদের lustre-mds1 ইনস্ট্যান্সে ফাইল সিস্টেম মাউন্ট করা যাক যাতে এটি পরে পরীক্ষা করতে সক্ষম হয়। নিম্নলিখিত কমান্ডগুলি চালান :

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

এই তিনটি আদেশ তিনটি কাজ করে। প্রথম কমান্ডটি একটি স্থানীয় ডিরেক্টরি তৈরি করে যা আমরা "/mnt/lustre" এ মাউন্ট পয়েন্ট হিসাবে ব্যবহার করব। দ্বিতীয় কমান্ডটি "lustre" টাইপ ফাইল সিস্টেম মাউন্ট করার জন্য "mount" কমান্ড চালায়, যা lustre-mds1 সার্ভারে থাকে এবং যেখানে ফাইল সিস্টেমের নাম "lustre", "/lustre" হিসাবে দেখা যায়। মাউন্ট কমান্ড আপনার স্থানীয় "/mnt/lustre" ডিরেক্টরিতে Luster ফাইল সিস্টেম মাউন্ট করে। অবশেষে, তৃতীয় কমান্ড ডিরেক্টরিকে /mnt/lustre ডিরেক্টরিতে পরিবর্তন করে, যেখানে Luster মাউন্ট করা হয়।

আপনি এখন /mnt/lustre এ Luster ফাইল সিস্টেম মাউন্ট করেছেন। আসুন আমরা এই ফাইল সিস্টেমটি দিয়ে কী করতে পারি তা একবার দেখে নেওয়া যাক।

6. লাস্টার CLI টুলস এর সফর

আপনি যদি Luster এবং এর সরঞ্জামগুলির সাথে পরিচিত না হন তবে আমরা এখানে কয়েকটি গুরুত্বপূর্ণ কমান্ডের মাধ্যমে হাঁটব।

Lustre এর নিম্ন-স্তরের ক্লাস্টার ম্যানেজমেন্ট টুল হল "lctl"। আমরা Luster ক্লাস্টার কনফিগার এবং পরিচালনা করতে এবং Luster ক্লাস্টারের পরিষেবাগুলি দেখতে lctl ব্যবহার করতে পারি। আমাদের নতুন লাস্টার ক্লাস্টারে পরিষেবা এবং দৃষ্টান্তগুলি দেখতে, সম্পাদন করুন:

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

আমরা আমাদের লাস্টার ম্যানেজমেন্ট সার্ভার (এমজিএস) আইটেম 1 হিসাবে, আমাদের লুস্টার মেটাডেটা সার্ভার (MDS) আইটেম 3 হিসাবে, আমাদের লুস্টার মেটাডেটা টার্গেট (MDT) আইটেম 5 হিসাবে এবং আমাদের চারটি লুস্টার অবজেক্ট স্টোরেজ সার্ভার (OSS) আইটেম 8 হিসাবে দেখতে পাচ্ছি। 12. অন্যান্য পরিষেবাগুলি কী তা বোঝার জন্য, অনুগ্রহ করে লুস্টার ম্যানুয়ালটি পর্যালোচনা করুন৷

Lustre এর ফাইল সিস্টেম কনফিগারেশন টুল হল "lfs"। আমরা আমাদের লুস্টার অবজেক্ট স্টোরেজ সার্ভার (ওএসএস) এবং তাদের নিজ নিজ অবজেক্ট স্টোরেজ টার্গেট (ওএসটি) জুড়ে ফাইলের স্ট্রিপিং পরিচালনার পাশাপাশি ফাইন্ড, ডিএফ, এবং কোটা ব্যবস্থাপনার মতো সাধারণ ফাইল সিস্টেম অপারেশন চালানোর জন্য lfs ব্যবহার করতে পারি।

স্ট্রাইপিং আমাদেরকে কনফিগার করতে দেয় যে কীভাবে আমাদের লাস্টার ক্লাস্টার জুড়ে একটি ফাইল বিতরণ করা হয় যাতে সর্বোত্তম পারফরম্যান্স সম্ভব হয়। যতটা সম্ভব OSS জুড়ে একটি বড় ফাইল স্ট্রাইপ করা প্রায়ই IO-কে সমান্তরাল করে সর্বোত্তম কার্যকারিতা প্রদান করে, একটি ছোট ফাইল স্ট্রাইপ করলে সেই ফাইলটি শুধুমাত্র একটি ইন্সট্যান্সে লেখার চেয়ে খারাপ কর্মক্ষমতা হতে পারে।

এটি পরীক্ষা করার জন্য, আসুন দুটি ডিরেক্টরি সেট আপ করি, একটিতে একটি OSS-এর স্ট্রাইপ গণনা সহ, এবং একটি স্ট্রাইপ গণনা "-1" সহ, নির্দেশ করে যে সেই ডিরেক্টরিতে লেখা ফাইলগুলি যতটা সম্ভব ওএসএস জুড়ে স্ট্রাইপ করা উচিত৷ ডিরেক্টরিগুলি স্ট্রাইপিং কনফিগারেশন ধারণ করতে পারে যা তাদের মধ্যে তৈরি করা ফাইলগুলির দ্বারা উত্তরাধিকারসূত্রে পাওয়া যায়, তবে সেই ডিরেক্টরির মধ্যে থাকা সাব-ডিরেক্টরি এবং স্বতন্ত্র ফাইলগুলি যদি ইচ্ছা হয় তবে আলাদাভাবে স্ট্রাইপ করার জন্য কনফিগার করা যেতে পারে। এই দুটি ডিরেক্টরি তৈরি করতে, "/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 ফাইল সিস্টেমের সম্ভাব্য কর্মক্ষমতা সুবিধা এবং স্কেলিং ক্ষমতা প্রদর্শন করতে Luster IO-এর দুটি সাধারণ পরীক্ষা চালাব। প্রথমে, আমরা আমাদের "stripe_one" ডিরেক্টরিতে একটি 5GB ফাইল লিখতে "dd" ইউটিলিটি ব্যবহার করে একটি সাধারণ পরীক্ষা চালাব। নিম্নলিখিত কমান্ডটি চালান :

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

ফাইল সিস্টেমে 5GB ডেটা লেখার প্রক্রিয়া গড়ে প্রায় 27 সেকেন্ড, একটি একক অবজেক্ট স্টোরেজ সার্ভারে (ওএসএস) একটি একক স্থায়ী ডিস্কে (পিডি) লেখা।

একাধিক OSS, এবং সেইজন্য একাধিক PD জুড়ে স্ট্রাইপিং পরীক্ষা করার জন্য, আমরা যে আউটপুট ডিরেক্টরিতে লিখি তা পরিবর্তন করতে হবে। নিম্নলিখিত কমান্ডটি চালান :

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

লক্ষ্য করুন আমরা "of=stripe_one/test" কে "of=stripe_all/test" এ পরিবর্তন করেছি। এটি আমাদের একক স্ট্রীম লেখাকে আমাদের সমস্ত অবজেক্ট স্টোরেজ সার্ভারে লেখাগুলি বিতরণ করার অনুমতি দেবে, এবং চারটি OSS-এর সাহায্যে গড়ে 5.5 সেকেন্ডে, প্রায় 4x দ্রুত লেখাটি সম্পূর্ণ করবে৷

আপনি অবজেক্ট স্টোরেজ সার্ভার যোগ করার সাথে সাথে এই কর্মক্ষমতা বাড়তে থাকে এবং আপনি অনলাইনে ফাইল সিস্টেমের সাথে OSS যোগ করতে পারেন এবং অনলাইনে ক্ষমতা এবং কর্মক্ষমতা বাড়াতে সেগুলিতে ডেটা স্ট্রিপ করা শুরু করতে পারেন। Google ক্লাউড প্ল্যাটফর্মে Luster ব্যবহার করার সম্ভাবনাগুলি অফুরন্ত, এবং আপনি কী তৈরি করতে পারেন এবং আপনি কোন সমস্যাগুলি সমাধান করতে পারেন তা দেখে আমরা উত্তেজিত৷

8. উপসংহার

অভিনন্দন, আপনি Google ক্লাউড প্ল্যাটফর্মে একটি Luster ক্লাস্টার তৈরি করেছেন! আপনি এই স্ক্রিপ্টগুলিকে আপনার নিজের লুস্টার ক্লাস্টার তৈরি করতে এবং এটিকে আপনার ক্লাউড-ভিত্তিক কম্পিউটিং ক্লাস্টারের সাথে একীভূত করতে একটি সূচনা পয়েন্ট হিসাবে ব্যবহার করতে পারেন।

স্থাপনা পরিষ্কার করুন

লাস্টার নোড থেকে লগআউট করুন:

exit

লুস্টার ক্লাস্টার থেকে লগ আউট করার পরে আপনার Google ক্লাউড শেল থেকে নিম্নলিখিত কমান্ডটি কার্যকর করার পরে আপনি সহজেই স্থাপনাটি পরিষ্কার করতে পারেন:

gcloud deployment-manager deployments delete lustre

অনুরোধ করা হলে, চালিয়ে যেতে Y টাইপ করুন। এই অপারেশনে কিছু সময় লাগতে পারে, অনুগ্রহ করে ধৈর্য ধরুন।

প্রকল্পটি মুছুন

পরিষ্কার করতে, আমরা কেবল আমাদের প্রকল্প মুছে ফেলি।

  • নেভিগেশন মেনুতে IAM এবং অ্যাডমিন নির্বাচন করুন
  • তারপর সাবমেনুতে সেটিংসে ক্লিক করুন
  • "প্রজেক্ট মুছুন" পাঠ্য সহ ট্র্যাশক্যান আইকনে ক্লিক করুন
  • প্রম্পট নির্দেশাবলী অনুসরণ করুন

আমরা কভার করেছি কি

  • কিভাবে GCP ডিপ্লোয়মেন্ট ম্যানেজার সার্ভিস ব্যবহার করবেন।
  • কিভাবে GCP-এ একটি Luster ফাইল সিস্টেম কনফিগার এবং স্থাপন করবেন।
  • কীভাবে স্ট্রিপিং কনফিগার করবেন এবং লুস্টার ফাইল সিস্টেমে সাধারণ I/O পরীক্ষা করবেন।

সমর্থন খুঁজুন

আপনি কি লুস্টার ডিপ্লয়মেন্ট ম্যানেজার স্ক্রিপ্টগুলি ব্যবহার করে দুর্দান্ত কিছু তৈরি করছেন? প্রশ্ন আছে? Google Cloud Luster আলোচনা গোষ্ঠীতে আমাদের সাথে চ্যাট করুন৷ বৈশিষ্ট্যের অনুরোধ করতে, প্রতিক্রিয়া প্রদান করতে, বা বাগ রিপোর্ট করতে অনুগ্রহ করে এই ফর্মটি ব্যবহার করুন, অথবা কোডটি সংশোধন করতে এবং একটি পুল অনুরোধ জমা দিতে বিনা দ্বিধায়! একজন Google ক্লাউড বিশেষজ্ঞের সাথে কথা বলতে চান? Google ক্লাউডের হাই পারফরম্যান্স কম্পিউটিং ওয়েবসাইটের মাধ্যমে আজই Google ক্লাউড টিমের সাথে যোগাযোগ করুন৷

আরও জানুন

প্রতিক্রিয়া

এই লিঙ্কটি ব্যবহার করে এই কোডল্যাব সম্পর্কে প্রতিক্রিয়া জমা দিন। প্রতিক্রিয়া সম্পূর্ণ হতে 5 মিনিটেরও কম সময় নেয়। ধন্যবাদ!