যেমন IT বাড়ছে, ইনফরমেশন সিস্টেমগুলো বিভিন্ন ইন্ডাস্ট্রিতে আরও ক্রিটিক্যাল হয়ে উঠছে। ইনফরমেশন সিস্টেমে সার্ভিস ইন্টারাপশন ইকনোমিক লস, ক্রিটিক্যাল ডেটা লস, এবং মার্কেটে ব্র্যান্ড ইমেজে প্রভাব ফেলতে পারে, বিশেষ করে কমিউনিকেশন, ফাইন্যান্স, মেডিকেল কেয়ার, ই-কমার্স, লজিস্টিক্স, এবং গভর্নমেন্ট এর মতো ইন্ডাস্ট্রির জন্য। তাই, সার্ভিস কন্টিনিউইটি ইনফরমেশন সিস্টেম কনস্ট্রাকশনের জন্য অত্যন্ত গুরুত্বপূর্ণ। বর্তমানে, সার্ভিস কন্টিনিউইटी সাধারণত ডিজাস্টার রিকভারি (DR) সেন্টার তৈরি করে উন্নত করা হয় যেখানে প্রোডাকশন ডেটার কপি সংরক্ষণ করা থাকে।
ভূমিকা
একটি ট্রাডিশনাল DR সমাধানে, প্রতিটি প্রোডাকশন ডেটা সেন্টার (DC)-এর জন্য একটি DR সেন্টার ডিপ্লয় করা হয়। DR সেন্টার সার্ভিস অ্যাক্সেস প্রদান করে না যদি না প্রোডাকশন DC একটি ডিজাস্টার মুখোমুখি হয় যা সার্ভিস ব্রেকডাউন तरफ নিয়ে যায়, যা সংক্ষিপ্ত সময়ে রিপেयर করা যায় না। তাই, DR সেন্টারগুলো নিচের চ্যালেঞ্জগুলো মুখোমুখি হয়:
যখন প্রোডাকশন সেন্টার পাওয়ার সাপ্লাই ফেইলার, আগুন, বন্যা, বা ভূমিকম্প মুখোমুখি হয়, সার্ভিসগুলো DR সেন্টারে স্যুইচ করতে ম্যানুয়াল অপারেশন প্রয়োজন। প্রফেশনাল রিকভারি মেজার এবং ডিবাগিংও প্রয়োজন। এই ডিজাস্টারগুলো দীর্ঘমেয়াদী সার্ভিস ইন্টারাপশন এবং সার্ভিস ডিসকন্টিনিউইটি করতে পারে।
DR সেন্টার সার্ভিস প্রদান করে না এবং অধিকাংশ সময় আইডেল থাকে, যা রিসোর্স ইউজেজ কমিয়ে দেয়।
কাস্টমার রিকোয়ারমেন্ট মিট করতে কার্যকর রিসোর্স ইউজেজ, লোড ব্যালেন্সিং, এবং দুটি DC-এর মধ্যে অটোমেটিক স্যুইচওভার, Oracle® এন্ড-টু-এন্ড এক্টিভ-এ্যাক্টিভ DC সমাধান চালু করেছে। এই সমাধানটি উভয় DC-কে সমকಾಲিনভাবে চালানোর এবং সার্ভিস লোড শেয়ার করার মাধ্যমে সামগ্রিক সার্ভিস ক্যাপাবিলিটি এবং রিসোর্স ইউজেজ উন্নত করতে সক্ষম করে। সমাধানটি ডিভাইস ফেইলার বা সিঙ্গেল-DC ফেইলারের ক্ষেত্রে শূন্য সার্ভিস আওয়эрনেস সহ অটোমেটিক ফেইলওভার নিশ্চিত করে। এর পাশাপাশি, এটি শূন্য Recovery Point Objective (RPO) এবং শূন্য Recovery Time Objective (RTO) বরাদ্দ করে। নোট: RTO অ্যাপ্লিকেশন সিস্টেম এবং ডিপ্লয়মেন্ট মোডের ওপর নির্ভর করে।
বর্তমান স্টোরেজ ইন্ডাস্ট্রিতে দুটি উপলব্ধতা মোড রয়েছে:
- অ্যাক্টিভ-প্যাসিভ (AP) বা এক্টিভ-স্ট্যান্ডবাই
- অ্যাক্টিভ-এ্যাক্টিভ (AA) বা মেট্রো ভার্চুয়াল ডেটা সেন্টার (MVDC)
ডাটাবেস লেয়ারের ক্রিটিক্যাল কম্পোনেন্ট
ডাটাবেস (DB) এক্টিভ-স্ট্যান্ডবাই মোডে শূন্য ডেটা লস অপশনের সাথে সেট আপ করা উচিত। নিচের আইটেমগুলো ক্রিটিক্যাল কম্পোনেন্ট:
- Oracle Data Guard Broker: Data Guard কনফিগারেশন অটোমেট এবং সেন্ট্রালাইজ করে এবং জটিল রোল চেঞ্জের জন্য একটি কমান্ডে স্যুইচওভার, বা ফেইলওভার, আহ্বান করতে সাহায্য করে।
- Flashback Database: একটি DB-এর জন্য রيوয়াইন্ড, বা রিভার্ট, প্রদান করে, এবং ফ্ল্যাশব্যাক লগ ইনফরমেশন ফ্ল্যাশ রিকভারি এরিয়ায় সংরক্ষণ করে।
- ফাস্ট-স্টার্ট ফেইলওভার (FSFO): শূন্য ডেটা লস সহ ফেইলওভার সক্ষম করে। FSFO ট্রিগার করে না যতক্ষণ না স্ট্যান্ডবাই DB প্রাইমারি DB-এর সাথে সিঙ্ক থাকে।
- Observer: Data Guard কমান্ড-লাইন ইন্টারফেস,
dgmgrl,-এ অন্তর্ভুক্ত একটি আলাদা প্রসেস প্রদান করে, যা প্রাইমারি এবং স্ট্যান্ডবাই DB-এর স্টেট মনিটর করে সম্ভাব্য ফেইলার কন্ডিশনের জন্য।
Data Guard কনফিগারেশন
নিচের ছবিটি Data Guard কনফিগারেশন দেখাচ্ছে:
ইমেজ সোর্স: https://neeraj-dba.blogspot.com/2011/10/dataguard-broker-and-its-benefits_05.html
প্রাইমারি DB-এ, লগ রাইটার (LGWR) প্রসেস রিডো ডেটা এক বা একাধিক লগ নেটওয়ার্ক সার্ভার (LNSn) প্রসেসগুলোর কাছে জমা দেয়, যেগুলো তারপর একাধিক রিমোট ডেস্টিনেশনে প্যারালেলে নেটওয়ার্ক I/O আরম্ভ করে। ট্রানজেকশনগুলো প্রাইমারি ডাটাবেসে কমিট করা হয় না যতক্ষণ না রিডো ডেটা সমস্ত LGWR SYNC ডেস্টিনেশনে প্রাপ্ত হয় যা ট্রানজেকশন রিকভার করতে প্রয়োজনীয়।
স্ট্যান্ডবাই DB-এ, রিমোট ফাইল সার্ভার (RFS) LGWR প্রসেস থেকে নেটওয়ার্কের মাধ্যমে রিডো ডেটা получа করে এবং রিডো ডেটা স্ট্যান্ডবাই রিডো লগ ফাইলগুলিতে লিখে।
সর্বোচ্চ উপলব্ধতা আর্কিটেকচার
যখন আপনি সর্বোচ্চ উপলব্ধতার জন্য একটি আর্কিটেকচার ডিজাইন করেন, আপনাকে ডাউনটাইমের সম্ভাব্য কারণগুলো এবং কীভাবে আনপ্ল্যান্ড এবং প্ল্যান্ড ডাউনটাইম ক্লাসিফাই করা যায় উভয়ই বিবেচনা করা উচিত।
আনপ্ল্যান্ড ডাউনটাইম অন্তর্ভুক্ত করে নিচের আইটেমগুলোর অনপ্রত্যাশিত ইন্টারাপশন:
সার্ভার উপলব্ধতা: আপনাকে নিশ্চিত করতে হবে DB সার্ভিসগুলোর অবিচ্ছিন্ন অ্যাক্সেস ডিপসাইট DB সার্ভার হোস্ট করা এক বা একাধিক মেশিনের অনপ্রত্যাশিত ফেইলারের কারণ হ든 হার্ডওয়্যার বা সফটওয়্যার ফল্ট। Oracle Real Application Clusters (RAC) এরূপ ফেইলারের বিপরীতে সবচেয়ে কার্যকর প্রোটেকশন প্রদান করে।
ডেটা উপলব্ধতা: ডেটা ফেইলার মিটিগেট করতে, যেমন বিজনেস-ক্রিটিক্যাল ডেটার লস, ক্ষতি বা করাপশন, আপনার প্ল্যানটি নিশ্চিত করতে হবে যে আপনার সবসময় আপনার ডেটার অ্যাক্সেস আছে।
প্ল্যান্ড ডাউনটাইম অন্তর্ভুক্ত করে অ্যাক্সেসের শিডিউলড ইন্টারাপশন:
- সিস্টেম চেঞ্জ
- ডেটা চেঞ্জ
- অ্যাপ চেঞ্জ
MVDC-এর জন্য স্যুইচওভার টেস্টিং সিনেরিও
একটি স্যুইচওভার হলো একটি কন্ট্রোলড, প্ল্যান্ড রোল রিভারসাল অপারেশন যেখানে Data Guard কনফিগারেশনে প্রাইমারি এবং স্ট্যান্ডবাই DB তাদের রোল স্যুইচ করে। একটি স্যুইচওভারের পর, প্রতিটি ডাটাবেস Data Guard কনফিগারেশনে অংশগ্রহণ করে থাকে তার নতুন রোলে।
স্যুইচওভার প্রসেস
একটি স্যুইচওভার নিচের ক্রমে ঘটে:
- মূল প্রাইমারি DB রোল স্যুইচ করে স্ট্যান্ডবাই-এ।
- মূল স্ট্যান্ডবাই DB প্রাইমারি রোলে ট্রানজিশন করে।
Data Guard Broker নিচের কার্যকলাপগুলো স্বয়ংক্রিয়ভাবে যত্ন নেয় যখন আপনি একটি স্যুইচওভার পারফর্ম করেন:
- ভেরিফাই করে যে প্রাইমারি এবং টার্গেট স্ট্যান্ডবাই DBগুলো অনলাইন এবং কোনো এরর নেই।
- RAC কনফিগারেশনে প্রাইমারি এবং স্ট্যান্ডবাই DB-दুটোর জন্য সব বাদে একটি ইনস্ট্যান্স শাট ডাউন করে।
- প্রাইমারি এবং স্ট্যান্ডবাই DB-এর রোল স্যুইচ করে। Data Guard Broker প্রথমে মূল প্রাইমারি DB কনভার্ট করে স্ট্যান্ডবাই রোলে চলতে। তারপর, ব্রোকার টার্গেট স্ট্যান্ডবাই DB-কে প্রাইমারি রোলে ট্রানজিশন করে। এটি ব্রোকার কনফিগারেশন ফাইলও আপডেট করে রোল চেঞ্জগুলো রেকর্ড করার জন্য যাতে প্রতিটি DB রিস্টার্টের পর সঠিক রোলে চলে।
- নতুন স্ট্যান্ডবাই (পুরনো প্রাইমারি) DB রিস্টার্ট করে এবং রিডো অ্যাপ্লাই প্রসেস শুরু করে, নতুন প্রাইমারি DB থেকে রিডো ডেটা অ্যাপ্লাই করে। যদি এটি একটি RAC DB হয়, ব্রোকার স্যুইচওভারের আগে যা ইনস্ট্যান্সগুলো শাট ডাউন করেছিল সেগুলো রিস্টার্ট করে।
- নতুন প্রাইমারি DB রিস্টার্ট করে, ওপেন করে এবং রিডো ট্রান্সপোর্ট সার্ভিসেস শুরু করে, স্ট্যান্ডবাই DB-এ রিডো ডেটা ট্রান্সমিট করে। যদি এটি একটি RAC DB হয়, ব্রোকার স্যুইচওভারের আগে যা ইনস্ট্যান্সগুলো শাট ডাউন করেছিল সেগুলো রিস্টার্ট করে।
স্যুইচওভারের আগে:
ইমেজ সোর্স: https://docs.oracle.com/cd/E11882_01/server.112/e41134/role_management.htm#SBYDB00615
স্যুইচওভারের পর:
ইমেজ সোর্স: https://docs.oracle.com/cd/E11882_01/server.112/e41134/role_management.htm#SBYDB00615
স্যুইচওভার পারফর্ম করার স্টেপস
একটি স্যুইচওভার পারফর্ম করতে, নিচের স্টেপগুলো এক্সিকিউট করুন:
নিশ্চিত করুন অ্যাপ্লিকেশন সম্পূর্ণ শাট ডাউন, এবং কোনো ব্যবহারকারী ডাটাবেসে কানেক্টেড নেই।
আর্কাইভ UTL স্ক্রিপ্টগুলো ডিজেবল করুন যেগুলো দুটি DC-এ চলছে কমপক্ষে ৩০ মিনিট আগে স্যুইচওভার শুরু হওয়ার আগে। টেস্টিং কমপ্লিট হওয়ার পর এবং DB প্রিয় লোকেশনএ চলতে থাকলে, আর্কাইভড ইউটিলিটি স্ক্রিপ্টগুলো আনকমেন্ট করুন।
বর্তমান প্রাইমারি DB-এ নিচের SQL কুয়েরি চালান:
SELECT * FROM DBA_JOBS_RUNNING; (There should not be any sys owned jobs running) SELECT OWNER, JOB_NAME, START_DATE, END_DATE, ENABLED FROM DBA_SCHEDULER_JOBS WHERE ENABLED='TRUE' AND OWNER <> 'SYS'; (Data Guard Broker does not kill the jobs owned by sys.)job_queue_processesএবংaq_tm_processes০-এ সেট করুন। মূল মানটি নোট করুন কারণ স্যুইচওভার টেস্টিং কমপ্লিট হওয়ার পর আপনাকে মূল মানটি রিসেট করতে হবে।প্রাইমারি DB-এ চলমান
emagentস্টপ করুন।বর্তমান প্রাইমারি DB-এ নিচের SQL কুয়েরি চালান:
SELECT sid, username, status, program, inst_id FROM gv$session WHERE username is not null and status='ACTIVE' order by inst_id; (Validate and check the number of connections is active; a large number of active connections can lead to the switchover taking more time.)সব
sqlplusসেশন থেকে লগ আউট করুন যেখানে আপনিsysহিসেবে কানেক্টেড।বর্তমান প্রাইমারি DB-এ নিচের SQL কুয়েরি চালান:
set linesize to 132 col value format a35 SELECT inst_id,name,value from gv$parameter WHERE name in ('job_queue_processes','aq_tm_processes'); (Check and validate the value of job_queue_processes and aq_tm_processes should be zero.)Data Guard কনফিগারেশন ভ্যালিডেট করতে নিচের কমান্ড চালান:
DGMGRL> show configuration verbose ** STATUS Should show success, do not proceed if the status is not "success".Cluster Ready Services (CRS) স্ট্যাটাস চেক করুন নিশ্চিত করতে যে সব রিসোর্স অনলাইন রেজিস্টারড কারণ ব্রোকার CRS-কে হ্যান্ডওভার দেয় DB মাউন্ট এবং শাটডাউন করার সময় এই প্রসেসে।
প্রাইমারি DB-এ কিছু লগ স্যুইচওভার করুন এবং ভেরিফাই করুন সেগুলো স্ট্যান্ডবাই DB-এ অ্যাপ্লাই হয়েছে।
এগিয়ে যাওয়ার আগে, একটি স্যুইচওভার পারফর্ম করুন এবং DRC লগ এবং এলার্ট লগ মনিটর করুন যেকোনো ফেইলারের জন্য। নিচের কমান্ডটি পুরনো প্রাইমারি কনভার্ট করে স্ট্যান্ডবাই-এ এবং তারপর পুরনো স্ট্যান্ডবাই কনভার্ট করে প্রাইমারি-এ:
DGMGRL> switchover to ‘DDMPROD_STANDBY’;স্যুইচওভার কমপ্লিট হওয়ার পর, নিশ্চিত করুন লগ ট্রান্সপোর্ট এবং লগ অ্যাপ্লাই সার্ভিসেস আপ এবং সঠিকভাবে ফাংশন করছে।
MVDC-এর জন্য ফেইলওভার টেস্টিং সিনেরিও
একটি ফেইলওভার হলো যখন প্রাইমারি DB (একটি RAC প্রাইমারি DB-এর সব ইনস্ট্যান্স) ফেইল করে এবং স্ট্যান্ডবাই DB প্রাইমারি রোল নেওয়ার জন্য ট্রানজিশন করে। একটি ফেইলওভার নিচের কেসগুলোর মধ্যে পারফর্ম করা হয়:
- প্রাইমারি DB-এর একটি ক্যাটাস্ট্রোফিক ফেইলার যেখানে প্রাইমারি DB কে টাইমলি ম্যানারে রিকভার করার কোনো সম্ভাবনা নেই।
- যখন Observer এবং স্ট্যান্ডবাই DB দুটোই তাদের নেটওয়ার্ক কানেকশন প্রাইমারি DB-এর সাথে হারায়, এবং যখন স্ট্যান্ডবাই DB নিশ্চিত করে যে এটি একটি সিঙ্ক্রোনাইজড স্টেটে আছে।
ফেইলওভার সিনেরিও
নিচের DB কন্ডিশনগুলো ফাস্ট-স্টার্ট ফেইলওভার ট্রিগার করে:
- প্রাইমারি সাইট ফেইলার
- প্রাইমারি DB কন্ডিশন, যার মধ্যে রয়েছে:
- ইনস্ট্যান্স ফেইলার
- লাস্ট সারভাইভিং ইনস্ট্যান্স, যদি RAC
- লাস্ট এভেলেবল ইনস্ট্যান্সের শাটডাউন অ্যাবোর্ট
- I/O এররসের কারণে ডেটা ফাইল অফলাইন নেওয়া (থ্রেশহোল্ড উপেক্ষা করা হয় অফলাইন ডেটা ফাইলের কারণে ফেইলওভার পারফর্ম করার সময়)
নেটওয়ার্ক-রিলেটেড কন্ডিশনগুলো ফেইলওভার করাতে পারে শুধুমাত্র যদি প্রাইমারি এবং Observer, সেইসাথে প্রাইমারি এবং টার্গেট স্ট্যান্ডবাই DB-এর মধ্যে লিংকগুলো ডাউন থাকে। Observer এবং স্ট্যান্ডবাইর মধ্যে একটি কানেকশন প্রয়োজন Observer কে কনফিগারেশন সিঙ্ক্রোনাইজড স্টেটে আছে তা কনফার্ম করতে।
ইমেজ সোর্স: https://docs.oracle.com/cd/E11882_01/server.112/e41134/role_management.htm#SBYDB00615
উপসংহার
একটি MVDC কার্যকর রিসোর্স ইউজেজ, লোড ব্যালেন্সিং, হাই আউটলেট, এবং দুটি DC-এর মধ্যে অটোমেটিক স্যুইচওভার সাহায্য করে। উভয় DC সমকালিনভাবে চলে (এ্যাক্টিভ-এ্যাক্টিভ) সার্ভিস লোড শেয়ার করতে এবং সামগ্রিক সার্ভিস ক্যাপাবিলিটি উন্নত করতে। একটি MVDC ডিজাস্টার রিকভারি ফেইলওভার বা আপগ্রেড/মেইনটেন্যান্স স্যুইচওভারের জন্য ডাটাবেস স্যুইচ করার জন্য মানব হস্তক্ষেপ কমিয়ে দেয়।
Feedback ট্যাব ব্যবহার করে মন্তব্য করুন বা প্রশ্ন জিজ্ঞেস করুন।
বিশেষজ্ঞ প্রশাসন, পরিচালনা, এবং কনফিগারেশন দিয়ে আপনার পরিবেশ অপ্টিমাইজ করুন
Rackspace-এর অ্যাপ্লিকেশন সার্ভিসেস (RAS) এক্সপার্টরা অ্যাপ্লিকেশনের একটি ব্যাপক পোর্টফোলিওতে নিচের প্রফেশনাল এবং ম্যানেজড সার্ভিসগুলো প্রদান করে:
- ই-কমার্স এবং ডিজিটাল এক্সপেরিয়েন্স প্ল্যাটফর্ম
- এন্টারপ্রাইজ রিসোর্স প্ল্যানিং (ERP)
- বিজনেস ইন্টেলিজেন্স
- Salesforce কাস্টমার রিলেশনশিপ ম্যানেজমেন্ট (CRM)
- ডাটাবেস
- ইমেল হোস্টিং এবং প্রোডাক্টিভিটি
আমরা প্রদান করি:
- পক্ষপাতরহিত ειδষ্টতা: আমরা আপনার মডার্নাইজেশনের যাত্রা সহজ করি এবং গাইড করি, যেস 능력이 সরাসরি মান প্রদান করে সেগুলোর ওপর ফোকাস করি।
- Fanatical Experience™: আমরা একটি প্রক্রিয়া-প্রথম, টেকনোলজি-দ্বিতীয়® পদ্ধতিকে ডেডিকেটেড টেকনিক্যাল সাপোর্টের সাথে কম্বাইন করি কমপ্রিহেনসিভ সমাধান প্রদানের জন্য।
- অনন্য পোর্টফোলিও: আমরা ব্যাপক ক্লাউড অভিজ্ঞতা প্রয়োগ করি আপনাকে সঠিক টেকনোলজি সঠিক ক্লাউডে বেছে নেওয়া এবং ডিপ্লয় করার সাহায্য করার জন্য।
- এজাইল ডেলিভারি: আমরা আপনার যাত্রায় আপনি যেখানে আছেন সেখানে আপনাকে মিট করি এবং আমাদের সাফল্যকে আপনার সাফল্যের সাথে আলাইন করি।
আরম্ভ করতে এখন চ্যাট করুন।