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


22

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

ইলাস্টিক বিয়ানস্টালক কনফিগারেশন পৃষ্ঠাতে বলা হয়েছে:

আপনার কাছে কোনও ডাটাবেস নেই।  আপনি একটি নতুন আরডিএস ডাটাবেস তৈরি করতে বা বিদ্যমান ডাটাবেস ব্যবহার করতে পারেন।

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

কীভাবে আমি আমার ইলাস্টিক বিয়ানস্টাল্ক পরিবেশের সাথে একটি বিদ্যমান আরডিএস উদাহরণ সংযুক্ত করতে পারি?

উত্তর:


24

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

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

ইবি-র স্বাধীনভাবে আরডিএস সেট আপ করার ক্ষেত্রে একটি সমস্যা হ'ল আপনি আরডিএস_ * ভেরিয়েবলগুলি স্বয়ংক্রিয়ভাবে পপুলেটে পাবেন না এবং সেইজন্য তাদের মানগুলি পুনরুদ্ধার করতে এবং ওয়েব কনসোল বা .ebextensions এর মাধ্যমে সেগুলি নিজেকে পপুলেট করা দরকার। আপনার কোডটিতে শংসাপত্র যুক্ত করার পরামর্শ দেওয়া হয় না যদিও এটি কোনও সুরক্ষা গর্ত হতে পারে।

তবে তারপরে, পরবর্তী সমস্যাটি হ'ল যদি আপনি প্রোগ্রামগতভাবে পরিবেশ তৈরি করতে চান (যেমন নীল-সবুজ শূন্য ডাউনটাইম মোতায়েনের জন্য) তবে প্রতিবার সংবেদনশীল আরডিএস মান (যেমন পাসওয়ার্ড) কীভাবে তৈরি করা যায় তার জন্য আপনার সমাধান দরকার। দুর্ভাগ্যক্রমে, এর জন্য আপনাকে আরও AWS স্ট্যাকের নিচে নেমে একটি ক্লাউডফর্মেশন টেম্পলেট ব্যবহার করা দরকার।

আদর্শ সমাধানটি ইবির বর্ধনশীল যাতে প্রশ্নটিতে উল্লিখিত "একটি বিদ্যমান ডাটাবেস ব্যবহার করুন" লিঙ্কটি আপনাকে আসলে একটি বিদ্যমান আরডিএস ডাটাবেসটিকে ম্যানুয়ালি সংযুক্ত করতে দেয় এবং তারপরে আপনাকে অপ্রয়োজনীয় ডকুমেন্টেশনে পুনর্নির্দেশ না করে আরডিএস_ * পরিবেশের ভেরিয়েবলগুলি স্বয়ংক্রিয়ভাবে পুনরায় তৈরি করতে দেয় । এডাব্লুএস সাপোর্ট বলেছে এটি একটি বৈশিষ্ট্য অনুরোধ হিসাবে উত্থাপিত হয়েছে তবে অবশ্যই কোনও সময়সীমা দেওয়া হয়নি।


এক বছর পরে এবং এখনও মনে হচ্ছে কেস?
Lifeofguenter

1
এখনও যতদূর জানি মামলা।
rgareth

আমরা কীভাবে এই এডাব্লুএসকে টুকরো টুকরো করব?
ম্যাথো

এক বছর পরে, এটি এখনও একই।
করণ কুমার

আরডিএস ডকস.ওএস.এমাজন / ইলাস্টিকিয়ানস্টালক / প্লাস্টিক / ডিজি / adding যুক্ত করার পদক্ষেপ (কেবল আমার মতো লোকেরা এটির সন্ধানের জন্য সম্পূর্ণতা অর্জনের জন্য) তারা আপনি একটি পরিবেশগত কনফিগারেশন তৈরি করেন না এবং এটি তৈরিতে কোনও কনফিগারেশন ফাইলের মাধ্যমে লোড করেন না। এটি এনভ ভার্স যুক্ত করা উচিত, সুতরাং যতক্ষণ না তারা পরিবর্তন না করে, ঠিক আছে?
ম্যানুয়েল

18

এডাব্লুএস সমর্থন থেকে উত্তর :

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

আপনি যদি চান যে আরডিএস উদাহরণটি পরিবেশের বাইরে উপস্থিত থাকে আপনি কেবল EB কনসোলের মাধ্যমে কনফিগারেশন -> ওয়েব স্তর -> সফ্টওয়্যার কনফিগারেশনের মাধ্যমে পরিবেশগত পরিবর্তনশীল হিসাবে সংযোগের পরামিতিগুলি সরবরাহ করতে পারেন। তারপরে, আপনি পিএইচপি এর মাধ্যমে পরিবেশ পরিবর্তনশীল পড়তে পারেন ।


কনভেনশন অনুসরণ করতে আরডিএস_ * নামের সাথে পরিবেশের ভেরিয়েবলগুলি সংজ্ঞায়িত করে আমি দ্বিতীয় পদ্ধতিটি গ্রহণ করেছি। সুরক্ষা গোষ্ঠীগুলি বেশ কড়া সেট করা আছে, তবে একটি পরিবেশের ভেরিয়েবলের মধ্যে একটি ডিবি পাসওয়ার্ড স্থাপন করা এখনও খানিকটা শিথিল মনে হয়।
জোসেফ শেডি

@ ওয়েলট্রন আমার কাছে একই, তবে আমি অভ্যস্ত হয়ে পড়েছি!
বেনিয়ামিন

2

আমার সম্প্রতি এটির প্রয়োজন ছিল এবং এডাব্লুএস সিএলআই / ইসি সিবিআই ব্যবহার করে পদক্ষেপগুলি স্বয়ংক্রিয় করতে চাইতাম। যাই হোক না কেন, মূলত আমি অনুসরণ করা পদক্ষেপগুলি এখানে রয়েছে (ধরে নিলেন আপনি ইতিমধ্যে একটি আরডিএস উদাহরণ তৈরি করেছেন):

  1. আপনার আরডিএস ইনস্ট্যান্সের (ভিপিসি ডিফল্ট গোষ্ঠী নয়) আলাদা সুরক্ষা গোষ্ঠী সেটআপ আছে তা নিশ্চিত করুন। আপনি ব্যবহার করতে পারেন aws ec2 create-security-groupযে জন্য (ডেস্কটপ AWS CLI) এবং যদি RDS উদাহরণস্বরূপ ব্যবহার এর সাথে সংযুক্ত aws rds modify-db-instance(ডেস্কটপ AWS CLI) দ্বারা।
  2. আপনার বিনস্টাল অ্যাপ্লিকেশন শুরু করুন (আমি এর জন্য eb init(EB CLI) ব্যবহার করেছি)।
  3. আপনার আরডিএস ডাটাবেস (ডিবি নাম, হোস্টের নাম, পোর্ট ইত্যাদি) থেকে প্রাসঙ্গিক কনফিগারেশন ডেটা পড়ুন। আমি তার aws rds describe-db-instancesজন্য ব্যবহার করেছি
  4. RDS_*আপনি পরিবেশ তৈরি করার সময় (বা পরে পরিবেশ স্থাপন করুন) ডেটা ব্যবহার করে EB উদাহরণে পরিবেশের ভেরিয়েবল সেট করে । আপনি এটি ( eb create/ eb deployসিবি সিবিআই) দিয়ে করতে পারেন । আপনি যখন পরিবেশ তৈরি করবেন প্রথমদিকে এটি হ্রাস পাবে, যেহেতু আরডিএস ডেটাবেস অ্যাক্সেস করার জন্য সুরক্ষা গোষ্ঠীগুলি সঠিকভাবে সেট আপ করা হয়নি।
  5. EB কনফিগারেশন থেকে সম্পর্কিত সুরক্ষা গোষ্ঠীগুলি পান Get অটস্কলিং গ্রুপ এবং ইলাস্টিক লোড ব্যালেন্সারের জন্য আপনার প্রয়োজন You আপনি তার জন্য aws elasticbeanstalk describe-configuration-settings(AWS CLI) ব্যবহার করতে পারেন ।
  6. আপনি যে পদক্ষেপটি 1 ধাপে সেটআপ করেছেন তার জন্য আপনার ডাটাবেসে অভ্যন্তরীণ ট্র্যাফিকের জন্য আপনার অটোক্যাসিং গোষ্ঠীকে অনুমোদিত করুন that এর জন্য আমি aws ec2 authorize-security-group-ingress(AWS CLI) ব্যবহার করেছি, যা ভিপিসি সুরক্ষা গোষ্ঠীগুলি (ডিবি সুরক্ষা গোষ্ঠী নয়) ব্যবহার করে। আপনার অঞ্চলে যদি তারা সমর্থন করে তবে আপনি সম্ভবত ডিবি সুরক্ষা গোষ্ঠীর সাথেও এটি অর্জন করতে পারেন। ইনবাউন্ড ট্র্যাফিক নিয়ম সেট আপ করার সময় আপনার ডাটাবেস ইঞ্জিনের জন্য সঠিক প্রোটোকল এবং পোর্ট ব্যবহার করা নিশ্চিত করুন।
  7. আপনার আরডিএস ইভেন্টের সুরক্ষা গোষ্ঠীতে স্থিতিস্থাপক লোড ব্যালেন্সার গ্রুপ যুক্ত করুন (আবার aws rds modify-db-instance(AWS CLI) ব্যবহার করুন ) LI
  8. ইলাস্টিক বিয়ানস্টালক অ্যাপ্লিকেশনটি পুনরায় বুট করুন বা পুনরায় চালিত করুন (যেমন eb deploy(EB CLI) ব্যবহার করে )। আমি একটি পুনর্নির্দেশনা করতে হয়েছিল, যেহেতু আমি মোতায়েনের জায়গায় মাইগ্রেশন চালাই।

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


0

কনফিগারেশন দ্বারা ইবি ইসি 2 দৃষ্টান্তের সাথে বিদ্যমান সুরক্ষা গোষ্ঠী যুক্ত করা সবচেয়ে সহজ https://github.com/awsdocs/elastic-beanstalk-sams/blob/master/configration-files/aws-provided/ এ বর্ণিত সাধারণ ফাইলটি ব্যবহার করা নিরাপত্তা কনফিগারেশন / securitygroup-addexisting.config

উদাহরণ স্বরূপ:

$ cat .ebextensions/securitygroup-addexisting.config
option_settings:
  - namespace: aws:autoscaling:launchconfiguration
    option_name: SecurityGroups
    value: rds-launch-wizard-1

0

আমি একই সমস্যার মুখোমুখি হয়েছি এবং নিম্নলিখিত পদক্ষেপগুলি ব্যবহার করে স্থির হয়েছি:

1) ইসি 2 ইভেন্টে যান এবং আপনার সুরক্ষা গোষ্ঠীর উদাহরণ নোট করুন "sg-121212121212"

2) আরডিএস সুরক্ষা গোষ্ঠীর বিজ্ঞাপনে যান = এনডি ইনবাউন্ড ট্র্যাফিক

3) সম্পাদনা করুন নিয়মটি সমস্ত ট্র্যাফিক নির্বাচন করুন এবং আপনার নতুন ebs সুরক্ষা গোষ্ঠী "এসএজি -121212121212" যুক্ত করুন

আশা করি এটি সহায়ক হবে


-2

ইলাস্টিকের অধীনে আরডিএস তৈরি করুন; এটি নতুন সঠিক সুরক্ষা গোষ্ঠী যুক্ত করবে; পুরানো বিদ্যমান আরডিএসের সুরক্ষা গোষ্ঠীটি সংশোধন করুন; ওয়েব কনফিগারেশন এবং সমস্ত কাজের জন্য সঠিক সংযোগ স্ট্রিং সেট করুন ...

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.