AWS Lambda সাধারণত ভিন্ন ভিন্ন নেটওয়ার্ক সেগমেন্ট বা VPC (Virtual Private Cloud) এর মধ্যে রান করতে পারে। যখন Lambda ফাংশন VPC-এর ভিতরে রান করে, তখন তাকে নির্দিষ্ট Security Group এবং Subnets ব্যবহার করতে হয়। এই কনফিগারেশন আপনার Lambda ফাংশনকে নির্দিষ্ট নেটওয়ার্ক রিসোর্স (যেমন RDS, EC2 ইত্যাদি) এর সাথে যোগাযোগ করতে সক্ষম করে এবং একই সাথে এটি নিরাপত্তা এবং অ্যাক্সেস কন্ট্রোল পরিচালনা করতে সাহায্য করে।
Axure RP প্রোটোটাইপের মধ্যে Lambda ফাংশন ব্যবহার করা হলে, VPC এবং Security Group কনফিগারেশন ঠিকঠাকভাবে করা হলে, আপনি Lambda ফাংশনের সঠিক কার্যকারিতা এবং নিরাপত্তা নিশ্চিত করতে পারবেন।
VPC-এর মধ্যে Lambda ফাংশন চালানো
AWS Lambda ফাংশনকে VPC-এর ভিতরে চালানোর জন্য আপনাকে নিচের পদক্ষেপগুলো অনুসরণ করতে হবে।
1. Lambda ফাংশনকে VPC এর সাথে যুক্ত করা
Lambda ফাংশনকে VPC-এর মধ্যে রান করার জন্য আপনাকে VPC, Subnet এবং Security Group নির্বাচন করতে হবে। এভাবে Lambda ফাংশন আপনার VPC-তে থাকা রিসোর্সগুলির সাথে সংযুক্ত হবে।
- Lambda ফাংশন তৈরি করুন বা সম্পাদনা করুন:
- AWS Management Console এ লগইন করুন এবং Lambda সেকশন থেকে একটি নতুন Lambda ফাংশন তৈরি করুন অথবা একটি বিদ্যমান Lambda ফাংশন নির্বাচন করুন।
VPC কনফিগারেশন:
- Lambda ফাংশনটি সম্পাদনা করার পর, VPC সেকশনে গিয়ে VPC নির্বাচন করুন।
- VPC নির্বাচন করার পর আপনাকে Subnets এবং Security Group নির্বাচন করতে হবে।
- Lambda ফাংশনটি একাধিক Subnets এর মধ্যে চলতে পারে, কিন্তু সেগুলি একই Availability Zone-এ থাকতে হবে।
Subnets:
- Lambda ফাংশনটি private subnets অথবা public subnets-এ থাকতে পারে, তবে সাধারনত Lambda ফাংশনকে private subnets এ রাখা হয় যাতে সে ইন্টারনেট এক্সেস না পায়।
Security Group:
- Lambda ফাংশনটির জন্য একটি Security Group নির্বাচন করুন। এই Security Group Lambda ফাংশনের আউটবাউন্ড এবং ইনবাউন্ড ট্রাফিক কন্ট্রোল করবে।
- Network Configuration:
- Lambda ফাংশন VPC এর সাথে সংযুক্ত হওয়ার পর, আপনি VPC-এর private resources যেমন RDS, EC2, S3 ইত্যাদির সাথে যোগাযোগ করতে পারবেন।
2. Security Group কনফিগারেশন
Security Group হলো একটি ভার্চুয়াল ফায়ারওয়াল যা নির্দিষ্ট ইনস্ট্যান্স বা সার্ভিসের জন্য প্রবাহিত ট্রাফিক কন্ট্রোল করতে ব্যবহৃত হয়। Lambda ফাংশনের জন্য Security Group কনফিগার করতে হলে কিছু গুরুত্বপূর্ণ বিষয় মাথায় রাখতে হবে:
- নির্বাচন করুন বা নতুন Security Group তৈরি করুন:
- Lambda ফাংশনের জন্য নতুন Security Group তৈরি করতে পারেন অথবা একটি বিদ্যমান Security Group নির্বাচন করতে পারেন।
Inbound Rules:
- Inbound rules সিলেক্ট করতে হবে যা Lambda ফাংশনকে সঠিকভাবে VPC resources (যেমন EC2, RDS) এর সাথে যোগাযোগ করতে সক্ষম করবে।
উদাহরণ: যদি আপনার Lambda ফাংশন একটি RDS ডেটাবেসের সাথে যোগাযোগ করতে চায়, তাহলে সেই RDS ইন্সট্যান্সের IP রেঞ্জ বা Security Group কে Lambda Security Group এর Inbound Rule হিসেবে যোগ করতে হবে।
- Outbound Rules:
- Outbound rules-এর মাধ্যমে আপনি Lambda ফাংশনকে নির্দিষ্ট IP রেঞ্জ বা সার্ভিসের সাথে যোগাযোগ করতে দিতে পারেন। উদাহরণস্বরূপ, যদি Lambda ফাংশনটি ইন্টারনেটের মাধ্যমে কোনও API কল করতে চায়, তবে একে ইন্টারনেট এক্সেস দেওয়া প্রয়োজন।
একটি সাধারণ Outbound Rule হতে পারে:
Destination: 0.0.0.0/0 (All Traffic) Protocol: TCP Port Range: 80, 443 (HTTP/HTTPS)
Security Group এর মধ্যে নির্দিষ্ট পোর্ট এবং প্রোটোকল কনফিগার করা:
- যদি Lambda ফাংশনকে নির্দিষ্ট সেবা বা ডেটাবেসে এক্সেস করতে হয়, তাহলে সেই সেবার জন্য সঠিক পোর্ট এবং প্রোটোকল উল্লেখ করতে হবে।
উদাহরণস্বরূপ:
- RDS MySQL এর জন্য, আপনি TCP পোর্ট 3306 খুলে দিতে পারেন।
3. VPC-তে Lambda ফাংশনের কার্যকারিতা
Lambda ফাংশন যদি VPC-এর মধ্যে চলতে থাকে, তবে এটি কিছু নির্দিষ্ট বৈশিষ্ট্য তৈরি করবে:
- VPC Resources Access:
- Lambda ফাংশনটি আপনার VPC-তে থাকা EC2 ইন্সট্যান্স, RDS ডেটাবেস, ElastiCache ইত্যাদি রিসোর্সের সাথে সংযুক্ত হতে পারে, তবে এটি private subnet-এ থাকা উচিত যাতে এটি বাইরের ট্রাফিক থেকে আলাদা থাকে এবং শুধুমাত্র নির্দিষ্ট রিসোর্সগুলির সাথে যোগাযোগ করতে পারে।
- ENI (Elastic Network Interface):
- Lambda ফাংশন যখন VPC এর মধ্যে রান করে, তখন AWS Lambda একটি Elastic Network Interface (ENI) তৈরি করে, যা Lambda ফাংশনকে VPC-তে যোগাযোগ করতে সক্ষম করে। ENI Lambda ফাংশনের জন্য IP অ্যাড্রেস প্রদান করে।
- Internet Access:
- যদি Lambda ফাংশনটি ইন্টারনেট এক্সেস করতে চায় (যেমন API কল), তবে NAT Gateway অথবা NAT Instance প্রয়োজন হতে পারে। NAT গেটওয়ে Lambda ফাংশনকে private subnet থেকে ইন্টারনেটের সাথে যোগাযোগ করতে সাহায্য করে।
4. Axure RP এবং Lambda ইন্টিগ্রেশন
Axure RP থেকে Lambda ফাংশনের সাথে ইন্টারঅ্যাক্ট করার জন্য, আপনি API Gateway ব্যবহার করতে পারেন। API Gateway Lambda ফাংশনের HTTP ইন্টারফেস সরবরাহ করবে। এরপর আপনি Axure RP এর মাধ্যমে HTTP রিকোয়েস্ট পাঠাতে পারেন।
এক্ষেত্রে, Lambda ফাংশনটি যখন VPC-এর মধ্যে চলবে, তখন API Gateway এবং Lambda এর মধ্যে একটি সঠিক VPC Endpoint কনফিগার করা থাকতে হবে, যাতে API Gateway আপনার Lambda ফাংশনটি ট্রিগার করতে পারে এবং ইন্টারনেট এক্সেস ছাড়াই যোগাযোগ স্থাপন করতে পারে।
সারাংশ
AWS Lambda ফাংশনকে VPC এর মধ্যে চালানোর মাধ্যমে আপনি নিরাপদে VPC-তে থাকা বিভিন্ন রিসোর্সের সাথে সংযুক্ত হতে পারেন। Security Group কনফিগারেশন Lambda ফাংশনের সিকিউরিটি এবং যোগাযোগ নির্ধারণ করে। Inbound এবং Outbound রুলস সেট করে আপনি Lambda ফাংশনের জন্য ট্রাফিক কন্ট্রোল করতে পারেন। Axure RP থেকে Lambda ফাংশনটি ব্যবহার করার জন্য API Gateway ব্যবহার করতে হবে, এবং এই কমিউনিকেশন VPC-এর মধ্যে সঠিকভাবে কনফিগার করা থাকতে হবে যাতে ইন্টারনেট এক্সেস ছাড়াই কার্যক্রম চলতে থাকে।
Read more