PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

pghoard विकल्प - क्लस्टरकंट्रोल के साथ PostgreSQL बैकअप प्रबंधन

बैकअप का प्रबंधन मैन्युअल तरीके से करना एक जटिल और जोखिम भरा कार्य हो सकता है। आपको पता होना चाहिए कि बैकअप आपकी बैकअप नीति के अनुसार काम कर रहा है क्योंकि आप उस स्थिति में नहीं रहना चाहते हैं कि आपको बैकअप की आवश्यकता है और यह काम नहीं कर रहा है या यह मौजूद नहीं है। निश्चित तौर पर यह एक बड़ी समस्या होगी। इसलिए, विफलता के मामले में किसी भी समस्या से बचने के लिए, युद्ध-परीक्षणित बैकअप प्रबंधन एप्लिकेशन का उपयोग करना यहां सबसे अच्छा है।

PGHoard एक PostgreSQL बैकअप डेमॉन और पुनर्स्थापना प्रणाली है जो क्लाउड ऑब्जेक्ट स्टोर में बैकअप डेटा संग्रहीत करता है। यह PostgreSQL 9.3 या बाद के संस्करण का समर्थन करता है, PostgreSQL 11 तक, नवीनतम समर्थित संस्करण अभी। वर्तमान PGHoard संस्करण 2.1.0 है, जिसे मई 2019 (1 वर्ष पहले) में जारी किया गया था।

ClusterControl डेटाबेस क्लस्टर के लिए एक एजेंट रहित प्रबंधन और स्वचालन सॉफ्टवेयर है। यह आपके डेटाबेस सर्वर/क्लस्टर को सीधे ClusterControl UI से या ClusterControl CLI का उपयोग करके परिनियोजित, मॉनिटर, प्रबंधित और स्केल करने में मदद करता है। इसमें बैकअप प्रबंधन सुविधाएँ शामिल हैं और PostgreSQL 9.6, 10, 11 और 12 संस्करणों का समर्थन करता है। वर्तमान ClusterControl संस्करण 1.7.6 है, जिसे पिछले महीने अप्रैल 2020 में जारी किया गया था।

इस ब्लॉग में, हम PGHoard की तुलना ClusterControl बैकअप प्रबंधन सुविधा से करेंगे और हम देखेंगे कि दोनों प्रणालियों को कैसे स्थापित और उपयोग किया जाए। इसके लिए, हम एक Ubuntu 18.04 सर्वर और PostgreSQL11 का उपयोग करेंगे (क्योंकि यह PGHoard का उपयोग करने के लिए नवीनतम समर्थित संस्करण है)। हम उसी डेटाबेस सर्वर में PGHoard स्थापित करेंगे, और इसे ClusterControl में आयात करेंगे।

बैकअप प्रबंधन सुविधाओं की तुलना

PGHoard

पीजीएचओर्ड की कुछ सबसे महत्वपूर्ण विशेषताएं हैं:

  • स्वचालित आवधिक आधार बैकअप
  • स्वचालित लेन-देन लॉग बैकअप
  • स्टैंडअलोन हॉट बैकअप समर्थन
  • क्लाउड ऑब्जेक्ट स्टोरेज सपोर्ट (AWS S3, Google Cloud, OpenStack Swift, Azure, Ceph)
  • ऑब्जेक्ट स्टोरेज से सीधे बैकअप बहाली, संपीड़ित और एन्क्रिप्टेड
  • प्वाइंट-इन-टाइम-रिकवरी (PITR)
  • ऑब्जेक्ट स्टोरेज बैकअप से एक नया स्टैंडबाय प्रारंभ करें, स्वचालित रूप से प्रतिकृति हॉट-स्टैंडबाय के रूप में कॉन्फ़िगर किया गया
  • समानांतर संपीड़न और एन्क्रिप्शन

इसका उपयोग करने के तरीकों में से एक अलग बैकअप मशीन है, इसलिए PGHoard डेटाबेस से WAL फ़ाइलें प्राप्त करने के लिए pg_receivexlog से जुड़ सकता है। एक अन्य विधा pghoard_postgres_command को PostgreSQL आर्काइव_कमांड के रूप में उपयोग करना है। दोनों ही मामलों में, PGHoard pg_basebackup का उपयोग करके आवधिक आधार बैकअप बनाता है।

ClusterControl

आइए इस प्रणाली की कुछ सबसे महत्वपूर्ण विशेषताओं को भी देखें:

  • उपयोगकर्ता के अनुकूल UI
  • बैकअप और पुनर्स्थापना (एक ही नोड में या अलग नोड में)
  • शेड्यूल बैकअप
  • बैकअप से एक क्लस्टर बनाएं
  • स्वचालित बैकअप सत्यापन
  • संपीड़न
  • एन्क्रिप्शन
  • स्वचालित क्लाउड अपलोड
  • प्वाइंट-इन-टाइम-रिकवरी (PITR)
  • विभिन्न बैकअप विधियां (तार्किक, भौतिक, पूर्ण, वृद्धिशील, आदि)
  • बैकअप ऑपरेशनल रिपोर्ट

चूंकि यह न केवल एक बैकअप प्रबंधन प्रणाली है, हम न केवल बैकअप से संबंधित विभिन्न महत्वपूर्ण विशेषताओं का भी उल्लेख करेंगे:

  • डेटाबेस को तैनात/आयात करें:स्टैंडअलोन, क्लस्टर/प्रतिकृति, लोड बैलेंसर
  • स्केलिंग:नोड्स जोड़ें/निकालें, प्रतिकृतियां पढ़ें, क्लस्टर क्लोनिंग, क्लस्टर-टू-क्लस्टर प्रतिकृति
  • निगरानी:कस्टम डैशबोर्ड, दोष का पता लगाना, क्वेरी मॉनिटर, प्रदर्शन सलाहकार, अलार्म और सूचनाएं, कस्टम सलाहकार विकसित करना
  • स्वचालित पुनर्प्राप्ति:नोड और क्लस्टर पुनर्प्राप्ति, विफलता, उच्च उपलब्धता वातावरण
  • प्रबंधन:कॉन्फ़िगरेशन प्रबंधन, डेटाबेस पैच अपग्रेड, डेटाबेस उपयोगकर्ता प्रबंधन, क्लाउड एकीकरण, ऑप्स रिपोर्ट, प्रॉक्सीएसक्यूएल प्रबंधन
  • सुरक्षा:कुंजी प्रबंधन, भूमिका-आधारित अभिगम नियंत्रण, LDAP/सक्रिय निर्देशिका, SSL एन्क्रिप्शन का उपयोग करके प्रमाणीकरण

अनुशंसित टोपोलॉजी क्लस्टरकंट्रोल को चलाने के लिए एक अलग नोड है, यह सुनिश्चित करने के लिए कि, विफलता के मामले में, आप ऑटो-रिकवरी और फेलओवर क्लस्टरकंट्रोल सुविधाओं (अन्य उपयोगी सुविधाओं के बीच) का लाभ उठा सकते हैं। ।

सिस्टम आवश्यकताएँ

PGHoard

दस्तावेज़ीकरण के अनुसार, PGHoard PostgreSQL के 9.3 और इसके बाद के संस्करण को बैकअप और पुनर्स्थापित कर सकता है। डेमॉन को पायथन में लागू किया गया है और CPython संस्करण 3.5 या नए के साथ काम करता है। निम्नलिखित पायथन मॉड्यूल की आवश्यकता हो सकती है जो आवश्यकताओं पर निर्भर करती है:

  • psycopg2 लेन-देन लॉग मेटाडेटा देखने के लिए
  • आंतरिक क्लाइंट-सर्वर आर्किटेक्चर के लिए अनुरोध
  • Microsoft Azure ऑब्जेक्ट संग्रहण के लिए Azure
  • AWS S3 (या Ceph-S3) ऑब्जेक्ट स्टोरेज के लिए बोटोकोर
  • Google क्लाउड ऑब्जेक्ट संग्रहण के लिए google-api-client
  • बैकअप एन्क्रिप्शन और डिक्रिप्शन के लिए क्रिप्टोग्राफी (संस्करण 0.8 या नया आवश्यक)
  • स्नैपी कंप्रेशन और डीकंप्रेसन के लिए तेज़
  • Zstandard (zstd) कम्प्रेशन और डीकंप्रेसन के लिए zstandard
  • systemd एकीकरण के लिए systemd
  • ओपनस्टैक स्विफ्ट ऑब्जेक्ट स्टोरेज के लिए स्विफ्टक्लाइंट
  • sftp ऑब्जेक्ट स्टोरेज के लिए paramiko

समर्थित ऑपरेटिंग सिस्टम का कोई उल्लेख नहीं है, लेकिन यह कहता है कि यह आधुनिक Linux x86-64 सिस्टम पर परीक्षण किया गया था, लेकिन अन्य प्लेटफॉर्म पर काम करना चाहिए जो आवश्यक मॉड्यूल प्रदान करते हैं।

ClusterControl

ClusterControl सर्वर के लिए निम्न सॉफ़्टवेयर आवश्यक है:

  • MySQL सर्वर/क्लाइंट
  • अपाचे वेब सर्वर (या nginx)
  • mod_rewrite
  • mod_ssl
  • .htaccess ओवरराइड की अनुमति दें
  • PHP (5.4 या बाद के संस्करण)
  • RHEL:php, php-mysql, php-gd, php-ldap, php-curl
  • डेबियन:php5-common, php5-mysql, php5-gd, php5-ldap, php5-curl, php5-json
  • लिनक्स कर्नेल सुरक्षा (SElinux या AppArmor) - अक्षम होना चाहिए या अनुमेय मोड पर सेट होना चाहिए
  • OpenSSH सर्वर/क्लाइंट
  • BASH (अनुशंसित:संस्करण 4 या बाद के संस्करण)
  • NTP सर्वर - सभी सर्वरों का समय एक समय क्षेत्र के अंतर्गत समन्वयित होना चाहिए
  • सोसाइट या नेटकैट - बैकअप स्ट्रीमिंग के लिए

और यह विभिन्न ऑपरेटिंग सिस्टमों का समर्थन करता है:

  • Red Hat Enterprise Linux 6.x/7.x/8.x
  • CentOS 6.x/7.x/8.x
  • उबंटू 12.04/14.04/16.04/18.04 एलटीएस
  • डेबियन 7.x/8.x/9.x/10.x

यदि ClusterControl को इंस्टॉलेशन स्क्रिप्ट (इंस्टॉल-सीसी) या पैकेज मैनेजर (yum/apt) के माध्यम से इंस्टॉल किया जाता है, तो सभी निर्भरताएं स्वतः संतुष्ट हो जाएंगी।

PostgreSQL के लिए, यह 9.6/10.x/11.x/12.x संस्करणों का समर्थन करता है। आप दस्तावेज़ीकरण में समर्थित डेटाबेस की पूरी सूची पा सकते हैं।

इसे केवल डेटाबेस नोड्स (निजी और सार्वजनिक कुंजी का उपयोग करके) और एक विशेषाधिकार प्राप्त ओएस उपयोगकर्ता (यह रूट या सुडो उपयोगकर्ता हो सकता है) तक पासवर्ड रहित एसएसएच पहुंच की आवश्यकता है।

इंस्टॉलेशन प्रक्रिया

PGHoard स्थापना प्रक्रिया

हम मान लेंगे कि आपके पास अपना PostgreSQL डेटाबेस है और चल रहा है, तो चलिए शेष पैकेजों को स्थापित करते हैं। PGHoard एक पायथन पैकेज है, इसलिए आपके पास आवश्यक पैकेज स्थापित होने के बाद, आप इसे pip कमांड का उपयोग करके स्थापित कर सकते हैं:

$ apt install postgresql-server-dev-11 python3 python3-pip python3-snappy

$ pip3 install pghoard

इस इंस्टॉलेशन प्रक्रिया के हिस्से के रूप में, आपको इस टूल के साथ काम करने के लिए PostgreSQL इंस्टेंस तैयार करने की आवश्यकता है। इसके लिए, आपको WAL संग्रह की अनुमति देने और max_wal_senders बढ़ाने के लिए postgresql.conf को संपादित करना होगा:

wal_level = logical

max_wal_senders = 4

archive_mode = on

archive_command = pghoard_postgres_command --mode archive --site default --xlog %f

इस परिवर्तन के लिए एक डेटाबेस पुनरारंभ की आवश्यकता होगी:

$ service postgresql restart

अब, PGHoard के लिए एक डेटाबेस उपयोगकर्ता बनाते हैं:

$ psql

CREATE USER pghoard PASSWORD 'Password' REPLICATION;

और निम्न पंक्ति को pg_hba.conf फ़ाइल में जोड़ें:

host    replication  pghoard  127.0.0.1/32/32  md5

डेटाबेस सेवा को फिर से लोड करें:

$ service postgresql reload

इसे काम करने के लिए, आपको PGHoard के लिए एक JSON कॉन्फ़िगरेशन फ़ाइल बनानी होगी। हम इसे अगले "उपयोग" अनुभाग में देखेंगे।

ClusterControl स्थापना प्रक्रिया

जैसा कि दस्तावेज़ीकरण में बताया गया है, विभिन्न इंस्टॉलेशन विधियां हैं। मैन्युअल स्थापना के मामले में, आवश्यक पैकेज एक ही दस्तावेज़ में निर्दिष्ट हैं, और सभी प्रक्रिया के लिए एक चरण-दर-चरण मार्गदर्शिका है।

आइए स्वचालित इंस्टॉलेशन स्क्रिप्ट का उपयोग करके एक उदाहरण देखें।

$ wget http://www.severalnines.com/downloads/cmon/install-cc

$ chmod +x install-cc

$ sudo ./install-cc   # omit sudo if you run as root

इंस्टॉलेशन स्क्रिप्ट निम्नलिखित कार्यों को स्वचालित करने का प्रयास करेगी:

  • स्थानीय MySQL सर्वर को स्थापित और कॉन्फ़िगर करें (निगरानी डेटा संग्रहीत करने के लिए ClusterControl द्वारा उपयोग किया जाता है)
  • पैकेज मैनेजर के माध्यम से ClusterControl कंट्रोलर पैकेज को इंस्टाल और कॉन्फ़िगर करें
  • पैकेज प्रबंधक के माध्यम से ClusterControl निर्भरता स्थापित करें
  • अपाचे और एसएसएल कॉन्फ़िगर करें
  • ClusterControl API URL और टोकन कॉन्फ़िगर करें
  • न्यूनतम कॉन्फ़िगरेशन विकल्पों के साथ ClusterControl नियंत्रक को कॉन्फ़िगर करें
  • बूट पर CMON सेवा सक्षम करें और इसे प्रारंभ करें

उल्लिखित स्क्रिप्ट को चलाने पर, आपको नैदानिक ​​डेटा भेजने के बारे में एक प्रश्न प्राप्त होगा:

$ sudo ./install-cc

!!

Only RHEL/Centos 6.x|7.x|8.x, Debian 7.x|8.x|9.x|10.x, Ubuntu 14.04.x|16.04.x|18.04.x LTS versions are supported

Minimum system requirements: 2GB+ RAM, 2+ CPU cores

Server Memory: 1024M total, 922M free

MySQL innodb_buffer_pool_size set to 512M

Severalnines would like your help improving our installation process.

Information such as OS, memory and install success helps us improve how we onboard our users.

None of the collected information identifies you personally.

!!

=> Would you like to help us by sending diagnostics data for the installation? (Y/n):

फिर, यह आवश्यक पैकेजों को स्थापित करना शुरू कर देगा। अगला प्रश्न उस होस्टनाम के बारे में है जिसका उपयोग किया जाएगा:

=> The Controller hostname will be set to 192.168.100.116. Do you want to change it? (y/N):

जब स्थानीय डेटाबेस स्थापित हो जाता है, तो इंस्टॉलर इसे एक रूट पासवर्ड बनाकर सुरक्षित करेगा जिसे आपको दर्ज करना होगा:

=> Starting database. This may take a couple of minutes. Do NOT press any key.

Redirecting to /bin/systemctl start mariadb.service

=> Securing the MySQL Server ...

=> !! In order to complete the installation you need to set a MySQL root password !!

=> Supported special password characters: [email protected]#$%^&*()_+{}<>?

=> Press any key to proceed ...

और एक CMON उपयोगकर्ता पासवर्ड, जिसका उपयोग ClusterControl द्वारा किया जाएगा:

=> Set a password for ClusterControl's MySQL user (cmon) [cmon]

=> Supported special characters: [email protected]#$%^&*()_+{}<>?

=> Enter a CMON user password:

बस। इस तरह, आपके पास मैन्युअल रूप से कुछ भी इंस्टॉल या कॉन्फ़िगर किए बिना सब कुछ होगा।

=> ClusterControl installation completed!

Open your web browser to http://192.168.100.116/clustercontrol and enter an email address and new password for the default Admin User.

Determining network interfaces. This may take a couple of minutes. Do NOT press any key.

Public/external IP => http://10.10.10.10/clustercontrol

Installation successful. If you want to uninstall ClusterControl then run install-cc --uninstall.

जब आप पहली बार UI का उपयोग करते हैं, तो आपको 30-दिन की निःशुल्क परीक्षण अवधि के लिए पंजीकरण करना होगा।

आपके 30-दिवसीय नि:शुल्क परीक्षण के समाप्त होने के बाद, आपका इंस्टालेशन स्वचालित रूप से परिवर्तित हो जाएगा समुदाय संस्करण जब तक कि आपके पास वाणिज्यिक लाइसेंस न हो।

बैकअप प्रबंधन उपयोग

PGHoards उपयोग

इस टूल के इंस्टॉल हो जाने के बाद, आपको PGHoard कॉन्फ़िगरेशन के साथ एक JSON फ़ाइल (pghoard.json) बनानी होगी। यह एक उदाहरण है:

{

"backup_location": "/var/lib/pghoard",

"backup_sites": {

"default": {

"nodes": [

{

"host": "127.0.0.1",

"password": "Password",

"port": 5432,

"user": "pghoard"

}

],

"object_storage": {

"storage_type": "local",

"directory": "./backups"

},

"pg_data_directory": "/var/lib/postgresql/11/main/"

}

}

}

इस उदाहरण में, हम एक बैकअप लेंगे और इसे स्थानीय रूप से संग्रहीत करेंगे, लेकिन आप एक क्लाउड खाता भी कॉन्फ़िगर कर सकते हैं और इसे वहां संग्रहीत कर सकते हैं:

"object_storage": {

"aws_access_key_id": "AKIAQTUN************",

"aws_secret_access_key": "La8YZBvN********************************",

"bucket_name": "pghoard",

"region": "us-east-1",

"storage_type": "s3"

},

आप दस्तावेज़ीकरण में कॉन्फ़िगरेशन के बारे में अधिक विवरण प्राप्त कर सकते हैं।

अब, इस JSON फ़ाइल का उपयोग करके बैकअप चलाने दें:

$ pghoard --short-log --config pghoard.json

INFO pghoard initialized, own_hostname: 'pg1', cwd: '/root'

INFO Creating a new basebackup for 'default' because there are currently none

INFO Started: ['/usr/lib/postgresql/11/bin/pg_receivewal', '--status-interval', '1', '--verbose', '--directory', '/var/lib/pghoard/default/xlog_incoming', '--dbname', "dbname='replication' host='127.0.0.1' port='5432' replication='true' user='pghoard'"], running as PID: 19057

INFO Started: ['/usr/lib/postgresql/11/bin/pg_basebackup', '--format', 'tar', '--label', 'pghoard_base_backup', '--verbose', '--pgdata', '/var/lib/pghoard/default/basebackup_incoming/2020-05-21_13-13_0', '--wal-method=none', '--progress', '--dbname', "dbname='replication' host='127.0.0.1' port='5432' replication='true' user='pghoard'"], running as PID: 19059, basebackup_location: '/var/lib/pghoard/default/basebackup_incoming/2020-05-21_13-13_0/base.tar'

INFO Compressed 83 byte open file '/var/lib/pghoard/default/xlog_incoming/00000003.history' to 76 bytes (92%), took: 0.001s

INFO 'UPLOAD' transfer of key: 'default/timeline/00000003.history', size: 76, origin: 'pg1' took 0.001s

INFO Compressed 16777216 byte open file '/var/lib/postgresql/11/main/pg_wal/000000030000000000000009' to 799625 bytes (5%), took: 0.175s

INFO 'UPLOAD' transfer of key: 'default/xlog/000000030000000000000009', size: 799625, origin: 'pg1' took 0.002s

127.0.0.1 - - [21/May/2020 13:13:31] "PUT /default/archive/000000030000000000000009 HTTP/1.1" 201 -

INFO Compressed 16777216 byte open file '/var/lib/pghoard/default/xlog_incoming/000000030000000000000009' to 799625 bytes (5%), took: 0.190s

INFO 'UPLOAD' transfer of key: 'default/xlog/000000030000000000000009', size: 799625, origin: 'pg1' took 0.028s

INFO Compressed 16777216 byte open file '/var/lib/pghoard/default/xlog_incoming/00000003000000000000000A' to 789927 bytes (5%), took: 0.109s

INFO 'UPLOAD' transfer of key: 'default/xlog/00000003000000000000000A', size: 789927, origin: 'pg1' took 0.002s

INFO Compressed 16777216 byte open file '/var/lib/postgresql/11/main/pg_wal/00000003000000000000000A' to 789927 bytes (5%), took: 0.114s

INFO 'UPLOAD' transfer of key: 'default/xlog/00000003000000000000000A', size: 789927, origin: 'pg1' took 0.002s

127.0.0.1 - - [21/May/2020 13:13:32] "PUT /default/archive/00000003000000000000000A HTTP/1.1" 201 -

INFO Ran: ['/usr/lib/postgresql/11/bin/pg_basebackup', '--format', 'tar', '--label', 'pghoard_base_backup', '--verbose', '--pgdata', '/var/lib/pghoard/default/basebackup_incoming/2020-05-21_13-13_0', '--wal-method=none', '--progress', '--dbname', "dbname='replication' host='127.0.0.1' port='5432' replication='true' user='pghoard'"], took: 1.940s to run, returncode: 0

INFO Compressed 24337408 byte open file '/var/lib/pghoard/default/basebackup_incoming/2020-05-21_13-13_0/base.tar' to 4892408 bytes (20%), took: 0.117s

INFO 'UPLOAD' transfer of key: 'default/basebackup/2020-05-21_13-13_0', size: 4892408, origin: 'pg1' took 0.008s

"बैकअप_लोकेशन" निर्देशिका में (इस मामले में /var/lib/pghoard), आपको वर्तमान स्थिति के साथ एक pghoard_state.json फ़ाइल मिलेगी:

$ ls -l /var/lib/pghoard

total 48

drwxr-xr-x 6 root root  4096 May 21 13:13 default

-rw------- 1 root root 42385 May 21 15:25 pghoard_state.json

और बैकअप के साथ एक साइट निर्देशिका (इस मामले में "डिफ़ॉल्ट/" कहा जाता है):

$ ls -l /var/lib/pghoard/default/

total 16

drwxr-xr-x 2 root root 4096 May 21 13:13 basebackup

drwxr-xr-x 3 root root 4096 May 21 13:13 basebackup_incoming

drwxr-xr-x 2 root root 4096 May 21 13:13 xlog

drwxr-xr-x 2 root root 4096 May 21 13:13 xlog_incoming

आप फोलोगिन कमांड का उपयोग करके बैकअप सूची की जांच कर सकते हैं:

$ pghoard_restore list-basebackups --config pghoard.json

Available 'default' basebackups:

Basebackup                                Backup size    Orig size  Start time

----------------------------------------  -----------  -----------  --------------------

default/basebackup/2020-05-21_13-13_0            4 MB        23 MB  2020-05-21T13:13:31Z

ClusterControl उपयोग

इसके लिए, हम मान लेंगे कि आपके पास आपका PostgreSQL डेटाबेस क्लस्टर ClusterControl में आयात किया गया है या आपने इसे इस सिस्टम का उपयोग करके तैनात किया है।

ClusterControl में, अपने क्लस्टर का चयन करें और "बैकअप" अनुभाग पर जाएं, फिर, "बैकअप बनाएं" चुनें।

इस उदाहरण के लिए, हम "शेड्यूल बैकअप" विकल्प का उपयोग करेंगे। बैकअप शेड्यूल करते समय, विधि या संग्रहण जैसे सामान्य विकल्पों को चुनने के अलावा, आपको शेड्यूल/फ़्रीक्वेंसी भी निर्दिष्ट करने की आवश्यकता होती है।

आपको एक विधि चुननी होगी, सर्वर जिससे बैकअप लिया जाएगा। , और जहां आप इसे स्टोर करना चाहते हैं। आप संबंधित बटन को सक्षम करके अपने बैकअप को क्लाउड (AWS, Google, या Azure) पर भी अपलोड कर सकते हैं।

फिर आपको कंप्रेशन, एन्क्रिप्शन और रिटेंशन के उपयोग को निर्दिष्ट करने की आवश्यकता है आपके बैकअप का। इस चरण में, आप "बैकअप सत्यापित करें" सुविधा को भी सक्षम कर सकते हैं जो आपको यह पुष्टि करने की अनुमति देती है कि बैकअप किसी भिन्न नोड में पुनर्स्थापित करके उपयोग करने योग्य है।

यदि आप "क्लाउड विकल्प पर बैकअप अपलोड करें" को सक्षम करते हैं, तो आप क्लाउड प्रदाता और क्रेडेंशियल निर्दिष्ट करने के लिए एक अनुभाग देखें। यदि आपने अपने क्लाउड खाते को ClusterControl के साथ एकीकृत नहीं किया है, तो आपको इसे जोड़ने के लिए ClusterControl -> Integrations -> Cloud Providers पर जाना होगा।

बैकअप अनुभाग पर, आप बैकअप की प्रगति देख सकते हैं, और विधि, आकार, स्थान आदि जैसी जानकारी।

ClusterControl कमांड लाइन (s9s)

स्क्रिप्टिंग और कार्यों को स्वचालित करने के लिए, या यदि आप केवल कमांड लाइन पसंद करते हैं, तो ClusterControl में s9s टूल है। यह आपके डेटाबेस क्लस्टर के प्रबंधन के लिए एक कमांड-लाइन टूल है। आइए इस टूल का उपयोग करके बैकअप बनाने और सूचीबद्ध करने का एक उदाहरण देखें:

$ s9s backup --list --cluster-id=40 --long --human-readable
$ s9s backup --create --backup-method=pg_basebackup --cluster-id=40 --nodes=192.168.100.125 --backup-directory=/tmp --wait

आप ClusterControl CLI प्रलेखन अनुभाग में अधिक उदाहरण और जानकारी प्राप्त कर सकते हैं।

निष्कर्ष

इन उल्लिखित बैकअप प्रबंधन प्रणालियों की तुलना के निष्कर्ष के रूप में, हम कह सकते हैं कि PGHoard इस कार्य के लिए एक स्वतंत्र लेकिन जटिल समाधान है। आपको यह समझने के लिए कुछ समय की आवश्यकता होगी कि यह कैसे काम करता है और इसे कैसे कॉन्फ़िगर किया जाए, क्योंकि आधिकारिक दस्तावेज उस पर थोड़ा खराब है। साथ ही, यह थोड़ा पुराना लगता है, क्योंकि नवीनतम रिलीज़ 1 साल पहले थी। इसके अलावा, क्लस्टरकंट्रोल एक ऑल-इन-वन प्रबंधन प्रणाली है जिसमें न केवल बैकअप प्रबंधन, उपयोगकर्ता के अनुकूल और उपयोग में आसान यूआई के साथ बहुत सारी विशेषताएं हैं। इसमें 30-दिन की निःशुल्क परीक्षण अवधि के साथ समुदाय (सीमित उपलब्ध सुविधाओं के साथ) और भुगतान किए गए संस्करण हैं। उदाहरण और विस्तृत जानकारी के साथ दस्तावेज़ीकरण स्पष्ट और पूर्ण है।

हमें आशा है कि यह ब्लॉग आपके डेटा को सुरक्षित रखने के लिए सर्वोत्तम निर्णय लेने में आपकी सहायता करेगा।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. भूमिका मौजूद नहीं है और PostgreSQL का उपयोग करते समय डेटाबेस बनाने में असमर्थ है

  2. PostgreSQL में उच्च उपलब्धता का प्रबंधन - भाग III:Patroni

  3. PostgreSQL डेटाबेस में सभी संग्रहीत प्रक्रियाओं को सूचीबद्ध करने के 3 तरीके

  4. रेल मॉडल के साथ कई पोस्टग्रेएसक्यूएल स्कीमा का उपयोग करना

  5. Psql सभी तालिकाओं को सूचीबद्ध करें