ম্যানুয়াল সেটআপ গাইড

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

ম্যানুয়ালি ট্যাগিং সার্ভারের ব্যবস্থা করার জন্য সার্ভার-সাইড ট্যাগিং (SST) ক্লাস্টার এবং একটি পূর্বরূপ সার্ভার আলাদাভাবে প্রভিশন করা প্রয়োজন। এসএসটি ক্লাস্টার হল ট্যাগিং সার্ভারে সমস্ত অনুরোধের এন্ট্রি পয়েন্ট এবং সার্ভার-সাইড ট্যাগিংয়ের ভূমিকায় বর্ণিত অনুরোধগুলি পরিচালনা করবে৷ একটি ধারক পূর্বরূপ দেখার জন্য পূর্বরূপ সার্ভার প্রয়োজন.

ট্যাগিং সার্ভার এবং পূর্বরূপ সার্ভারের মধ্যে ডেটা ইন্টারঅ্যাকশনের একটি চিত্রের জন্য চিত্র 1 দেখুন।

ট্যাগিং সার্ভার এবং পূর্বরূপ সার্ভার ডেটা প্রবাহের চিত্র

চিত্র 1: ট্যাগিং সার্ভারের একটি চিত্র এবং সার্ভার ডেটা প্রবাহের পূর্বরূপ।

এই নির্দেশিকা ব্যাখ্যা করে কিভাবে:

  • ডকার ইমেজের জন্য সমস্ত উপলব্ধ সেটিংস দেখুন।
  • (ঐচ্ছিক) BigQuery শংসাপত্র অন্তর্ভুক্ত করুন
  • SST ডকার ইমেজ ব্যবহার করে ম্যানুয়ালি একটি প্রিভিউ সার্ভারের ব্যবস্থা করুন।
  • SST ডকার ইমেজ ব্যবহার করে ম্যানুয়ালি একটি SST ক্লাস্টার প্রভিশন করুন।
  • প্রিভিউ সার্ভার এবং SST ক্লাস্টার সঠিকভাবে কনফিগার করা হয়েছে কিনা যাচাই করুন।
  • সার্ভারের ব্যবস্থা করার পরে আপনার ট্যাগিং সার্ভার সংস্করণ আপডেট রাখুন।

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

ডকার ইমেজের জন্য সমস্ত উপলব্ধ সেটিংস দেখুন

ট্যাগিং সার্ভার ডকার ইমেজ এই URL এ পাওয়া যাবে:

gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

ট্যাগিং সার্ভার এবং প্রিভিউ সার্ভার বিভিন্ন পতাকা সহ একই ডকার ইমেজ ব্যবহার করে। এই বিভাগে, আমরা কীভাবে ডকার ইমেজের সাথে ব্যবহার করা যেতে পারে এমন সমস্ত উপলব্ধ সেটিংস সন্ধান করব।

সমস্ত উপলব্ধ সেটিংস দেখতে, ডকার কমান্ড লাইন টুল ব্যবহার করে নিম্নলিখিতটি চালান:

docker run gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable server_bin.js --help

(ঐচ্ছিক) Google ক্লাউড শংসাপত্র অন্তর্ভুক্ত করুন

Google ক্লাউডের বাইরে BigQuery বা Firestore API ব্যবহার করতে, আপনাকে অবশ্যই একটি পরিষেবা অ্যাকাউন্ট শংসাপত্র প্রদান করতে হবে যা সেই সংস্থানগুলি অ্যাক্সেস করার জন্য অনুমোদিত৷

  1. BigQuery অ্যাক্সেসের জন্য BigQuery ডেটা এডিটর ভূমিকা বা Firestore অ্যাক্সেসের জন্য ক্লাউড ডেটাস্টোর ব্যবহারকারীর ভূমিকা সহ একটি পরিষেবা অ্যাকাউন্ট তৈরি করতে এই নির্দেশিকা অনুসরণ করুন এবং ফাইলের নাম local_service_account_key.json দিয়ে এর JSON শংসাপত্রগুলি রপ্তানি করুন।
  2. ছবিতে অ্যাক্সেসযোগ্য ভলিউমে JSON শংসাপত্র মাউন্ট করুন। docker run ব্যবহার করে, আপনি ছবিতে শংসাপত্রগুলি মাউন্ট করতে -v local_service_account_key.json:/app/service_account_key.json নির্দিষ্ট করতে পারেন।
  3. GOOGLE_APPLICATION_CREDENTIALS এনভায়রনমেন্ট ভেরিয়েবলকে শংসাপত্রের দিকে নির্দেশ করুন৷
  4. ঐচ্ছিকভাবে, GOOGLE_CLOUD_PROJECT এনভায়রনমেন্ট ভেরিয়েবলে আপনার Google ক্লাউড প্রজেক্ট আইডি নির্দিষ্ট করুন যাতে ট্যাগিং সার্ভারকে প্রজেক্টটি স্পষ্টভাবে বেছে নিতে দেয়।
  5. সার্ভার চালান। নিম্নলিখিত কমান্ডটি শংসাপত্র অন্তর্ভুক্ত সহ ট্যাগিং সার্ভার চালায়:

    docker run -v local_service_account_key.json:/app/service_account_key.json \
    -p 8080:8080 \
    -e GOOGLE_APPLICATION_CREDENTIALS='/app/service_account_key.json' \
    -e GOOGLE_CLOUD_PROJECT='<your project id>' \
    -e CONTAINER_CONFIG='<config string>' \
    gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
    

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

আপনার শংসাপত্র রক্ষা করার জন্য সর্বোত্তম অনুশীলনগুলি অনুসরণ করা নিশ্চিত করুন।

ম্যানুয়ালি একটি প্রিভিউ সার্ভারের ব্যবস্থা করুন

পূর্বরূপ সার্ভার আপনাকে সার্ভার কন্টেইনার পূর্বরূপ দেখতে সক্ষম করে। পূর্বরূপ সার্ভার চালানোর জন্য, ডকার পরিবেশে পাস করা নিম্নলিখিত পরিবেশের ভেরিয়েবলগুলির সাথে ডকার চিত্রটি চালান।

প্রয়োজনীয় সেটিংস

  • CONTAINER_CONFIG - সার্ভার কন্টেইনারের জন্য কনফিগারেশন স্ট্রিং। ট্যাগ ম্যানেজারে, আপনার সার্ভার কন্টেইনার ওয়ার্কস্পেসে নেভিগেট করুন এবং পৃষ্ঠার উপরের ডানদিকে কন্টেইনার আইডিতে ক্লিক করুন। কনটেইনার কনফিগার মান খুঁজে পেতে ম্যানুয়ালি প্রভিশন ট্যাগিং সার্ভারে ক্লিক করুন।

  • RUN_AS_PREVIEW_SERVER - সার্ভারটিকে একটি প্রিভিউ সার্ভার হিসাবে প্রভিশন করতে এটিকে true সেট করুন৷

ডকার কমান্ড লাইন টুল ব্যবহার করে উদাহরণ

স্থানীয়ভাবে একটি পূর্বরূপ সার্ভারের ব্যবস্থা করতে, নিম্নলিখিতটি চালান:

docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e RUN_AS_PREVIEW_SERVER=true gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

আপনি http://localhost:8080/healthz এ একটি অনুরোধ থেকে একটি 200 প্রতিক্রিয়া দেখতে সক্ষম হবেন। ঐচ্ছিকভাবে, পোর্ট পরিবর্তন করতে PORT পরিবেশ পরিবর্তনশীল ব্যবহার করুন।

সর্বোত্তম অনুশীলন

  • আপনাকে অবশ্যই 1টি পূর্বরূপ সার্ভার স্থাপন করতে হবে। 1টি উদাহরণের বেশি অটোস্কেলিং কনফিগার করবেন না।
  • একবার আপনি ডকার ব্যবহার করে একটি প্রিভিউ সার্ভার সেট আপ করলে, প্রিভিউ সার্ভারে নির্দেশ করতে একটি HTTPS URL কনফিগার করুন। এসএসটি ক্লাস্টার স্থাপনের জন্য এটি প্রয়োজন।
  • আপনার লোড ব্যালেন্সার বা CDN এর সময়সীমা 20 সেকেন্ডের বেশি হতে হবে, অন্যথায় পূর্বরূপ মোড সঠিকভাবে কাজ করবে না।

ম্যানুয়ালি একটি সার্ভার-সাইড ট্যাগিং ক্লাস্টার সরবরাহ করুন

এসএসটি ক্লাস্টারটি এন্ট্রি পয়েন্ট হিসাবে কাজ করে, পূর্বরূপ সার্ভারে প্রক্সি পূর্বরূপ অনুরোধ করে এবং সার্ভার-সাইড ট্যাগিংয়ের ভূমিকায় বর্ণিত অন্যান্য সমস্ত অনুরোধগুলি পরিচালনা করে। ডকারকে সমর্থন করে এমন যেকোনো পরিবেশে একটি SST ক্লাস্টারের ব্যবস্থা করতে ট্যাগিং সার্ভার ডকার ইমেজের সাথে নিম্নলিখিত প্রয়োজনীয় সেটিংস ব্যবহার করুন।

প্রয়োজনীয় সেটিংস

  • CONTAINER_CONFIG - সার্ভার কন্টেইনারের জন্য কনফিগারেশন স্ট্রিং। ট্যাগ ম্যানেজারে, আপনার সার্ভার কন্টেইনার ওয়ার্কস্পেসে নেভিগেট করুন এবং পৃষ্ঠার উপরের ডানদিকে কন্টেইনার আইডিতে ক্লিক করুন। কনটেইনার কনফিগার মান খুঁজে পেতে ম্যানুয়ালি প্রভিশন ট্যাগিং সার্ভারে ক্লিক করুন।

  • PREVIEW_SERVER_URL - পূর্বরূপ সার্ভারের জন্য HTTPS URL। এই সেটিংটি শুধুমাত্র ট্যাগিং সার্ভারের ব্যবস্থা করার জন্য সেট করা উচিত এবং পূর্বরূপ সার্ভারের ব্যবস্থা করার জন্য প্রয়োজন নেই৷ পূর্বরূপ সার্ভার সেট আপ করার জন্য একটি গাইডের জন্য উপরের বিভাগটি দেখুন।

ডকার কমান্ড লাইন টুল ব্যবহার করে উদাহরণ

স্থানীয়ভাবে একটি একক ট্যাগিং সার্ভারের ব্যবস্থা করতে, নিম্নলিখিতটি চালান:

docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e PREVIEW_SERVER_URL='<HTTPS preview server url>' gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

আপনি http://localhost:8080/healthz এ একটি অনুরোধ থেকে একটি 200 প্রতিক্রিয়া দেখতে পাবেন। ঐচ্ছিকভাবে, পোর্ট পরিবর্তন করতে PORT পরিবেশ পরিবর্তনশীল ব্যবহার করুন।

সর্বোত্তম অনুশীলন

  • সার্ভার-সাইড ট্যাগিং সার্ভারগুলি একটি একক সার্ভার বা একটি ক্লাস্টার হিসাবে বিধান করা যেতে পারে। আমরা সুপারিশ করি যে আপনি এটিকে আরও ভাল প্রাপ্যতা, মাপযোগ্যতা এবং কর্মক্ষমতার জন্য একটি ক্লাস্টার হিসাবে সরবরাহ করুন। অনুগ্রহ করে মনে রাখবেন যে যখন একটি ক্লাস্টার হিসাবে বিধান করা হয়, প্রতিটি সার্ভারের দৃষ্টান্ত একই CONTAINER_CONFIG এবং PREVIEW_SERVER_URL পরিবেশ ভেরিয়েবলের সাথে কনফিগার করা আবশ্যক৷
  • আপনার ওয়েবসাইটের একটি নতুন সাবডোমেনে আপনার SST ক্লাস্টার স্থাপনার নির্দেশ করুন যা আপনার অ্যাপ্লিকেশনটি পরিবেশন করে এমন সাবডোমেন থেকে আলাদা। উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশন example.com- এ ওয়েব ট্র্যাফিক পরিবেশন করে, আপনার ট্যাগিং সার্ভারের জন্য analytics.example.com- এর মতো একটি সাবডোমেন ব্যবহার করুন৷
  • একবার আপনি ডকার ব্যবহার করে একটি SST ক্লাস্টার সেট আপ করার পরে, SST ক্লাস্টারে নির্দেশ করতে একটি HTTPS URL কনফিগার করুন৷
  • আপনার সার্ভারগুলিতে SST-এর জন্য সর্বশেষ কোড আপডেট আছে তা নিশ্চিত করতে সার্ভারগুলি পর্যায়ক্রমে পুনরায় চালু করতে ভুলবেন না। এটি করতে ব্যর্থ হলে নতুন SST বৈশিষ্ট্যগুলির জন্য বেমানান কার্যকারিতা হতে পারে। কখন সার্ভার পুনরায় চালু করতে হবে তা জানার একটি উপায় হল লাইভনেস চেক সেট আপ করা, যা নীচে আরও ব্যাখ্যা করা হয়েছে। এছাড়াও, অনুগ্রহ করে মনে রাখবেন যে আপনার সার্ভার কন্টেইনারে প্রকাশিত যেকোনো আপডেট পুনরায় আরম্ভ ছাড়াই প্রয়োগ করা হবে।
  • লাইভনেস চেক সেট আপ করতে আপনার ট্যাগিং সার্ভারে বিদ্যমান /healthz এন্ডপয়েন্ট (যেমন https://analytics.example.com/healthz ) ব্যবহার করুন। একটি অ-স্বাস্থ্যকর প্রতিক্রিয়া নির্দেশ করে যে সার্ভারটি পুনরায় চালু করা উচিত।
  • ডকার কন্টেইনারে একটি ডিফল্ট হেলথ চেক কমান্ড রয়েছে— HEALTHCHECK CMD ["/nodejs/bin/node", "/app/health_checker_bin.js"] - যা পর্যায়ক্রমে /healthz এন্ডপয়েন্টকে জিজ্ঞাসা করে। আপনি যদি ডকার স্বাস্থ্য পরীক্ষার উপর নির্ভর করেন তবে আপনি ডকার নির্দেশাবলী অনুসরণ করে সেটিংস পরিবর্তন করতে পারেন।
  • যদি প্রিভিউ সার্ভার এবং ট্যাগিং সার্ভার একই উৎপত্তিতে থাকে, তাহলে প্রিভিউ সার্ভারটিকে ট্যাগিং সার্ভারের চেয়ে ভিন্ন পথে হোস্ট করুন। পথ সহ PREVIEW_SERVER_URL নির্দিষ্ট করুন৷
  • প্রভিশন করা সার্ভারগুলিতে সর্বাধিক 1টি vCPU থাকা উচিত৷ অতিরিক্ত ভিসিপিইউ ব্যবহার করা হয় না এবং অটোস্কেলিংকে নেতিবাচকভাবে প্রভাবিত করে।

বৈধতা

সার্ভার কন্টেইনার URL কনফিগার করুন

ট্যাগ ম্যানেজারে, আপনার সার্ভার কন্টেইনারে নেভিগেট করুন। অ্যাডমিন > কনটেইনার সেটিংসের অধীনে ট্যাগিং সার্ভারের URL সার্ভার কন্টেইনার URL ক্ষেত্রে রাখুন এবং সংরক্ষণ করুন ক্লিক করুন।

প্রিভিউ মোডের মাধ্যমে যাচাই করুন

ট্যাগ ম্যানেজার ওয়ার্কস্পেসে, পূর্বরূপ ক্লিক করে কন্টেইনারটির পূর্বরূপ দেখুন এবং দেখুন যে পূর্বরূপ পৃষ্ঠাটি লোড হচ্ছে। অন্য ব্রাউজার ট্যাবে, সার্ভার কন্টেইনার URL-এর যেকোনো পাথে নেভিগেট করুন। যদি প্রিভিউ পৃষ্ঠাটি পাঠানো অনুরোধটি দেখায়, তাহলে সবকিছু সঠিকভাবে সেট আপ করা হয়েছে।

আপনি যদি একটি একক ট্যাগিং সার্ভারে একাধিক সাবডোমেন ম্যাপ করে থাকেন এবং প্রতিটি সাবডোমেনের পূর্বরূপ দেখতে চান, তাহলে অ্যাডমিন > কন্টেইনার সেটিংসের অধীনে অতিরিক্ত সার্ভার কন্টেইনার URL যোগ করুন। একাধিক URL প্রদান করা হলে, সমস্ত URL পাথ অবশ্যই মিলতে হবে (ডোমেন নামের পরে তথ্যের স্ট্রিং)। উদাহরণস্বরূপ, আপনি example.com/abc এবং example2.com/abc এ পূর্বরূপ দেখতে পারেন কিন্তু আপনি example.com/abc এবং example2.com/def এ পূর্বরূপ দেখতে পারবেন না। একাধিক URL যোগ করা হলে, আপনি পূর্বরূপ বোতামের পাশে একটি আইকন দেখতে পাবেন যা আপনাকে পূর্বরূপ দেখার জন্য URL নির্বাচন করতে দেয়।

ট্যাগিং সার্ভার সংস্করণ আপডেট করুন

জিটিএম-ক্লাউড- ইমেজে Node.js এবং ট্যাগিং সার্ভারের কাজ করার জন্য প্রয়োজনীয় লাইব্রেরি রয়েছে। ডকার ইমেজ পর্যায়ক্রমে নিরাপত্তা সংশোধন এবং নতুন বৈশিষ্ট্য জন্য আপডেট করা হয়. আমরা অন্তত প্রতিটি প্রধান সংস্করণ প্রকাশের জন্য আপনার ট্যাগিং সার্ভার আপডেট করার পরামর্শ দিই (যেমন সংস্করণ 1.xx থেকে 2.xx এ আপগ্রেড করা)।

আপনার ডকার ইমেজ আপডেট করতে:

  1. gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable এ বর্তমান চিত্র সংস্করণটি আনুন।
  2. পূর্ববর্তী স্থাপনার মতো একই সেটিংস সহ আপনার সার্ভার স্থাপন করুন।
  3. একক প্রিভিউ সার্ভার এবং ক্লাস্টারে থাকা সমস্ত ট্যাগিং সার্ভার আপডেট করুন৷
  4. কোনো পুরানো সার্ভার বন্ধ করুন।

আপডেটটি সফল হয়েছে তা যাচাই করতে:

  1. আপনার সার্ভার কন্টেইনারে, একটি নতুন ডিবাগ সেশন শুরু করতে পূর্বরূপ বোতামে ক্লিক করুন এবং একটি পৃথক ট্যাবে একটি অনুরোধ পাঠান৷
  2. সারাংশে, কনসোল ট্যাবটি নির্বাচন করুন এবং নিশ্চিত করুন যে আপনাকে ট্যাগিং সার্ভার আপডেট করার জন্য কোন বার্তা নেই।

সার্ভার সফলভাবে আপডেট হওয়ার পর ট্যাগ ম্যানেজার আপনাকে আপনার ট্যাগিং সার্ভার আপডেট করার জন্য বার্তা দেখাতে পারে। যাইহোক, পূর্বরূপ পৃষ্ঠা ট্যাগিং সার্ভার সংস্করণ সম্পর্কে একটি আপ টু ডেট বার্তা দেখাবে।