2018 সালে, আমি পরিবারের একজন সদস্যের ব্যবসার আধুনিকায়নে সাহায্য করার জন্য আমার অবসর সময় ব্যবহার করার সিদ্ধান্ত নিয়েছিলাম। পথ ধরে, আমি AWS-এর কিছু অভিজ্ঞতা এবং বোঝাপড়া অর্জন করতে চেয়েছিলাম।
অবশেষে, আমি আবিষ্কার করেছি যে আমার প্রায় সমস্ত অবসর সময় AWS ক্লাউড অবকাঠামোর ধারণাগুলি শেখার জন্য ব্যয় করা হয়েছিল। আধুনিক, ক্লাউড-ভিত্তিক সমাধান তৈরিতে ফোকাস করার জন্য আমার সময়ের একটি ছোট অংশ বাকি ছিল যা আমি মূলত মনে রেখেছিলাম। আমি অ্যাপের জন্য আরও বৈশিষ্ট্য অনুরোধের পরিকল্পনা করার সাথে সাথে আমি বুঝতে পেরেছিলাম যে আমার আরও ভাল পদ্ধতির প্রয়োজন।
2020 সালের প্রথম দিকে, আমি Heroku আবিষ্কার করেছি। যেহেতু আমার অন্তর্নিহিত ক্লাউড কনফিগারেশন সম্পর্কে চিন্তা করার দরকার নেই, তাই আমি নতুন বৈশিষ্ট্য যুক্ত করার জন্য আমার সময়কে ফোকাস করতে পারি।
হেরোকু ইকোসিস্টেমটি আমার সাধারণ ব্যবহারের ক্ষেত্রে দুর্দান্ত কাজ করেছে, তবে আমি আরও জটিল ব্যবহারের ক্ষেত্রে আশ্চর্য হতে শুরু করেছি। একটি পেমেন্ট প্রক্রিয়াকরণ সমাধানের জন্য নিরাপদ এবং ব্যক্তিগত পরিষেবাগুলির একটি সংগ্রহকে একে অপরের সাথে যোগাযোগ করতে হবে এমন পরিস্থিতি সম্পর্কে কী?
এই ব্যবহার কি আমাকে তিনটি বড় ক্লাউড পরিষেবা প্রদানকারীর একটির ইকোসিস্টেমে থাকতে বাধ্য করবে? আমি খুঁজে বের করতে যাচ্ছি.
বেশ কয়েক বছর ধরে, আমি এমন একটি পরিবেশে কাজ করার সৌভাগ্য পেয়েছি যা DevOps জীবনচক্রকে মূল্য দেয়। DevOps টিম আমার জন্য সমস্ত জিনিস ক্লাউড পরিচালনা করেছে, তাই আমি আমার গ্রাহকদের চাহিদা মেটানোর জন্য স্থাপত্য তৈরি এবং মাইক্রোসার্ভিস তৈরিতে ফোকাস করতে পারি।
আমার জীবনের সেই সময়ে, এই পরিবেশটি ব্যতিক্রম ছিল, আদর্শ ছিল না। আমি শুধু আমার ব্রাউজারে "ক্লাউড অবকাঠামো জ্ঞানের অভাব কোম্পানিগুলির" জন্য একটি অনুসন্ধান করেছি, এবং ফলাফলগুলি বেশ আশ্চর্যজনক সিদ্ধান্তে এসেছে:
শীর্ষ অনুসন্ধান ফলাফলগুলি মূল ক্লাউড ধারণাগুলির বোঝার অভাব এবং দলগুলিকে কার্যকর হওয়ার জন্য গুরুত্বপূর্ণ প্রশিক্ষণের প্রয়োজনীয়তার কথা বলেছে। বেশিরভাগ দলকে যে প্রশিক্ষণের প্রয়োজন হয় তা সাধারণত পথের ধারে পড়ে কারণ গ্রাহকের চাহিদা এবং বিতরণযোগ্যগুলি উচ্চ অগ্রাধিকার নেয়।
এই বর্তমান পদ্ধতির সাথে, বেশিরভাগ ক্লাউড বাস্তবায়নকে ধীর গতিতে চলতে বাধ্য করা হয় এবং তারা প্রায়শই অজানা দুর্বলতার সম্মুখীন হয়।
ক্লাউডে আপনার মাইক্রোসার্ভিসেস সুরক্ষিত করার বর্তমান অবস্থা সুখকর নয়।
ক্লাউড-নেটিভ সমাধানের জন্য আদর্শ রাষ্ট্রটি একটি ব্যক্তিগত মিশন বিবৃতি মেনে চলে যা আমি বেশ কয়েক বছর আগে প্রতিষ্ঠিত করেছি:
“আপনার বৌদ্ধিক সম্পত্তির মূল্যকে প্রসারিত করে এমন বৈশিষ্ট্য/কার্যকারিতা প্রদানের উপর আপনার সময় ফোকাস করুন। অন্য সবকিছুর জন্য ফ্রেমওয়ার্ক, পণ্য এবং পরিষেবার সুবিধা নিন।"
- জে ভেস্টার
এই প্রেক্ষাপটে, ক্লাউড-নেটিভ সলিউশনের দিকে ড্রাইভ করার জন্য যাদের নির্দেশনা রয়েছে তাদের এমন গতিতে চলতে সক্ষম হওয়া উচিত যা কর্পোরেট উদ্দেশ্যগুলির সাথে সারিবদ্ধ। অন্তর্নিহিত ক্লাউড অবকাঠামোর সাথে সম্পর্কিত শেখার বক্ররেখার দ্বারা তাদের ধীর করা উচিত নয়।
সুতরাং, এটি কেমন দেখায় যখন আমরা একাধিক মাইক্রোসার্ভিসকে অন্তর্ভুক্ত করে একটি ক্লাউড সমাধানের মুখোমুখি হই, যার সবকটিকে জনসাধারণের থেকে বিচ্ছিন্ন করতে হবে এবং সম্মতি বিধিগুলি (যেমন SOC, ISO, PCI, বা HIPAA) মেনে চলতে হবে ?
আমার 2020 Heroku অভিজ্ঞতা ইতিবাচক ছিল। তাই আমি দেখতে চেয়েছিলাম কিভাবে এটি এই জটিল ব্যবহারের ক্ষেত্রে কাজ করবে। তখনই আমি প্রাইভেট স্পেস আবিষ্কার করি।
Heroku এন্টারপ্রাইজের একটি অংশ হিসাবে ব্যক্তিগত স্থান উপলব্ধ। তারা একটি বিচ্ছিন্ন নেটওয়ার্কের মধ্যে মাইক্রোসার্ভিস চালানোর জন্য উত্সর্গীকৃত পরিবেশ। এই পদ্ধতিটি দলগুলিকে তাদের পরিষেবাগুলি এমন একটি নেটওয়ার্কে স্থাপন করতে দেয় যা সর্বজনীন ইন্টারনেটের সংস্পর্শে আসে না। হুডের অধীনে, এই পরিষেবাগুলি আমার মৌলিক ব্যবহারের ক্ষেত্রে ঠিক একইভাবে কাজ করে। আমি সেগুলিকে হেরোকু সিএলআই এর মাধ্যমে সেট আপ করতে পারি এবং সাধারণ গিট-ভিত্তিক কমান্ডগুলি স্থাপনার ট্রিগার করতে পারে।
নিয়ন্ত্রক সম্মতির প্রয়োজনের জন্য, PCI DSS, HIPAA, ISO (27001, 27017, এবং 27018), এবং SOC (1, 2, এবং 3) মেনে চলতে সাহায্য করার জন্য আমি Heroku Shield-এর উপর ঝুঁকতে পারি।
একটি উচ্চ স্তরে, Heroku আমাকে একটি সুরক্ষিত ক্লাউড-নেটিভ ডিজাইন বাস্তবায়ন করতে দেয় যা এভাবে চিত্রিত করা যেতে পারে:
এখানে, আমাদের কাছে একটি বাস্তবায়ন রয়েছে যা একটি ব্যক্তিগত স্থানের মধ্যে Heroku Shield ব্যবহার করে। এটি বিভিন্ন নিয়ন্ত্রক সম্মতির প্রয়োজনীয়তা মেনে চলাকালীন সমস্ত প্রধান প্রাথমিক এবং মাধ্যমিক কার্ড নেটওয়ার্কগুলির সাথে ইন্টারঅ্যাক্ট করার জন্য বিভিন্ন ধরণের প্রোগ্রামিং ভাষা ব্যবহার করে মাইক্রোসার্ভিসের একটি সংগ্রহের অনুমতি দেয়। উপরন্তু, আমি সেলসফোর্স প্ল্যাটফর্ম এবং গিটল্যাবের সাথে নিরাপদ যোগাযোগ পাই।
Heroku CLI ব্যবহার করে, আমি আমার প্রাইভেট স্পেস এবং Heroku Shield চালু করতে পারি। হেরোকুতে, একে বলা হয় শিল্ড প্রাইভেট স্পেস । প্রক্রিয়াটির মাধ্যমে কাজ করার জন্য এখানে কিছু উচ্চ-স্তরের উদাহরণ রয়েছে।
একটি নতুন শিল্ড প্রাইভেট স্পেস তৈরি করতে, আমরা spaces:create
এবং --shield
বিকল্পটি ব্যবহার করি।
$ heroku spaces:create payment-network --shield --team payments-team --region oregon Creating space payment-network in team payments-team... done === payment-network Team: payments-team Region: oregon State: allocating
যদি ব্যবহারের ক্ষেত্রে ক্লাসলেস ইন্টার-ডোমেন রাউটিং (CIDR) রেঞ্জের প্রয়োজন হয়, আমি --cidr
এবং --data-cidr
ফ্ল্যাগ ব্যবহার করতে পারি।
আপনি লক্ষ্য করবেন যে আমি অরেগন অঞ্চলে আমার ব্যক্তিগত স্থান তৈরি করেছি। আপনি 10টি উপলব্ধ অঞ্চলের একটিতে একটি ব্যক্তিগত স্থান তৈরি করতে পারেন (মার্কিন, ইউরোপ, এশিয়া এবং অস্ট্রেলিয়ায়)। উপলব্ধ অঞ্চলগুলির একটি তালিকার জন্য, নিম্নলিখিতগুলি করুন:
$ heroku regions ID Location Runtime ───────── ─────────────────────── ────────────── eu Europe Common Runtime us United States Common Runtime dublin Dublin, Ireland Private Spaces frankfurt Frankfurt, Germany Private Spaces london London, United Kingdom Private Spaces montreal Montreal, Canada Private Spaces mumbai Mumbai, India Private Spaces oregon Oregon, United States Private Spaces singapore Singapore Private Spaces sydney Sydney, Australia Private Spaces tokyo Tokyo, Japan Private Spaces virginia Virginia, United States Private Spaces
প্রতিটি মাইক্রোসার্ভিসের জন্য যা payment-network
প্রাইভেট স্পেসে চালানো দরকার, আমি apps:create
কমান্ড চালানোর সময় কেবল --space
বিকল্পটি যোগ করি:
$ heroku apps:create clearing-service --space payment-network Creating app... done, clearing-service
ভোক্তাদের payment-network
স্পেসে অ্যাক্সেস দেওয়ার জন্য, আমি বিশ্বস্ত আইপিগুলির অনুমতি তালিকা বজায় রাখতে পারি:
$ heroku trusted-ips:add 192.0.2.128/26 --space payment-network Added 192.0.2.128/26 to trusted IP ranges on payment-network ▸ WARNING: It may take a few moments for the changes to take effect.
ক্লাউড-নেটিভ পন্থা অবলম্বন করার জন্য দলগুলিকে প্রায়ই উপরে থেকে নির্দেশ দেওয়া হয়। কিন্তু সুরক্ষিত ক্লাউড আর্কিটেকচার স্থাপনের ক্ষেত্রে অনেক দলের বোঝার ক্ষেত্রে গুরুতর ফাঁক রয়েছে। আপনি যদি তিনটি বড় ক্লাউড সরবরাহকারীর মধ্যে একটি ব্যবহার করেন, তাহলে এই ব্যবধানটি পূরণ করা মূল্যে আসবে-সম্ভবত পণ্য মালিকের দ্বারা প্রত্যাশিত সময়সীমা মিস করা হবে।
নিরাপদ ক্লাউড স্থাপনার জন্য একটি ভাল বিকল্প আছে? আমি মনে করি Heroku Shield এর সাথে মিলিত প্রাইভেট স্পেসগুলি সেই ভাল বিকল্পের প্রতিনিধিত্ব করে। ব্যক্তিগতভাবে আমার জন্য, এটাও গুরুত্বপূর্ণ যে Heroku হল Salesforce-এর সমাধান প্ল্যাটফর্মের অংশ, যার একটি ক্লাউড গ্রহণের বিকল্প তাদের গ্রাহকদের সাফল্যের উপর দৃষ্টি নিবদ্ধ করার জন্য উৎসর্গের ইতিহাস রয়েছে। তাই আমি মনে করি এটি বিবেচনার জন্য একটি দীর্ঘমেয়াদী কৌশল।
একটি সত্যিই মহান দিন আছে!