वेबसाइट

Managed Addons: Postgres और Redis

The Addons tab lets you attach a managed PostgreSQL database or a managed Redis instance to a site without building or maintaining a server for it. Kapsule provisions it, gives you a connection…

Addons टैब आपको एक site के साथ एक managed PostgreSQL database या एक managed Redis instance को attach करने देता है, बिना इसके लिए एक सर्वर बनाए या बनाए रखे। Kapsule इसे provision करता है, आपको एक connection string देता है, और जब आप इसे हटाते हैं तो इसे cleanly tear down करता है।

Addons कहाँ रहते हैं

Websites खोलें, site पर क्लिक करें, site tab strip में Settings मेनू खोलें, और Addons चुनें। पृष्ठ का शीर्षक Managed addons है।

Catalogue में दो विकल्प हैं:

Addonसामान्य उपयोग
PostgreSQLएक application का प्राथमिक datastore जो MySQL पर नहीं है
RedisCaching, session storage और background job queues

ये एक standard hosting site के साथ आने वाले MySQL database से अलग हैं। वह Files पर है, फिर Database tab पर और किसी provisioning की जरूरत नहीं है: SSH Tunnel के ऊपर अपने Database से जुड़ना देखें।

KPanel में एक site के लिए Managed addons page

एक Addon का अनुरोध करना

  1. Add a managed database section में addon खोजें।
  2. Add to site पर क्लिक करें।

अनुरोध तुरंत recorded होता है और addon Your addons में एक PENDING badge और Waiting for provisioner नोट के साथ दिखाई देता है। पृष्ठ हर पंद्रह सेकंड में refresh होता है, इसलिए आप इसे खुला छोड़ सकते हैं।

एक background job हर कुछ मिनट में pending requests उठाता है, आपके site के लिए एक dedicated database और एक dedicated user बनाता है, और एक encrypted connection string वापस लिखता है। Status फिर ACTIVE में चला जाता है।

एक addon का अनुरोध करने या हटाने के लिए sites:write permission की जरूरत है। Read-only team members देख सकते हैं कि कौन से addons exist हैं और उनकी status क्या है, लेकिन buttons hidden हैं।

प्रति Site एक

एक site एक PostgreSQL addon और एक Redis addon रख सकता है। एक ही type का दूसरा मांगना एक message के साथ refuse कर दिया जाता है जो कहता है कि यह पहले से ही provisioned है, और catalogue एक विकल्प को hide करता है जब यह installed हो जाता है। जब दोनों installed हों तो catalogue section All available addons are installed पढ़ता है।

Status को पढ़ना

Statusमतलब
PENDINGअनुरोध किया गया, provisioner के लिए queued
PROVISIONINGअभी बनाया जा रहा है
ACTIVEउपयोग के लिए तैयार
FAILEDProvisioning complete नहीं हुा; कारण row पर दिखाया गया है
DELETEDहटाया गया, अब listed नहीं है

एक FAILED row एक generic message की बजाय actual error text को इसके नीचे दिखाता है। अगर कारण कुछ ऐसा नहीं है जो आप कर सकते हैं, तो इसे एक support ticket में verbatim quote करें: एक Support Ticket खोलना देखें।

Connection String प्राप्त करना

एक बार addon ACTIVE हो जाने के बाद, इसकी row एक masked connection string दिखाती है जिसमें password को dots से replace किया गया है, इसलिए आप host और database name को बिना credential को expose किए confirm कर सकते हैं।

Copy connection पर क्लिक करें पूरे connection string को अपने clipboard पर रखने के लिए। यह उस एक request के लिए server-side पर decrypt होता है और कभी भी page पर print नहीं होता है, इसलिए screen shares और screenshots इसे leak नहीं करते हैं। हर reveal को site के audit trail में लिखा जाता है और Site Activity Log में दिखाई देता है।

String प्रत्येक engine के लिए सामान्य URL form में है, जिसमें host, port, user, password और database name हैं जो इस site के लिए बनाए गए थे।

इसे अपने Application में उपयोग करना

Connection string को paste करें जहाँ आपका application अपना configuration पढ़ता है। एक Node.js site पर, सही जगह Secrets tab है, एक key के नीचे जैसे DATABASE_URL या REDIS_URL, production environment में।

Connection string को एक file में hard-code न करें जिसे आप commit करते हैं। इसमें एक live password है। अगर यह एक git remote तक पहुँचता है तो इसे leaked माना जाना चाहिए, और एकमात्र real fix addon को delete करना और एक नया request करना है, क्योंकि credential को panel से in place rotate नहीं किया जा सकता।

एक Addon को हटाना

Row पर Delete पर क्लिक करें। KPanel आपसे confirm करने के लिए पूछता है और क्या होता है इसके बारे में blunt है: यह managed database को remove करता है, और data unrecoverable है।

Row तुरंत deleted के रूप में marked है और provisioner अपने अगले pass पर underlying database और user को tear down करता है। मौजूदा connections उस tear-down के हिस्से के रूप में terminated हैं।

एक managed addon का deletion पर कोई backup नहीं लिया जाता है, और कोई undo नहीं है। अगर इसमें कुछ ऐसा है जो आप रखना चाहते हैं, तो पहले इसे pg_dump या redis-cli --rdb के साथ dump करें जबकि addon अभी भी active है और connection string अभी भी काम करता है।

विकल्पों के बीच चुनाव करना

PostgreSQL का उपयोग करें जब आपके application को एक relational database की जरूरत हो और यह Postgres के विरुद्ध लिखा गया हो: strong constraints, transactions, JSON columns, और full-text search जिसे आपको अन्यथा bolt on करना पड़ता है।

Redis का उपयोग करें उन चीजों के लिए जो disappear होने की अनुमति दी जाती हैं: cached fragments, rate-limit counters, session storage, और job queues। इसे fast और volatile के रूप में treat करें, एक system of record के रूप में नहीं।

Built-in MySQL database का उपयोग करें WordPress के लिए और किसी भी चीज के लिए जो पहले से ही MySQL के विरुद्ध लिखी गई है। एक WordPress site के लिए एक Postgres addon जोड़ना कोई उपयोगी काम नहीं करता है, क्योंकि WordPress इससे बात नहीं कर सकता।

समस्या निवारण

Addon लंबे समय से PENDING में है। Provisioner एक schedule पर चलता है न कि instantly। पृष्ठ को खुला रखें, क्योंकि यह refresh होता है, और check करने के लिए वापस आएं। अगर यह कुछ passes के बाद move नहीं हुआ है, तो site domain और addon type के साथ एक support ticket खोलें।

Provisioning FAILED हुआ। Row पर error को पढ़ें। Failed addon को delete करें और इसे फिर से request करें, जो safe है: एक failed row के पीछे कभी live database नहीं था।

Copy connection कुछ नहीं करता। कुछ browsers clipboard writes को block करते हैं जब tab focused नहीं हो। पहले page पर click करें, फिर button पर फिर से click करें।

Application connect नहीं कर सकता। क्रम में तीन चीजों को check करें: कि addon status ACTIVE है, कि आपने string को copy किया न कि retyped किया, और कि आपका application वास्तव में set value को पढ़ रहा है न कि एक पिछले deploy से एक stale को। नए configuration को pick up करने से पहले एक restart आमतौर पर जरूरी है।

Redeploy के बाद Connections refused हो रहे हैं। Confirm करें कि आपके configuration में connection string अभी भी इस page पर एक से मेल खाता है। एक addon को delete करना और re-request करना एक नया user और एक नया password बनाता है, इसलिए एक old string काम नहीं करेगा।

आगे कहाँ जाएं

क्या आपको अभी भी सहायता की आवश्यकता है?

हमें ईमेल करें support@kapsulehost.com या KPanel में चैट खोलें।

KPanel खोलें