অ্যাপ্লিকেশন ডিজাইন সেন্টারের সাহায্যে দ্রুত অ্যাপ স্থাপন করুন

১. ভূমিকা

এই কোডল্যাবে, আপনি গুগল ক্লাউড অ্যাপ্লিকেশন ডিজাইন সেন্টার (ADC) ব্যবহার করে একটি ফুল-স্ট্যাক অ্যাপ্লিকেশন ডেপ্লয় করা শিখবেন। আপনি "The Cymbal London Concierge" অ্যাপ্লিকেশনটি ডেপ্লয় করবেন, যেটিতে একটি Vue 3 ফ্রন্টএন্ড, একটি FastAPI ব্যাকএন্ড এবং অ্যাপ্লিকেশনটির ডেটা ধারণকারী একটি MCP সার্ভার রয়েছে।

ADC আপনাকে আপনার অ্যাপ্লিকেশন আর্কিটেকচারকে দৃশ্যমানভাবে সংজ্ঞায়িত করতে এবং এটিকে একটি একক ইউনিট হিসাবে স্থাপন করতে দেয়, যা স্বয়ংক্রিয়ভাবে নির্ভরতা এবং সংযোগগুলি পরিচালনা করে।

আপনি যা করবেন

  • অ্যাপ্লিকেশন ডিজাইন সেন্টার সেট আপ করুন।
  • অ্যাপ্লিকেশনটির উপাদানগুলো দৃশ্যত একত্রিত করুন।
  • অ্যাপ্লিকেশন আর্কিটেকচারটি স্থাপন করুন।
  • চলমান অ্যাপ্লিকেশনটি যাচাই করুন।
  • অ্যাপ্লিকেশনটি অ্যাপ হাব-এ নিবন্ধিত ছিল কিনা তা যাচাই করুন।
  • অ্যাপ্লিকেশন মনিটরিং-এ অ্যাপ্লিকেশন মেট্রিক্স, ট্রেস এবং লগ যাচাই করুন।

আপনার যা যা লাগবে

  • ক্রোমের মতো একটি ওয়েব ব্রাউজার।
  • বিলিং সক্ষম একটি গুগল ক্লাউড প্রজেক্ট।

এই কোডল্যাবটি নতুনদের সহ সকল স্তরের ডেভেলপারদের জন্য।

আনুমানিক সময়কাল: ৪৫ মিনিট আনুমানিক খরচ: ২.০০ মার্কিন ডলারের কম

২. সেটআপ

প্রজেক্ট সেটআপ

একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন

  1. গুগল ক্লাউড কনসোলের প্রজেক্ট সিলেক্টর পেজে, একটি গুগল ক্লাউড প্রজেক্ট নির্বাচন করুন বা তৈরি করুন
  2. আপনার ক্লাউড প্রোজেক্টের জন্য বিলিং চালু আছে কিনা তা নিশ্চিত করুন। কোনো প্রোজেক্টে বিলিং চালু আছে কিনা তা কীভাবে পরীক্ষা করবেন, তা জেনে নিন।

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

ক্লাউড শেল হলো গুগল ক্লাউডে চালিত একটি কমান্ড-লাইন পরিবেশ, যা প্রয়োজনীয় টুলস সহ আগে থেকেই লোড করা থাকে।

  1. Google Cloud কনসোলের শীর্ষে থাকা Activate Cloud Shell-এ ক্লিক করুন।
  2. ক্লাউড শেলে সংযুক্ত হওয়ার পর, আপনার প্রমাণীকরণ যাচাই করুন:
    gcloud auth list
    
  3. আপনার প্রজেক্টটি কনফিগার করা হয়েছে কিনা তা নিশ্চিত করুন:
    gcloud config get project
    
  4. আপনার প্রজেক্টটি প্রত্যাশা অনুযায়ী সেট করা না থাকলে, এটি সেট করুন:
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

৩. অ্যাপ্লিকেশন ডিজাইন সেন্টার সেট আপ করুন

আপনার অ্যাপ্লিকেশনটি অ্যাসেম্বল করার আগে, আপনাকে ADC-তে আপনার ওয়ার্কস্পেস সেট আপ করতে হবে।

  1. গুগল ক্লাউড কনসোলে, অ্যাপ্লিকেশন ডিজাইন সেন্টার অনুসন্ধান করুন এবং সেখানে যান।
  2. এই প্রজেক্টে আপনি যদি প্রথমবারের মতো ADC ব্যবহার করে থাকেন, তাহলে আপনি একটি সেটআপ স্ক্রিন দেখতে পাবেন।
  3. সেটআপ-এ যান-এ ক্লিক করুন।

অ্যাপ্লিকেশন ডিজাইন সেন্টার সেটআপ করুন

  1. প্রয়োজনীয় API-গুলো আগে থেকে সক্রিয় করা না থাকলে, আপনাকে সেগুলো সক্রিয় করার জন্য অনুরোধ জানানো হবে। এগিয়ে যেতে ‘সক্রিয় করুন’ (Enable) বোতামে ক্লিক করুন।

এপিআই সক্ষম করুন

৪. এডিসি-র বৈশিষ্ট্যসমূহ অন্বেষণ

এই টাস্কে আপনি ADC-এর মূল উপাদানগুলো সম্পর্কে শিখবেন: স্পেস, ক্যাটালগ এবং টেমপ্লেট।

এডিসি স্পেস

স্পেস হলো টেমপ্লেট তৈরি এবং অ্যাপ ডেপ্লয় করার একটি স্থান। প্রতিটি স্পেস একটি গুগল ক্লাউড প্রজেক্টের অন্তর্ভুক্ত। এডিসি প্রাথমিক সেটআপের সময় একটি ডিফল্ট-স্পেস তৈরি করে, কিন্তু পরবর্তীতে আপনি বিভিন্ন অঞ্চলে অন্যান্য স্পেস তৈরি করতে পারেন।

টার্মিনালের মাধ্যমে আপনার স্পেসগুলো দেখতে, নিম্নলিখিত ধাপগুলো অনুসরণ করুন:

  1. ক্লাউড শেল টুলবারে থাকা ওপেন এডিটর- এ ক্লিক করুন অথবা টার্মিনাল ব্যবহার করুন।
  2. নিম্নলিখিত কমান্ডটি চালান:
gcloud alpha design-center spaces list \
--project="your PROJECT ID" \
--location=us-central1

আপনি এইরকম একটি আউটপুট দেখতে পাবেন, যা নির্দেশ করে যে অঞ্চলটির জন্য ডিফল্ট-স্পেস উপস্থিত রয়েছে।

createTime: '20XXXX-XX-XXT09:19:29.456016967Z'
displayName: default-space
enableGcpSharedTemplates: true
name: projects/your-project-id/locations/us-central1/spaces/default-space

৫. টেমপ্লেটটি একত্রিত করুন

এই ধাপে, আপনি একজন প্ল্যাটফর্ম টিম ইঞ্জিনিয়ারের ভূমিকা পালন করবেন। আপনার লক্ষ্য হলো আপনার প্রতিষ্ঠানের এজেন্টিক অ্যাপ্লিকেশনগুলোর জন্য একটি পুনঃব্যবহারযোগ্য, সুরক্ষিত এবং নীতিসম্মত টেমপ্লেট তৈরি করা। এই টেমপ্লেট থেকে ডেপ্লয় করা যেকোনো অ্যাপ্লিকেশন যেন আপনার কোম্পানির ক্লাউড পলিসি মেনে চলে, তা নিশ্চিত করার জন্য আপনি কম্পোনেন্ট যোগ করবেন এবং বিধিনিষেধ কনফিগার করবেন।

১. একটি নতুন ডিজাইন তৈরি করুন

  1. ADC কনসোলে, টেমপ্লেট > টেমপ্লেট তৈরি করুন -এ ক্লিক করুন।
  2. আপনার টেমপ্লেটটির নাম simple-3-tier-agentic-app দিন, কারণ এই টেমপ্লেটটি Cymbal London Concierge অ্যাপ্লিকেশন এবং অন্যান্য অনুরূপ অ্যাপ্লিকেশন ডেপ্লয় করতে ব্যবহৃত হবে। টেমপ্লেট তৈরি করুন

২. ডেটা এমসিপি সার্ভার যোগ করুন

এই কম্পোনেন্টটি ডাটাবেস ইন্টারঅ্যাকশন এবং ভেক্টর সার্চ পরিচালনা করে।

  1. অ্যাড কম্পোনেন্ট > ক্লাউড রান (সার্ভিস) -এ ক্লিক করুন। আপনি যদি সেই কম্পোনেন্টটিতে ক্লিক করেন, তাহলে উপরের ডান কোণায় একটি কম্পোনেন্ট আইডি দেখতে পাবেন। এটি cloud-run-1 এই ধরনের হবে। আমরা কোড ভিউতে এটি সম্পাদনা করে (যা পরে আলোচনা করা হবে) এটিকে data-mcp-server এ পরিবর্তন করতে পারি, কিন্তু আপাতত এটিকে এভাবেই রেখে দেওয়া যাক।উপাদান যোগ করুন
  2. সার্ভিসের নাম লিখুন: data-mcp-server
  3. উন্নত সেটিংস দেখান (Show advanced settings)- এর অধীনে, সদস্যদের (Members) সেট করুন: allUsers )। (দ্রষ্টব্য: একটি প্রোডাকশন পরিবেশে, আপনি সম্ভবত এটি সীমাবদ্ধ করবেন, কিন্তু আমরা এখানে কোডল্যাবের সরলতার জন্য এটি ব্যবহার করেছি।)
  4. উন্নত সেটিংস দেখান- এর অধীনে, VPC অ্যাক্সেস সেট করুন এবং ইগ্রেস বিকল্পটি PRIVATE_RANGES_ONLY তে সেট করুন।
  5. ঐচ্ছিকভাবে, 'Show advanced settings'-এর অধীনে 'Enable Prometheus Sidecar' থেকে টিক চিহ্নটি তুলে দিন।ভিপিসি অ্যাক্সেস
  6. সংরক্ষণ করুন- এ ক্লিক করুন।

৩. এজেন্ট ব্যাকএন্ড যোগ করুন

এটি হলো FastAPI অ্যাপ্লিকেশন যা এজেন্টিক আচরণকে সমন্বয় করে।

  1. কম্পোনেন্ট যোগ করুন > ক্লাউড রান (পরিষেবা)-এ ক্লিক করুন।
  2. এর নাম দিন agent-backend
  3. 'Show advanced fields'-এর অধীনে, 'Create Service Account' চেক করুন এবং 'Service Account Project Roles'-এর অধীনে নিম্নলিখিত রোলগুলি এক এক করে যোগ করুন:
    • roles/monitoring.metricWriter
    • roles/logging.logWriter
    • roles/cloudtrace.agent
    • roles/telemetry.writer
    • roles/serviceusage.serviceUsageConsumer । এই রোলগুলো এজেন্টকে ক্লাউড মনিটরিং, ক্লাউড লগিং এবং ক্লাউড ট্রেস ব্যবহার করার অনুমতি দেবে। কমপ্লায়েন্স কনফিগ: প্ল্যাটফর্ম টিম প্রয়োজনীয় রোলগুলো স্পষ্টভাবে তালিকাভুক্ত করার মাধ্যমে ন্যূনতম বিশেষাধিকারের নীতি প্রয়োগ করে।
    ভূমিকা
  4. উন্নত সেটিংস দেখান- এর অধীনে, সদস্যদেরকেallUsers ) হিসেবে সেট করুন।
  5. উন্নত সেটিংস দেখান- এর অধীনে, VPC অ্যাক্সেস সেট করুন এবং ইগ্রেস বিকল্পটি PRIVATE_RANGES_ONLY তে সেট করুন।
  6. ঐচ্ছিকভাবে, 'Show advanced settings'-এর অধীনে 'Enable Prometheus Sidecar' থেকে টিক চিহ্নটি তুলে দিন।
  7. agent-backend থেকে data-mcp-server একটি সংযোগ টেনে এনে agent-backend data-mcp-server সাথে সংযুক্ত করুন।
  8. সংরক্ষণ করুন- এ ক্লিক করুন।

৪. ফ্রন্টএন্ড যোগ করুন

ফ্রন্ট এন্ড UI।

  1. কম্পোনেন্ট যোগ করুন > ক্লাউড রান (পরিষেবা)-এ ক্লিক করুন।
  2. সার্ভিসের নাম লিখুন : frontend
  3. উন্নত সেটিংস দেখান- এর অধীনে, পরিষেবা অ্যাকাউন্ট তৈরি করুন থেকে টিক চিহ্নটি তুলে দিন।
  4. 'Show advanced settings'-এর অধীনে, Ingress- কে INGRESS_TRAFFIC_INTERNAL_LOADBALANCER এ সেট করুন। Compliance Config: ফ্রন্টএন্ড কন্টেইনারে সরাসরি পাবলিক অ্যাক্সেস ব্লক করা আছে, যার ফলে ট্র্যাফিক লোড ব্যালান্সারের মাধ্যমে যেতে বাধ্য হয়।
  5. উন্নত সেটিংস দেখান- এর অধীনে, সদস্যদেরকেallUsers ) হিসেবে সেট করুন।ফ্রন্টএন্ড
  6. ঐচ্ছিকভাবে, 'Show advanced settings'-এর অধীনে 'Enable Prometheus Sidecar' থেকে টিক চিহ্নটি তুলে দিন।
  7. সংরক্ষণ করুন- এ ক্লিক করুন।
  8. frontend থেকে agent-backend একটি কানেকশন টেনে এনে frontend agent-backend সাথে সংযুক্ত করুন।

৫. একটি ভার্টেক্স এআই কম্পোনেন্ট যোগ করুন

  1. কম্পোনেন্ট যোগ করুন > ভার্টেক্স এআই-তে ক্লিক করুন।
  2. এর নাম দিন vertex-ai
  3. vertex-ai থেকে agent-backend এবং data-mcp-server যথাক্রমে দুটি কানেকশন ড্র্যাগ করে এটিকে agent-backend এবং data-mcp-server সাথে সংযুক্ত করুন। vertex AI কম্পোনেন্টের সাথে সংযুক্ত থাকার কারণে agent-backend এবং data-mcp-server এর সার্ভিস অ্যাকাউন্টগুলিতে aiplatform.user রোলটি আগে থেকেই অ্যাসাইন করা থাকবে।

৬. গ্লোবাল লোড ব্যালেন্সার যোগ করুন

লোড ব্যালেন্সার আপনার ফ্রন্টএন্ডকে পাবলিক ইন্টারনেটে উন্মুক্ত করে। ADC-তে, এটি একটি ব্যাকএন্ড এবং একটি ফ্রন্টএন্ড উপাদানে বিভক্ত থাকে।

এ. লোড ব্যালেন্সার ব্যাকএন্ড যোগ করুন

  1. **কম্পোনেন্ট যোগ করুন > গ্লোবাল ক্লাউড লোড ব্যালান্সিং (ব্যাকএন্ড) **-এ ক্লিক করুন।
  2. এর নাম দিন galb-backend
  3. অ্যাড কানেকশন-এ ক্লিক করুন এবং এটিকে frontend সাথে সংযুক্ত করুন।

খ. লোড ব্যালেন্সার ফ্রন্টএন্ড যোগ করুন

  1. **কম্পোনেন্ট যোগ করুন > গ্লোবাল ক্লাউড লোড ব্যালান্সিং (ফ্রন্টএন্ড) **-এ ক্লিক করুন।
  2. এর নাম দিন galb-frontend
  3. অ্যাড কানেকশন-এ ক্লিক করুন এবং এটিকে galb-backend এর সাথে সংযুক্ত করুন।
  4. galb-frontend থেকে galb-backend এ একটি সংযোগ টেনে এনে galb-frontend কে galb-backend এর সাথে সংযুক্ত করুন।

অ্যাপ টেমপ্লেট

ক্যাটালগে টেমপ্লেটটি শেয়ার করুন

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

এখন, আপনার টেমপ্লেটটি ক্যাটালগে যোগ করুন:

  1. ক্যাটালগ ট্যাবে ক্লিক করুন।
  2. অ্যাড টেমপ্লেট-এ ক্লিক করুন এবং simple-3-tier-agentic-app টেমপ্লেটটি নির্বাচন করুন।
  3. ক্যাটালগে যোগ করুন-এ ক্লিক করুন। ক্যাটালগে যোগ করুন

আপনি তিনটি স্থানে টেমপ্লেট খুঁজে পেতে পারেন: গুগল টেমপ্লেট (পূর্বনির্ধারিত নকশা), শেয়ার্ড টেমপ্লেট (আপনার প্রতিষ্ঠান জুড়ে শেয়ার করা), এবং টেমপ্লেট (আপনার নিজস্ব স্থানের কাস্টম ব্লুপ্রিন্ট)।

৬. অ্যাপ্লিকেশনটি স্থাপন করুন

এখন একজন অ্যাপ ডেভেলপারের ভূমিকা পালন করার পালা, যিনি এই টেমপ্লেটটি ব্যবহার করে cymbal-london-concierge অ্যাপ্লিকেশনটি ডেপ্লয় করতে চান।

  1. ADC কনসোলের Templates ট্যাবে টেমপ্লেটটি পুনরায় খুলুন এবং Configure app বোতামে ক্লিক করুন। একটি অ্যাপ কনফিগার করুন
  2. নতুন অ্যাপ্লিকেশন তৈরি করুন -এ ক্লিক করুন।
  3. অ্যাপ্লিকেশনটি কনফিগার করুন:
    • অ্যাপ্লিকেশনের নাম : cymbal-london-concierge
    • ডেপ্লয়মেন্ট প্রজেক্ট : আপনার প্রজেক্ট আইডি
    • অঞ্চল : us-central1
    • ইনপুট অ্যাট্রিবিউট > পরিবেশ : Development
    • ইনপুট অ্যাট্রিবিউট > গুরুত্ব : Low
  4. অ্যাপ্লিকেশন তৈরি করুন-এ ক্লিক করুন। প্রোডাকশন ডেপ্লয়মেন্টের জন্য, আপনাকে এনভায়রনমেন্টের জন্য 'প্রোডাকশন' এবং ক্রিটিক্যালিটির জন্য 'হাই' নির্বাচন করতে হবে। এই ট্যাগগুলো আপনার SRE এবং অপারেশনস টিমকে উদ্ভূত যেকোনো সমস্যার কাজ বাছাই ও অগ্রাধিকার দিতে সাহায্য করবে।
  5. এটি অ্যাপ্লিকেশন টেমপ্লেট সহ ডেপ্লয়মেন্ট ডিটেইলস পেজটি খুলে দেবে। যেহেতু এটি শুধুমাত্র একটি টেমপ্লেট, তাই আমাদের অ্যাপ্লিকেশনের জন্য নির্দিষ্ট কনফিগারেশন যোগ করতে হবে।
  6. চলুন ফ্রন্টএন্ড কনফিগার করি। ফ্রন্টএন্ড কম্পোনেন্টটিতে ক্লিক করুন।
    1. কন্টেইনার > কন্টেইনার সম্পাদনা- তে ক্লিক করুন।
    2. আমাদের জেনেরিক কন্টেইনার ইমেজটি পরিবর্তন করে আমাদের অ্যাপ্লিকেশনের জন্য কাঙ্ক্ষিত ইমেজটি প্রতিস্থাপন করতে হবে।
    3. কন্টেইনার ইমেজটি সেট করুন: us-central1-docker.pkg.dev/o11y-movie-guru/london-travel-agency/frontend:codelab-c2c6-v1 কন্টেইনার ইমেজ পরিবর্তন করা
    4. http1 পোর্টটি 80 তে সেট করুন।
    5. নিম্নলিখিত পরিবেশ ভেরিয়েবলগুলো সেট করুন:
      • API_BASE_URL : module.cloud-run-2.service_uri (নিশ্চিত করুন যে cloud-run-2 হলো এজেন্ট ব্যাকএন্ড কম্পোনেন্টের নাম, অন্যথায় এটিকে কম্পোনেন্টের আসল নাম দিয়ে প্রতিস্থাপন করুন)
    6. সংরক্ষণ করুন- এ ক্লিক করুন।
  7. চলুন এজেন্ট ব্যাকএন্ড কনফিগার করি। এজেন্ট-ব্যাকএন্ড কম্পোনেন্টটিতে ক্লিক করুন।
    1. কন্টেইনার > কন্টেইনার সম্পাদনা- তে ক্লিক করুন।
    2. আমাদের জেনেরিক কন্টেইনার ইমেজটি পরিবর্তন করে আমাদের অ্যাপ্লিকেশনের জন্য কাঙ্ক্ষিত ইমেজটি প্রতিস্থাপন করতে হবে।
    3. কন্টেইনার ইমেজটি সেট করুন: us-central1-docker.pkg.dev/o11y-movie-guru/london-travel-agency/agent:codelab-c2c6-v1
    4. নিম্নলিখিত পরিবেশ ভেরিয়েবলগুলো সেট করুন:
    5. GOOGLE_CLOUD_PROJECT :
    6. GOOGLE_CLOUD_LOCATION : us-central1
    7. DATA_BACKEND_URL : module.cloud-run-1.service_uri (নিশ্চিত করুন যে cloud-run-1 হলো ডেটা এমসিপি সার্ভার কম্পোনেন্টের নাম, অন্যথায় এটিকে কম্পোনেন্টের আসল নাম দিয়ে প্রতিস্থাপন করুন)
    8. http1 পোর্টটি 8000 -এ সেট করুন।
    9. সংরক্ষণ করুন- এ ক্লিক করুন।
  8. চলুন ডেটা এমসিপি সার্ভারটি কনফিগার করি। data-mcp-server কম্পোনেন্টটিতে ক্লিক করুন।
    1. কন্টেইনার > কন্টেইনার সম্পাদনা- তে ক্লিক করুন।
    2. আমাদের জেনেরিক কন্টেইনার ইমেজটি পরিবর্তন করে আমাদের অ্যাপ্লিকেশনের জন্য কাঙ্ক্ষিত ইমেজটি প্রতিস্থাপন করতে হবে।
    3. কন্টেইনার ইমেজটি সেট করুন: us-central1-docker.pkg.dev/o11y-movie-guru/london-travel-agency/data_mcp:codelab-c2c6-v1
    4. নিম্নলিখিত পরিবেশ ভেরিয়েবলগুলো সেট করুন:
    5. GOOGLE_CLOUD_PROJECT :
    6. GOOGLE_CLOUD_LOCATION : us-central1
    7. DB_TYPE : sqlite
    8. EMBEDDING_MODEL : text-embedding-005
    9. http1 পোর্টটি 8002 এ সেট করুন।
    10. সংরক্ষণ করুন- এ ক্লিক করুন।
    বাস্তব প্রোডাকশন পরিস্থিতিতে, আপনাকে CloudSQL বা AlloyDB-এর মতো একটি ডাটাবেস কনফিগার করতে হবে এবং ডেটা এমসিপি সার্ভারের জন্য ডাটাবেস কানেকশন স্ট্রিং প্রদান করতে হবে। কিন্তু এই ল্যাবের জন্য, আমরা একটি ইন-মেমোরি ডাটাবেস ব্যবহার করব। এছাড়াও, আপনাকে এমসিপি সার্ভার এবং ডাটাবেসকে প্রাইভেট করতে হবে এবং সেগুলোকে শুধুমাত্র এজেন্ট ব্যাকএন্ড থেকে বা নেটওয়ার্কের ভেতর থেকে অ্যাক্সেসযোগ্য রাখতে হবে।
  9. অ্যাপ্লিকেশনটির টেরাফর্ম কোড দেখার জন্য পেজের উপরের দিকে থাকা ' কোড' বাটনে ক্লিক করুন। এছাড়াও, আপনি 'গেট কোড' বাটনে ক্লিক করে অ্যাপ্লিকেশনটির টেরাফর্ম কোড ডাউনলোড করে আপনার কোডবেসে সংরক্ষণ করতে পারেন।অ্যাপ টেমপ্লেট
  10. অ্যাপ্লিকেশনটি ডেপ্লয় করতে পেজের উপরের ডান কোণায় থাকা ডেপ্লয় বাটনে ক্লিক করুন।
  11. ডিপ্লয়মেন্ট পেজটি আপনাকে ডিপ্লয়মেন্ট পাইপলাইনের জন্য একটি সার্ভিস অ্যাকাউন্ট তৈরি করতে অথবা বিদ্যমান কোনো একটি বেছে নিতে বলবে। 'Create Service Account'- এ ক্লিক করুন (এটি স্বয়ংক্রিয়ভাবে একটি নাম পূরণ করে দেবে) এবং তারপর 'Proceed'-এ ক্লিক করুন। একটি নতুন সার্ভিস অ্যাকাউন্ট তৈরি হতে কয়েক সেকেন্ড সময় লাগবে।

পরিষেবা অ্যাকাউন্ট তৈরি করুন

  1. সার্ভিস অ্যাকাউন্টটি তৈরি হয়ে গেলে, পেজটি রিফ্রেশ হবে এবং আপনি 'সিলেক্ট সার্ভিস অ্যাকাউন্ট' লেখাটির পাশে একটি টিক চিহ্ন দেখতে পাবেন।

পরিষেবা অ্যাকাউন্ট তৈরি করা হয়েছে

  1. এরপর পেজের নিচে থাকা Deploy বাটনে ক্লিক করুন।
  2. এটি সম্পূর্ণ হতে কয়েক মিনিট সময় লাগবে। ডেপ্লয়মেন্ট সম্পূর্ণ হলে, আপনি প্রতিটি কম্পোনেন্টের পাশে একটি সবুজ টিক চিহ্ন দেখতে পাবেন। আপনি 'লিঙ্ক টু লগস' বোতামে ক্লিক করেও ডেপ্লয়মেন্টের স্ট্যাটাস দেখতে পারেন, যা ক্লাউড বিল্ড লগগুলো খুলে দেবে। বোতামটি প্রদর্শিত হতে কয়েক মিনিট সময় লাগতে পারে।
![Deployment Logs](./img/10b_logs.png)
  1. ডেপ্লয়মেন্টের অবস্থা দেখতে অথবা অ্যাপ্লিকেশনটি ডেপ্লয় করার সময় কোনো ত্রুটি ঘটেছে কিনা তা জানতে আপনি ক্লাউড বিল্ড লগ দেখতে পারেন। এছাড়া, আপনি গুগল ক্লাউড কনসোলে ‘Cloud Build’ লিখে সার্চ করে এবং ‘History’- তে ক্লিক করেও সরাসরি ক্লাউড বিল্ড লগে যেতে পারেন। অ্যাপ্লিকেশনটি ডেপ্লয় হতে প্রায় ৫-৮ মিনিট সময় লাগবে।
![Cloud Build](./img/10c_cloudbuild.png)
  1. ডেপ্লয়মেন্ট সম্পন্ন হলে, আপনি 'ডেপ্লয়মেন্ট স্ট্যাটাস' ফিল্ডের পাশে একটি সবুজ টিক চিহ্ন দেখতে পাবেন।
![Deployment Complete](./img/11_deployed.png)

৭. আবেদনপত্রটি যাচাই করুন

চলুন পরীক্ষা করে দেখি এজেন্টটি সচল আছে কিনা। ডিপ্লয়মেন্ট ডিটেইলস পেজের আউটপুটস সেকশনে আপনি ফ্রন্টএন্ড কম্পোনেন্টের ইউআরএলটি দেখতে পাবেন। সেই ইউআরএলটি কপি করে আপনার ব্রাউজারে পেস্ট করুন। খেয়াল রাখবেন যেন http ব্যবহার করেন, https নয়। এছাড়াও, ফ্রন্টএন্ড http ব্যবহার করার কারণে ব্রাউজারে আসা যেকোনো সতর্কবার্তা গ্রহণ করে নেবেন।

অ্যাপটির সাথে চ্যাট করুন এবং এটিকে লন্ডন ভ্রমণের জন্য একটি ভ্রমণসূচী তৈরি করতে বলুন।

ফ্রন্টএন্ড

৮. অ্যাপ হাব এবং অ্যাপ্লিকেশন পর্যবেক্ষণ

  1. ADC কনসোলে, পেজের উপরের ডান কোণায় থাকা ‘ View app in App Hub’ বাটনটিতে ক্লিক করুন।

অ্যাপ হাব

  1. এটি অ্যাপ হাব-এ অ্যাপটি খুলে দেবে। অ্যাপ হাব হলো আপনার সমস্ত অ্যাপ্লিকেশন দেখা ও পরিচালনা করার একটি কেন্দ্রীয় স্থান, যা আপনাকে রিসোর্স-কেন্দ্রিক দৃষ্টিভঙ্গি থেকে অ্যাপ্লিকেশন-কেন্দ্রিক দৃষ্টিভঙ্গিতে নিয়ে যায়। ADC ব্যবহার করে একটি অ্যাপ তৈরি করলে তা স্বয়ংক্রিয়ভাবে অ্যাপ হাব-এও তৈরি হয়ে যায়। অ্যাপ্লিকেশনটি গঠনকারী সমস্ত ওয়ার্কলোড এবং সার্ভিস এখানে তালিকাভুক্ত দেখতে পাবেন। ক্লাউডের রিসোর্সগুলোকে আলাদা আলাদা রিসোর্স হিসেবে দেখার পরিবর্তে, আপনি সেগুলোকে একটি একক অ্যাপ্লিকেশনের অংশ হিসেবে দেখতে পারেন, যা ব্যবস্থাপনা এবং পরিচালনাকে সহজ করে তোলে।

অ্যাপ হাব

  1. 'View in Observability' বোতামটিতে ক্লিক করুন। এটি Observability কনসোলে অ্যাপ্লিকেশনটি খুলে দেবে।
  2. ড্যাশবোর্ড ভিউ খুলুন। ড্যাশবোর্ডটি আপনাকে অ্যাপ্লিকেশনটির পারফরম্যান্স এবং স্বাস্থ্য সম্পর্কে একটি সার্বিক ধারণা দেয়, যা রিকোয়েস্ট রেট, এরর রেট, ল্যাটেন্সি এবং স্যাচুরেশনের মতো ৪টি গোল্ডেন সিগন্যালের মেট্রিক্স প্রদান করে। নির্ভরযোগ্যতা বজায় রাখার জন্য এই অ্যাপ্লিকেশন-কেন্দ্রিক মনিটরিং অত্যন্ত গুরুত্বপূর্ণ। আপনি অ্যাপ্লিকেশনটির লগ এবং ট্রেসও দেখতে পারেন, যা আপনাকে সিগন্যালগুলোর মধ্যে সম্পর্ক স্থাপন করতে এবং বাধাগুলো চিহ্নিত করতে সাহায্য করে। এই ধরনের একটি জটিল এজেন্টিক অ্যাপ্লিকেশনের ক্ষেত্রে এটি বিশেষভাবে গুরুত্বপূর্ণ, যেখানে ভার্টেক্স এআই (Vertex AI) বা ডেটা এমসিপি (Data MCP) সার্ভারের ধীর প্রতিক্রিয়া ব্যবহারকারীর অভিজ্ঞতাকে খারাপ করে দিতে পারে।

ড্যাশবোর্ড

  1. নির্দেশিত অনুসন্ধান : অ্যাপে এজেন্টকে একটি নির্দিষ্ট প্রশ্ন জিজ্ঞাসা করুন (যেমন, "লন্ডনে ঘোরার জন্য সেরা জায়গাগুলো কী কী?")। তারপর, অবজার্ভেবিলিটি কনসোলে ফিরে যান এবং ট্রেস তালিকাটি দেখুন। আপনার অনুরোধের সাথে সম্পর্কিত ট্রেসটি খুঁজুন। বিস্তারিত ওয়াটারফল ভিউ দেখতে সেটির উপর ক্লিক করুন। লক্ষ্য করুন, কীভাবে আপনি ফ্রন্টএন্ড, এজেন্ট ব্যাকএন্ড এবং ভার্টেক্স এআই-তে করা কলগুলোতে ব্যয়িত সময় দেখতে পাচ্ছেন। এর মাধ্যমে আপনি সুনির্দিষ্টভাবে শনাক্ত করতে পারবেন যে কোথায় ল্যাটেন্সি তৈরি হচ্ছে।

৯. অভিনন্দন

অভিনন্দন! আপনি ADC ব্যবহার করে একটি ৩-স্তরীয় অ্যাপ্লিকেশন আর্কিটেকচার স্থাপন করেছেন।

আপনি যা শিখেছেন

  • ADC ব্যবহার করে কীভাবে দৃশ্যমানভাবে একটি ক্লাউড আর্কিটেকচার তৈরি করা যায়।
  • UI-এর মাধ্যমে কীভাবে ADC সেট আপ করবেন এবং API সক্রিয় করবেন।
  • ADC ব্যবহার করে কীভাবে অ্যাপ্লিকেশন ডেপ্লয় করতে হয়।
  • আপনার রিসোর্সগুলোর অ্যাপ্লিকেশন-কেন্দ্রিক চিত্র পেতে অ্যাপ হাব কীভাবে ব্যবহার করবেন।
  • অবজার্ভেবিলিটি ড্যাশবোর্ড ব্যবহার করে কীভাবে অ্যাপ্লিকেশনের স্বাস্থ্য নিরীক্ষণ করা যায়।

রেফারেন্স নথি