GCP VPN রুট শুধু একটি অঞ্চলে কাজ করে: ডাইনামিক রাউটিং যাচাই করুন
গ্লোবাল VPC BGP-শেখা রুটগুলোকে গ্লোবাল করে না। রাউটিং মোড পড়ুন, একবার বদলান, এবং দূরের দিক কী ঘোষণা করে তা যাচাই করুন।
যুক্তরাষ্ট্রের ওয়ার্কলোড HA VPN দিয়ে অফিস প্রিফিক্সে কোনো সমস্যা ছাড়াই পৌঁছায়, অথচ একই VPC-র ইউরোপীয় ওয়ার্কলোড কিছুই পায় না। এর রুট টেবিলে ওই প্রিফিক্সের কোনো এন্ট্রি নেই, কোনো টানেল ডাউন নেই, এবং কোনো ফায়ারওয়াল নিয়ম বদলায়নি। টানেল ও তার BGP সেশন দুই দিকেই সুস্থ। অঞ্চল জুড়ে থাকা VPC আর তার শেখা রুটগুলোর অঞ্চল জুড়ে থাকা এক জিনিস নয়, এবং এই ফাঁকই পুরো উপসর্গটির ব্যাখ্যা দেয়।
এখানে দুটি বৈশিষ্ট্য গুলিয়ে ফেলা হচ্ছে: সাবনেটগুলো কোথায় থাকে, এবং শেখা পরবর্তী হপ কোথায় ব্যবহার করা যায়।
আঞ্চলিক পরিধি কোথা থেকে আসে
Cloud Router শেখা রুটগুলো এমন পরিধিসহ ইনস্টল করে যা VPC-র ডাইনামিক রাউটিং মোড অনুসরণ করে। আঞ্চলিক মোডে এক অঞ্চলে শেখা রুট কেবল সেই অঞ্চলের রিসোর্স ব্যবহার করতে পারে, তাই ইউরোপীয় টেবিলটি ভাঙা পরবর্তী হপ দেখানোর বদলে খালি থাকে। গ্লোবাল মোডে যোগ্য শেখা রুট VPC-র প্রতিটি অঞ্চলের রিসোর্সের জন্য উপলব্ধ হয়। কিছু বদলানোর আগে বর্তমান মানটি পড়ুন, কারণ আঞ্চলিক মোডই ডিফল্ট। সেটিংটি টানেল বা রাউটারে নয়, নেটওয়ার্কে থাকে।
ইনভেন্টরি কমান্ডটি শুধু পড়ার জন্য এবং এক লাইনেই এর উত্তর দেয়:
gcloud compute networks describe VPC_NAME --format='value(routingConfig.routingMode)'
VPC শেয়ার করা থাকলে হোস্ট প্রজেক্টে এটি চালান। নেটওয়ার্কটি ওই প্রজেক্টেরই, আর ওয়ার্কলোড প্রজেক্টের ভিউয়ার রোল হয়তো রাউটিং কনফিগারেশনই দেখাবে না। ভুল প্রজেক্ট থেকে পাওয়া দ্রুত উত্তর উত্তর না পাওয়ার চেয়েও খারাপ।
পরিবর্তনটি এক কমান্ড আর এক দিক
স্যুইচিং হলো পুরো VPC জুড়ে কন্ট্রোল প্লেনের সম্পাদনা, প্রতি-VM-এর কোনো বিকল্প পথ নয়: gcloud compute networks update VPC_NAME --routing-mode=GLOBAL। এটি একমুখীও, কারণ গ্লোবালে সেট করা নেটওয়ার্ক আবার আঞ্চলিকে ফেরানো যায় না। চালানোর আগে প্রজেক্ট ও নেটওয়ার্কের নাম আরেকবার যাচাই করুন, কারণ কমান্ডটি কোনো নিশ্চিতকরণ চায় না। এই পরিবর্তন একটি রক্ষণাবেক্ষণ নোট এবং নেটওয়ার্ক মালিকের অনুমোদন দাবি করে, শেয়ার করা VPC-তে দ্রুত পরীক্ষা নয়।
সেই নেটওয়ার্কের প্রতিটি Cloud Router, VPN ও Interconnect অ্যাটাচমেন্ট একসাথে নতুন পরিধি উত্তরাধিকারসূত্রে পায়। এর মধ্যে পরিবর্তনের অনুরোধে কেউ যে অ্যাটাচমেন্টগুলোর কথা বলেনি সেগুলোও আছে। যে অঞ্চলগুলোর আগে কখনো এই রুট ছিল না, পরিবর্তন কার্যকর হওয়ামাত্র তারা এটি পেতে শুরু করে, তাই এই স্যুইচের জন্য কোনো ধাপে ধাপে রোলআউট নেই।
গ্লোবাল হলো পরিধি, গ্যারান্টি নয়
যোগ্যতা ও অগ্রাধিকার পরিধি থেকে আলাদা। যে রুট আরও নির্দিষ্ট প্রিফিক্সের সাথে সংঘর্ষ করে, সেরা-পথ নির্বাচনে হারে বা নীতিতে ফিল্টার হয়, সেটি আগের মতোই আচরণ করে। গ্লোবাল মোড একটি রুট কোথায় ব্যবহার করা যাবে তা প্রশস্ত করে, কোন রুট জিতবে তা নির্ধারণ করে না। একটি শেখা রুট পরিধির মধ্যে থেকেও একই VPC-তে স্ট্যাটিক বা আরও নির্দিষ্ট পথের কাছে হারতে পারে।
এই পার্থক্যটি গুরুত্বপূর্ণ, কারণ মোড পরিবর্তনকে পরে দোষ দেওয়া সহজ। স্যুইচের পরেও ইউরোপীয় সাবনেটে রুট না থাকলে প্রশ্ন হলো রুটটি আছে কি না এবং যোগ্য কি না, পরিধি কার্যকর হয়েছে কি না নয়। প্রিফিক্স সংঘর্ষ ও পরবর্তী হপের স্বাস্থ্য হলো পড়ার পরবর্তী দুটি বিষয়।
দূরের দিকও ভিন্নভাবে ঘোষণা করে
বিজ্ঞাপনের আচরণ একই সেটিং অনুসরণ করে। ডিফল্ট আচরণে আঞ্চলিক মোডের একটি রাউটার নিজের অঞ্চলের সাবনেট ঘোষণা করে, আর গ্লোবাল মোড VPC-র সাবনেট আরও বিস্তৃতভাবে ঘোষণা করে। তাই মোড বদলালে কেবল আপনার অঞ্চলগুলো কী ব্যবহার করতে পারবে তা নয়, দূরের দিক কী ইনস্টল করবে তাও বদলে যায়।
কাস্টম বিজ্ঞাপন তালিকা মোড বদলালে প্রসারিত হয় না। অন-প্রিমাইস রাউটার যদি হাতে লেখা রেঞ্জের তালিকা রাখে, ইউরোপীয় প্রিফিক্স সেখান থেকে অনুপস্থিতই থাকে। ওই ক্ষেত্রে ফেরার পথ ভাঙাই থাকে, যদিও আউটবাউন্ড রুট এখন আছে। আপনি কী এক্সপোর্ট করেছেন তা নয়, দূরের দিক কী ইনস্টল করেছে তা যাচাই করুন।
মোড যা কখনো ঠিক করবে না
গ্লোবাল রাউটিং পাবলিক ইন্টারনেট অ্যাক্সেস, সম্পর্কহীন VPC-র মধ্যে ট্রানজিট বা অনুপস্থিত স্ট্যাটিক রুট দেয় না। এটি ফায়ারওয়াল নিয়ম বা IAM বদলায় না, তাই নীতিতে প্রত্যাখ্যাত সংযোগ প্রত্যাখ্যাতই থাকে।
এই ব্যর্থতাগুলো ওয়ার্কলোডের ভেতর থেকে একই রকম দেখায় এবং রুট পরিধির সাথে এর কোনো সম্পর্ক নেই।
দূরের অঞ্চল থেকে আসল সার্ভিসে পরীক্ষা করুন, তারপর নিশ্চিত করুন যে উত্তরটি নির্ধারিত টানেল দিয়েই ফিরে আসে। মোড, বিজ্ঞাপন কনফিগারেশন এবং আপনি যে গন্তব্য পরীক্ষা করেছেন তা লিখে রাখুন। পরীক্ষা এখনো ব্যর্থ হলে, মোডে আবার হাত দেওয়ার আগে দূরের রাউটারের BGP টেবিলের সাথে VPC রুট তালিকার তুলনা করুন। তখন পরবর্তী আন্তঃঅঞ্চল প্রতিবেদনটি মোড পরিবর্তন নয়, তথ্য থেকে শুরু হয়।