افزونهها
افزونههای مدیریتشده
از افزونههای مدیریتشده زمانی استفاده کنید که پلتفرم باید جزئیات زیرساخت را بدون درخواست مقادیر host، port یا password از مشتریان ایجاد، چرخش و اتصال دهد.
بازگشت به راهنمای پلتفرمRedis مدیریتشده
هنگامی که Redis فعال میشود، سرویس بهطور خودکار ایجاد شده و به عنوان متغیرهای محیطی و اسرار به پلتفرم متصل میشود.
- از کاربران مقادیر host، port یا password Redis خواسته نمیشود.
- فعال یا غیرفعال کردن سرویس بعداً از طریق بهروزرسانی استقرار اعمال میشود.
- پنل پیامهای وضعیت مانند "Managed Redis is running" نشان میدهد.
پایگاهداده مدیریتشده
برای پلتفرمهایی مانند WordPress، نامهای کاربری و گذرواژههای پایگاه داده توسط سیستم تولید میشوند.
- مقادیر اسرار در پاسخهای GET بازگردانده نمیشوند.
- عملیات نصب و بازنشانی فقط منبع پلتفرم مرتبط را هدف میگیرند.
- اگر اطلاعات پایگاه داده مورد نیاز باشد، میتوان از طریق یک اقدام پنل آن را بازتولید یا چرخش داد.
Object Storage
Object Storage سازگار با S3 هنگامی که Ceph RGW آماده است مدیریت bucket و کلید دسترسی را فراهم میکند.
- bucketهای مشتری تا زمانی که دروازه سلامت Ceph RGW باز نشود ایجاد نمیشوند.
- کلید دسترسی مخفی فقط یک بار در هنگام ایجاد یا چرخش نشان داده میشود.
- پس از اتصال، متغیرهای محیطی S3 هنگام استقرار مجدد برنامه اضافه میشوند.
- AWS CLI و SDKهای سازگار با S3 میتوانند از endpoint https://s3.cdn.com.tr با کلید دسترسی تولیدشده استفاده کنند.
اتصال برنامه شما به افزونهها
هنگامی که یک افزونه را فعال میکنید، پلتفرم بهطور خودکار اطلاعات اتصال آن را بهصورت متغیرهای محیطی (و رمزهای عبور بهصورت Secret در Kubernetes) به برنامه شما تزریق میکند. آنها را در کد از محیط برنامه بخوانید؛ نیازی به کپی دستی مقادیر میزبان، پورت یا رمز عبور نیست.
- پس از فعالکردن افزونه، برنامه را دوباره استقرار دهید تا متغیرها در کانتینرها بارگذاری شوند.
- رمزهای عبور هرگز در پنل یا در پاسخهای API نمایش داده نمیشوند؛ فقط نام متغیرها دیده میشود. مقدار را از محیط بخوانید یا از نشانی اتصال آماده (DATABASE_URL / REDIS_URL) استفاده کنید.
- پیشوندهای متغیر (REDIS، DB، DATABASE، NATS) برای هر افزونه از طریق env_prefix قابل سفارشیسازی هستند.
- برای استفاده از یک افزونه در برنامهای دیگر (مثلاً یک کار پشتیبانگیری): در آن برنامه یک متغیر را بهصورت ${slug-برنامه-مبدا.VAR} تنظیم کنید، مثلاً DATABASE_URL=${web.DATABASE_URL} یا DB_PASSWORD=${web.DB_PASSWORD}. این مقدار بهصورت امن درون حساب شما حل میشود و رمز عبور هرگز افشا نمیشود.
Redis: REDIS_HOST, REDIS_PORT, REDIS_DB, REDIS_URL, REDIS_PASSWORD
MySQL: DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD, DB_URL, DATABASE_URL
PostgreSQL: DATABASE_HOST, DATABASE_PORT, DATABASE_NAME, DATABASE_USER, DATABASE_PASSWORD, DATABASE_URL
NATS: NATS_HOST, NATS_PORT, NATS_URL
دسترسی خارجی
افزونههای مدیریتشده طبق طراحی فقط از داخل پلتفرم قابل دسترسی هستند.
- Redis، MySQL، PostgreSQL و NATS بهصورت سرویسهای داخلی خوشه با نامهای میزبان خصوصی ایجاد میشوند.
- تنها از طریق کانتینرهای برنامه خودتان و با متغیرهای محیطی تزریقشده قابل دسترسی هستند.
- هیچ نقطه دسترسی عمومی وجود ندارد، بنابراین نمیتوانید از بیرون (مثلاً با یک کلاینت پایگاهداده روی رایانه خود) متصل شوید.