تنظیمات و مدیریت
همهٔ بخشها و اقدامهای قابل مدیریت پنل در یک نقشه. هر مورد مستقیم به صفحه و بخش مربوط میرود و همان مسیر تأیید، نقش و سیاست را طی میکند.
تنظیمات پلتفرم
برند، اعلانها، نگهداری داده و زبان پیشفرض پلتفرم را در یک جا مدیریت کنید. هر تغییر فقط با نقش مدیر پلتفرم ذخیره و در ممیزی ثبت میشود؛ با ورود SSO ممکن است ورود دوباره هم خواسته شود.
این مقدارها هنگام نصب تعیین شدهاند و در این نسخه از پنل تغییر نمیکنند. فقط مقدار فعلی و منبع هر کدام را اینجا میبینید؛ برای تغییر، با مسئول نصب پلتفرم هماهنگ کنید.
داشبورد و وضعیت عملیاتی
پایش متمرکز سایتهای وردپرس، سلامت کلاستر، منابع مصرفی و اقدامات نیازمند توجه.
نیازمند توجه
از وضعیت واقعی سایتها، دامنهها، پشتیبانها، ظرفیت و پلن فعال ساخته میشود؛ پیشنهاد ساختگی نمایش داده نمیشود.
آمادگی سرویسهای کلاستر
مسیرهای اصلی و سرویسهای زیرساخت که برای ارائه میزبانی پایدار باید آماده باشند.
آخرین عملیات
پیشرفت واقعی تغییرات و درخواستهای زیرساختی
سایتها
سایت را با نام یا دامنه پیدا کنید، سلامت آن را ببینید و کارهای روزمره را از همانجا انجام دهید.
سایتهای حذفشده / آرشیوشده سابقه تغییرات
سایتهای حذفشده در ظرفیت فعال حساب نمیشوند؛ این بخش فقط سابقه قابلپیگیری آنها را نگه میدارد.
دامنه و گواهی SSL/TLS
مدیریت DNS نزد ارائهدهنده شما میماند؛ پنل رکورد لازم را نشان میدهد، صحت آن را بررسی میکند و سپس HTTPS و حفاظت ورودی را فعال میکند.
حفاظت ورودی همهٔ سایتها دامنه را در جدول بالا ویرایش کنید؛ این بخش فقط دیوار آتش و محدودیت درخواست است.
حفاظت ورودی (دیوار آتش و محدودیت درخواست)
سیاست فعال هر سایت را ببینید؛ تغییر جدید ابتدا آماده میشود و فقط پس از تأیید شما اعمال خواهد شد.
رویدادهای حفاظت ورودی
فقط رخدادهای واقعی مرتبط با دامنه و سایت نمایش داده میشوند؛ بدون رویداد یا عدد ساختگی.
پشتیبانگیری، بازیابی و انتقال
نسخه پشتیبان معتبر بسازید، سایت را بازیابی کنید، محیط آزمایشی بسازید، نسخه PHP را با مسیر بازگشت تغییر دهید یا یک سایت وردپرس موجود را منتقل کنید.
پشتیبان و زمانبندی هر سایت
پشتیبانگیری فقط وقتی پایگاهداده و فضای پشتیبان همان سایت آماده باشند پذیرفته میشود.
انتقال WordPress
بسته انتقال از قبل در فضای داخلی آماده متعلق به مقصد قرار میگیرد؛ بررسی checksum و جایگزینی URL در عامل بازیابی انجام میشود.
بازیابی بحران در ناحیه دوم
آخرین نسخه پشتیبان تأییدشده را در ناحیه مقصد آماده نگه دارید و فقط پس از بررسی سلامت مقصد، جابهجایی ترافیک را بهصورت دستی نهایی کنید.
نسخههای پشتیبان
هر نسخه یک نقطهٔ بازگشت است. بازیابی، دادههای فعلی سایت را با دادههای همان نسخه جایگزین میکند.
محیطهای آزمایشی
محیطهای آزمایشی متصل به محیط اصلی؛ انتقال به محیط اصلی فقط با پشتیبان تازه از محیط آزمایشی و نقطه بازگشت تازه از محیط اصلی پذیرفته میشود.
بازیابی، کپی، محیط آزمایشی و انتقال به اصلی
وضعیت مشاهدهشده واقعی است؛ محیط اصلی پس از انتقال تا بررسی نتیجه و نهاییسازی صریح متوقف میماند.
کارایی و ظرفیت
وضعیت بار، ظرفیت و مقیاسدهی خودکار همان سایت را با داده واقعی ببینید؛ وقتی داده کافی نیست، پنل صریحاً «بدون داده» نشان میدهد.
جزئیات فنی ظرفیت و سابقهٔ تصمیمها فقط برای مشاهده؛ تغییر ظرفیت هر سایت با دکمهٔ «تنظیم ظرفیت» در جدول بالا انجام میشود.
سیاست ظرفیت
محدوده پذیرفتهشده N-1 و تصمیمهای ظرفیت همان سایت.
سابقه تصمیمهای ظرفیت
آخرین تصمیمهای واقعی مرجع اصلی محصول برای تعداد نمونههای اجرا.
دسترسی و محتوای مدیریتشده
دسترسی کوتاهمدت و محدود به همان سایت صادر کنید؛ بدون دسترسی SSH به سرورهای پلتفرم و بدون نگهداری اعتبارنامه دائمی در پنل.
محتوای مدیریتشده
فقط بسته محلی با امضای ثابت.
کمپینهای بهروزرسانی امن
کمپینها و زمانبندیها از API محصول با محدودسازی پروژه و صفحهبندی واقعی خوانده میشوند؛ مقصدها فقط هنگام نیاز دریافت میشوند.
زمانبندیهای مجاز
گزینه انتخاب فقط وقتی فعال میشود که API همان زمانبندی را برای تغییر کمپین مجاز بداند.
هدفهای کمپین
مجموعه داده مستقل است؛ بدون N+1 و بدون بارگذاری نامحدود جزئیات کمپین.
کاربران و دسترسیها
سازمان، پروژه، هویت کاربران و نقشهای دسترسی را از یک مرجع واحد مدیریت کنید. جزئیات فنی ثبت رویداد در نمای پیشرفته باقی میماند.
کاربران و ورود
برای هر نفر یک حساب با نام کاربری و رمز عبور بسازید و او را به سازمان و پروژه وصل کنید. رمز موقت فقط یک بار نمایش داده میشود و کاربر در اولین ورود آن را عوض میکند.
عضویتها و نقشهای پروژه
عضویتها را از خود پنل مشاهده، اضافه، تغییر نقش یا لغو کنید. رابط کاربری بر اساس مجوز واقعی، اقدامهای غیرمجاز را پنهان یا غیرفعال میکند.
دسترسی شخصی، دعوتها و نشستها
توکنهای API، دعوت اعضای جدید و نشستهای فعال را از همینجا مدیریت کنید. مقدار محرمانه توکن و دعوت فقط یک بار نمایش داده میشود.
سازمانها و پروژهها
ایجاد سایت فقط برای سازمان و پروژه فعال و موجود پذیرفته میشود.
هویتها و مدیران پلتفرم
پیش از انتقال کامل به OIDC، صادرکننده و شناسه اولین مدیر باید در مرجع اصلی ثبت شود تا API محصول پس از مهاجرت قفل نشود.
صف رویدادهای پایدار
تغییرها با رویداد پایدار، اجاره اجرا و توکن فنسینگ انجام میشوند و پس از راهاندازی مجدد قابل ادامهاند.
ممیزی
رویدادهای تغییرناپذیر مرجع اصلی محصول؛ بدون داده ساختگی.
مدیریت نودها، سرورها و کلاستر
مدیریت متمرکز سرورهای کلاستر، افزودن نودهای جدید، ثبت کلیدهای SSH، و پایش سختافزار همگرا (Quorum N ≥ 3).
در پنل HA، افزودن سرور، آمادهسازی و ساخت کلاستر فقط از کنسول نصب روی سرور راهانداز انجام میشود. توقف جایگذاری، تخلیه، نگهداری، راهاندازی مجدد و حذف سرور از همین پنل بهصورت درخواست ثبت میشود و نصاب آن را اجرا میکند.
نقشه توپولوژی کلاستر و پایش منابع
توزیع نقشهای همگرا (کووروم کنترلپلین · گروه حجم داده · محاسبه گره کاری) با تضمین حد نصاب 3 نود به بالا (N ≥ 3).
فهرست سرورهای فیزیکی و نودهای کلاستر
مشخصات سختافزاری، آدرس شبکه، کلیدهای دسترسی، پیشبررسی و عملیات مستقیم روی هر سرور.
راهاندازی کلاستر پایه
وضعیت بسته داخلی، کلاستر و آخرین اجرا بدون ادعای ساختگی.
زیرساخت پایه بارکاری
شبکه Pod، VIP پایدار API، محدوده آدرس سرویس و حجم داده محلی پیش از نصب دیتابیسها.
سیاست جایگذاری ناحیهای
WordPress، MySQL و کش پروژه میتوانند به ناحیه متصل شوند؛ ذخیرهسازی شیء در سطح پلتفرم مشترک است.
قالب سایت و مقصد پشتیبان
قالبهای آمادهٔ افزونه، پوسته و تنظیمات فارسی را تعریف کنید، مقصد بیرونی پشتیبان را ثبت کنید و پشتیبان را دریافت یا بخشی از آن را بازیابی کنید.
| شناسه | نام | افزونهها | پوسته | زبان / منطقهٔ زمانی / پیوند یکتا | پیشفرض |
|---|
| شناسه | نام | نوع | مقصد | پروژه | اثرانگشت اعتبارنامه |
|---|
| پشتیبان | سایت | وضعیت | مقصد بیرونی |
|---|
سرویسهای پلتفرم
سرویسهای مشترک پلتفرم را از این صفحه نصب کنید و وضعیت هر کدام را ببینید: دیتابیس، کش، ذخیرهسازی، ورودی امن، اجرای وردپرس، پایش، ظرفیت، پشتیبانگیری، دسترسی و امنیت.
در پنل HA، نصب سرویسها فقط از کنسول نصب روی سرور راهانداز انجام میشود و وضعیت نصب هم فقط همانجا خوانده میشود.
نمای کلی
سرویسها به ترتیب نصب فهرست شدهاند. هر سرویس به سرویسهای بالاتر از خودش وابسته است. وضعیت هر ردیف همان چیزی است که API گزارش میکند.
راهاندازی ذخیرهسازی شیء و اشتراکی
پایگاهداده فراداده سهنمونهای، ذخیرهسازی شیء، درگاه S3، فضای اشتراکی RWX و رجیستری پایدار.
راهاندازی MySQL HA
PXC سهعضوی، نقطه اتصال پراکسی پایدار، گروه مشترک یا اختصاصی، سیاست پشتیبانگیری/PITR و کنترلگر پایگاهداده.
راهاندازی Valkey HA
کش پروژه و جریانهای سیستمی دو گروه مستقل هستند؛ با پایداری داده و دسترسی بالا.
راهاندازی ورودی امن
درگاه API + Envoy درگاه + cert-manager + Coraza؛ Public IP رزروشده توسط MetalLB بهعنوان DNS مقصد اعلام میشود.
اجرای HA وردپرس · چرخه عمر سایت
کنترلگر واقعی سایت، اجرای چندنمونهای، RWX برای wp-content، وابستگی به MySQL/Valkey، PDB و توقف/ادامه.
سرویس پایش و مشاهدهپذیری
متریکها و لاگهای واقعی با VictoriaMetrics، Loki و Alloy جمع میشوند و Grafana برای اپراتور است.
سرویس مقیاسدهی و ظرفیت
KEDA فقط اجراکننده است؛ مرجع ظرفیت، پذیرش N-1 و سیاستهای سایت در PostgreSQL باقی میمانند.
سامانه پشتیبانگیری، بازیابی و PITR
پشتیبانگیری و بازیابی عادی به همان پروژه محدود است؛ PITR در PXC موقت و ایزوله بازسازی میشود.
دسترسی محدود و سامانه محتوای مدیریتشده
کنترلگر دسترسی، SFTP غیرریشه، عامل WP-CLI، افزونه ورود یکبارمصرف مدیر و عامل محتوای مدیریتشده.
سرویس سیاستهای امنیتی
Kubernetes Pod امنیت Admission، ValidatingAdmissionPolicy/CEL و پذیرش image digest.
نسخه، ارتقا و اعتبار بسته
پیش از ارتقای محیط اصلی، اعتبار بسته و پیشنیازها را بررسی کنید و مطمئن شوید مسیر بازیابی در دسترس است.
در پنل HA، گواهیها و وارد کردن نسخهها فقط از کنسول نصب روی سرور راهانداز مدیریت میشوند. بررسی آمادگی، ارتقا و بازگشت نسخه محصول از همین پنل بهصورت درخواست ثبت میشود و نصاب آن را اجرا میکند.
گواهیها
کلید خصوصی هر گواهی فقط در مخزن رمزگذاریشده اطلاعات محرمانه نگهداری میشود و از API بازخوانی نمیشود.
مرجع نسخههای آفلاین
بستههای انتشار با SHA256، امضای داخلی و مجموعه اعتماد مبدأ نسخهبندی میشوند. کلید در حال بازنشستگی فقط بستههای قبلی را بررسی میکند و کلید لغوشده فوراً بهصورت در صورت ابهام متوقف رد میشود.
ارتقا / بازگشت نسخه محصول
برای خود 4SO: API، کنترلگرها، پنل، schema و سامانه اجرای محصول. از RKE2 Foundation مستقل است.
ارتقای زیرساخت پایه RKE2
پیشبررسی → ثبت نقطه بازیابی همه سرورها → snapshot از etcd → ارتقای سه سرور یکییکی → گره کاریها → بررسی سلامت. بازگشت عادی ندارد؛ بازیابی صریح و ممیزیشده است.
تأیید آمادگی محیط اصلی
مقصدهای Lab فیزیکی ابتدا در یک برنامه اجرای تغییرناپذیر ذخیره میشوند؛ هر اجرا پذیرش و تأیید تازه میخواهد. توقف امن فقط در مرز کمپین عمل میکند و شواهد نهایی بهصورت بسته امضاشده قابل خروج است. نقطه بازیابی نیز اجرای نامطمئن را بدون حذف شواهد قبلی قابل ادامه میکند.
پلن و مصرف
پلن فعال هر پروژه، میزان مصرف و پیشنهادهای فروش را از داده واقعی محصول ببینید. پیشنمایش هزینه فقط برآورد است و بدون داده واقعی عدد ساختگی نشان نمیدهد.
دسترسی و امکانات پروژهها
وضعیت فعال اجازه استفاده از امکانات و ایجاد منابع جدید را میدهد. تغییر وضعیت مالی یا تعلیق حساب، سایتهای موجود را بدون تصمیم صریح خاموش نمیکند.
مصرف و برآورد هزینه
یک پروژه را انتخاب کنید تا میزان مصرف، محدودیتهای پلن، امکانات فعال و وضعیت SLA را ببینید. اطلاعات انتقال داده فقط زمانی کامل نمایش داده میشود که داده اندازهگیری واقعی در دسترس باشد.
صورتحسابها
صورتحسابها از مصرف ثبتشده و قیمت پلن ساخته میشوند و برای ماههای پایانیافته صادر میشوند. پرداخت آنلاین در این پنل وجود ندارد؛ صورتحساب فقط یک گزارش رسمی است.
ابزار فروش و نمایندگی
پلن مشخص میکند هر سرویس چه منابع و امکاناتی دارد. پیشنهاد فروش نیز قیمت و نحوه ارائه آن را تعیین میکند. مدیر سرویس میتواند نماینده فروش و مشتری جدید را از همین بخش اضافه کند.
پلنهای تجاری
منابع پایه هر پلن از تنظیمات محصول ساخته میشود؛ قیمت، محدودیتها و امکاناتی که مدیر تعیین کرده است با ارتقای نسخه بهصورت ناخواسته بازنویسی نمیشوند.
عملیات
هر تغییر را از لحظه ثبت تا نتیجه نهایی و شواهد اجرا در یک خط زمانی قابلپیگیری دنبال کنید.
هشدارهای مرکزی
هشدارهای فعال سامانهٔ پایش را ببینید، آنها را تأیید کنید یا برای مدتی مشخص بیصدا کنید.
| شدت | عنوان | منبع | از زمان | وضعیت | اقدام |
|---|
| شدت | هشدار | منبع | شروع | آخرین وضعیت | زمان تغییر |
|---|
| دامنهٔ اثر | دلیل | بازهٔ زمانی | ثبتکننده | وضعیت | اقدام |
|---|
صف اجرا
کارهای در حال اجرا و منتظر، ظرفیت اجرای همزمان و پیشرفت هر کار را ببینید.
ظرفیت اجرای ورکرها
ظرفیت اجرای همزمان و قفل اجرا که از اجرای همزمان دو تغییر روی یک سایت جلوگیری میکند.
| ظرفیت پیکربندیشده | — | از استخر زنده کلاستر |
| عملیات در حال اجرا | — | شمارششده از جدول عملیات فعال |
| عملیات در صف | — | با اولویتبندی P0 تا P3 |
| مکانیسم فنسینگ (قفل زمانی) | قفل پایدار | هر منبع در هر لحظه فقط یک اجرای فعال دارد. |
تفکیک عملیات بر اساس وضعیت
آمار لحظهای عملیات فعال، تکمیلشده و ناموفق در کلاستر با دسترسپذیری بالا (HA).
عملیات در جریان و صف پردازش
عملیات در حال اجرا با درصد پیشرفت مرحلهای، مدتزمان سپریشده و اولویت اجرا.
آمادگی نصب، زیرساخت و اعتبارسنجی نودها
بررسی وضعیت سلامت وابستگیهای سیستم، اعتبارسنجی مشخصات سختافزاری کلاستر (حداقل 3 نود HA)، و مرز تفکیک نصب اولیه (مرز نصب تازه).
وابستگیهای لایه کنترل و ذخیرهسازی
سرویسهای هستهای که پایداری کلاستر وردپرس به آنها وابسته است.
مرز اجرای نصبکننده
اسکریپت RUN_THIS_FIRST.sh منحصراً از شل سیستم ادمین روی سرور اصلی اجرا میشود و پنل نصبشده هرگز تظاهر به اجرای مجدد نصب خام نمیکند.
./RUN_THIS_FIRST.sh --collect-all-validation-errors --confirm-fresh-install
ماتریس پذیرش سختافزار و سلامت نودهای کلاستر
نتایج ارزیابی مشخصات CPU، حافظه RAM، دیسکهای سیستم و دیسک داده، شبکه و وضعیت کلاستر هر سرور.
بستهٔ تشخیصی برای پشتیبانی
استخراج یکپارچه متادیتای سیستم، گرههای کلاستر، بار کاری، صف اجرا و رویدادهای لبه با فیلتر و سانسور خودکار 100٪ اطلاعات حساس، پسوردها و کلیدهای خصوصی.
مرکز اتوپایلوت و خودترمیمی کلاستر
وضعیت کنترلگرهای پلتفرم و آخرین عملیات ثبتشده را ببینید. پنل خودش ترمیم خودکار اجرا نمیکند و هر تغییر از مسیر عملیات پایدار و تأیید سیاست میگذرد.
هر کنترلگر تغییرات را از مسیر عملیات پایدار، قفل منابع و تأیید سیاست اجرا میکند. وضعیت زیر مستقیماً از Control API خوانده میشود؛ اگر دادهای نباشد «نامشخص» نمایش داده میشود.
کنترلگرهای پلتفرم
وضعیت فعلی و آخرین اجرای ثبتشدهٔ هر کنترلگر.
سیاستهای ارجاع به اپراتور انسانی
مرزهایی که در آنها اتوپایلوت بهجای اقدام خطرناک، عملیات را متوقف میکند و اپراتور را مطلع میسازد. این جدول راهنماست و وضعیت زنده را نشان نمیدهد.
| شرایط ارجاع | واکنش اتوپایلوت | سطح اولویت |
|---|---|---|
| نتیجهٔ تغییر مخرب نامشخص است | توقف فوری تغییرات و هشدار به اپراتور | P0 |
| شکست بازیابی سهباره (اتمام تلاشهای بازیابی) | ثبت بسته شواهد و ممانعت از لوپ بیپایان | P0 |
| عدم تطابق شواهد (تعارض وضعیت اجرایی) | قفل حالت Desired تا رفع ناهمخوانی دیسک/دیتا | P1 |
| محدودیت ظرفیت نودها (Capacity Saturated) | عدم استقرار پادهای حجیم جدید و درخواست ارتقا | P2 |
دفتر کل شواهد، اقدامات و نتایج خودترمیمی
ثبت رویدادهای بازرسی خودکار، پاکسازی کش در صورت خطا، بازتوازن پادها و راستیآزمایی بکاپها.
موتور تست استرس و پایداری وردپرس
اجرای سناریوهای بار زنده، ارزیابی مقاومت صف PHP-FPM، بازدهی کش FastCGI Nginx و رتبهبندی سلامت SLA کلاستر با گزارش تحلیلی بلادرنگ.
تستها به طور مستقیم از موتور داخلی با ارسال درخواستهای چندریسمانی همزمان اجرا شده و هدرهای پاسخ (X-4so-Cache / X-Cache)، تأخیرهای صدکی (p50..p99) و نرخ کنترل بار Envoy را تحلیل میکنند.
تنظیمات و سناریوی آزمون بار
سناریوی مورد نظر را انتخاب کنید یا پارامترهای اختصاصی را مطابق نیاز خود وارد کنید.
10 کاربر همزمان برای 15 ثانیه جهت سنجش کارایی معمول، زمان پاسخ و سلامت پایه سرویس.
40 کاربر همزمان برای 25 ثانیه جهت راستیآزمایی ظرفیت صف PHP-FPM و اتواسکیلینگ KEDA.
50 کاربر همزمان برای 20 ثانیه با تمرکز بر ارزیابی نرخ برخورد کش Nginx و جداسازی دیتابیس.
80 کاربر ناگهانی در 15 ثانیه برای سنجش رفتار محدودسازی نرخ درخواست در Envoy و دفع سیلاب ترافیک.
موتور آزمون حداکثر 200 کاربر همزمان واقعی اجرا میکند. این سناریو همین سقف را 30 ثانیه نگه میدارد.
تعیین دستی کاربران همزمان، مدت زمان، مسیر هدف و وضعیت کش.
گزارش تحلیلی و رتبهبندی عملکرد
خلاصه نتایج آزمون بار، تأخیرهای صدکی، پاسخدهی کش و توصیههای پایداری معماری.
توزیع زمانی و صدکهای تأخیر (Latencies)
کدهای وضعیت HTTP و لایه کش Nginx
توصیهها و بینشهای عملیاتی پلتفرم
تاریخچه آزمونهای استرس ثبتشده
سوابق آزمونهای بار گذشته به همراه جزئیات کامل و امکان بازبینی گزارش.
معماری مستقل محصول
این صفحه فقط برای شناخت اجزای فنی و مرز مسئولیت آنهاست. کارهای روزمره را از صفحات سایت، بازیابی، عملکرد و عملیات انجام دهید.
نصب و ارتقا
بررسی پیشنیازها، آمادهسازی سرور، دیسک و شبکه، نصب اولیه و ارتقا.
کلاستر و سرورها
مدیریت سرورهای کنترل و اجرا، شبکه، فضای ذخیرهسازی و چرخه عمر نودها.
داده و وضعیت اصلی محصول
سازمان، پروژه، سایت، پلن، عملیات، وضعیت ثبتشده و سابقه تغییرات.
ورودی امن
دسترسی ورودی، گواهی TLS، محافظت وب، محدودیت درخواست و سیاستهای API.
اجرای وردپرس
نسخههای وب، PHP، کارهای زمانبندیشده، پردازش پسزمینه، مقیاسدهی و بررسی سلامت.
داده و ذخیرهسازی
MySQL، کش، صف کارها، فضای ذخیرهسازی فایل و پشتیبانگیری.
حساب من و امنیت
ورود دومرحلهای حساب خودتان را روشن یا خاموش کنید.
ورود دومرحلهای
راهنمای کامل کار با پنل
هر صفحهٔ پنل چه کاری انجام میدهد، کارهای رایج را چطور انجام دهید و وقتی چیزی درست کار نمیکند از کجا شروع کنید. هر بخش در یک زبانه است.
شروع کار
محصول چیست، پنل چطور چیده شده و چه قواعدی همهجا برقرار است.
این محصول چیست
4SO یک پلتفرم میزبانی وردپرس روی کلاستر چندسروری است. هر سایت در فضای جداگانهٔ خودش اجرا میشود و پایگاهداده، کش، فضای فایل، پشتیبانگیری، گواهی امنیتی و پایش را از سرویسهای مشترک و پرتحمل کلاستر میگیرد. هر کاری که لازم است از همین پنل انجام میشود و هر تغییر از مسیر API محصول، بررسی نقش و ثبت در ممیزی میگذرد.
چیدمان منو
- وبسایتها: خانه، سایتها، دامنه و SSL، پشتیبان و بازیابی، افزونه و دسترسی، عملیات و کارایی. کار روزانهٔ مشتری همینجاست.
- صفحهٔ عملیات: زبانههای عملیات، هشدارها، صف اجرا و اتوپایلوت. سه زبانهٔ آخر فقط برای اپراتور نمایش داده میشود.
- زیرساخت (فقط اپراتور): کلاستر و نودها (با زبانهٔ آمادگی نصب)، سرویسهای پلتفرم، تست بار، نسخه و ارتقا.
- سازمان و تنظیمات: کاربران و دسترسیها، پلن و مصرف، تنظیمات.
- راهنما: همین راهنما. مستندات API و معماری فنی فقط برای اپراتور نمایش داده میشوند.
صفحههای طولانی به زبانه تقسیم شدهاند و زبانهٔ آخری که باز کردهاید به خاطر سپرده میشود. صفحهٔ هر سایت نشانی مستقیم دارد و میتوانید آن را برای همکارتان بفرستید.
قواعدی که همهجا برقرار است
- فقط دادهٔ واقعی: هر عدد و وضعیتی که میبینید از سرویس واقعی خوانده شده است. وقتی مقداری در دسترس نیست، بهجای حدس زدن «—» نمایش داده میشود.
- نشان تازگی داده: اگر آخرین بارگذاری قدیمی باشد یا نرسیده باشد، پنل این را کنار عنوان صفحه میگوید. دکمهٔ «بهروزرسانی» دادهٔ تازه میخواند.
- تأیید با تایپ نام: کارهای برگشتناپذیر مثل حذف سایت، بازیابی به یک لحظهٔ مشخص یا حذف عضو، تا نام دقیق آن مورد را تایپ نکنید انجام نمیشوند.
- ورود دوباره برای کارهای حساس: برای کارهایی مثل تغییر پلن، صدور صورتحساب، چرخش کلیدها یا ارتقای نسخه ممکن است از شما خواسته شود دوباره وارد شوید یا کد ورود دومرحلهای را بزنید.
- نتیجه کنار همان کار: پیشرفت پشتیبانگیری، بازیابی و کارهای طولانی کنار همان دکمه و در صفحهٔ «عملیات» دیده میشود.
نقشها
- مالک سازمان: همهٔ پروژهها و سایتهای سازمان، اعضا، پلن و صورتحسابها.
- مدیر پروژه: سایتها، دامنهها، پشتیبانها و دسترسیهای یک پروژه.
- اپراتور: کارهای روزانهٔ سایت مثل پشتیبانگیری، بازیابی و دسترسی موقت، بدون مدیریت اعضا و پلن.
- مدیر مالی: پلن، مصرف و صورتحسابها.
- بیننده: فقط خواندن.
- مدیر پلتفرم: نقش تیم میزبان؛ زیرساخت، سرویسها، ارتقا و همهٔ سازمانها را میبیند. منوی «زیرساخت» فقط برای این نقش نمایش داده میشود.
دکمهای که با نقش شما مجاز نیست غیرفعال است و با نگهداشتن نشانگر روی آن دلیلش را میبینید.
ورود و حساب کاربری
- ورود با نام کاربری و گذرواژه یا با ورود یکپارچهٔ سازمان انجام میشود. در اولین ورود، تغییر گذرواژه و فعالکردن ورود دومرحلهای الزامی است.
- اگر گذرواژه را فراموش کردید، در صفحهٔ ورود «فراموشی گذرواژه» را بزنید. پاسخ برای همهٔ نشانیها یکسان است و اگر حساب وجود داشته باشد پیوند تنظیم گذرواژه به ایمیل شما فرستاده میشود.
- عضوی که دعوت میشود پیوند یکبارمصرف تنظیم گذرواژه میگیرد که 72 ساعت اعتبار دارد.
سایتها و دامنهها
ساخت سایت، صفحهٔ هر سایت، اتصال دامنه و گواهی امنیتی.
ساخت سایت
- به «سایتها» بروید و «ایجاد سایت» را بزنید.
- پروژه، نام سایت و نسخهٔ PHP را انتخاب کنید. محدودیتهای پلن پروژه همانجا نشان داده میشود.
- بعد از ثبت، سایت در فهرست با وضعیت «در حال ساخت» دیده میشود. پایگاهداده، کش و فضای فایل بهصورت خودکار برایش آماده میشود.
- وقتی وضعیت «فعال» شد، از صفحهٔ سایت با «ورود به پیشخوان وردپرس» مستقیم وارد پیشخوان شوید.
اگر ساخت سایت شکست بخورد، علت به زبان ساده در صفحهٔ سایت نوشته میشود و پیشنهاد اقدام بعدی کنار آن است.
صفحهٔ هر سایت
- نمای کلی: وضعیت، نشانی، نسخهٔ PHP، آخرین پشتیبان و آخرین عملیات.
- دامنهها: دامنههای متصل و وضعیت گواهی هر کدام.
- پشتیبانها: فهرست نسخههای پشتیبان، ساخت پشتیبان و بازیابی.
- پایگاهداده: وضعیت پایگاهداده و کش سایت.
- افزونهها: افزونهها و پوستههای نصبشده.
- دسترسی: دسترسی موقت SFTP، دستور وردپرس، ورود موقت مدیریت و مدیریت فایل.
- تنظیمات: نسخهٔ PHP، مقیاس، روشن و خاموش کردن و حذف سایت.
«عملیات گروهی» در فهرست سایتها یک کار را روی چند سایت با هم اجرا میکند؛ مثلاً پشتیبانگیری یا تغییر نسخهٔ PHP.
اتصال دامنه
- در «دامنه و SSL» یا زبانهٔ دامنههای سایت، «اتصال دامنه» را بزنید و نام دامنه را وارد کنید.
- پنل رکوردی را که باید در DNS بسازید نشان میدهد. مقصد رکورد از نشانی واقعی ورودی کلاستر پر میشود. با دکمهٔ کپی آن را بردارید و در سامانهٔ DNS دامنه ثبت کنید.
- بعد از ثبت رکورد، وضعیت دامنه را در همین صفحه دنبال کنید.
- وقتی رکورد درست دیده شد، گواهی امنیتی بهصورت خودکار صادر و پیش از انقضا تمدید میشود.
فضای فایل، پایگاهداده و کش
زبانههای پایین صفحهٔ «سایتها» منابع مشترک را نشان میدهند: فضای ذخیرهسازی فایل سایتها، پایگاهدادهها، کش و سیاست امنیتی. اگر برای سایتی یکی از این منابع ساخته نشده باشد، با «ایجاد فضای ذخیرهسازی»، «اختصاص پایگاهداده» یا «فعالسازی کش» آن را بسازید.
پشتیبان و بازیابی
پشتیبانگیری، بازیابی کامل، بازیابی به یک لحظهٔ مشخص، محیط آزمایشی و انتقال.
پشتیبانگیری
- پشتیبانگیری خودکار طبق «برنامهٔ پشتیبانگیری» انجام میشود. زمان اجرا و مدت نگهداری را در همان زبانه تنظیم کنید.
- برای پشتیبان دستی، در زبانهٔ پشتیبانهای سایت «پشتیبانگیری» را بزنید. پیشرفت کنار همان دکمه دیده میشود.
- اگر مقصد پشتیبانها در دسترس نباشد، صفحه این را صریح میگوید و پشتیبان جدید ساخته نمیشود.
بازیابی
- در زبانهٔ پشتیبانهای سایت، نسخهٔ مورد نظر را انتخاب و «بازیابی» را بزنید.
- برای بازیابی به یک لحظهٔ دقیق، «PITR پیشرفته» را بزنید و تاریخ و ساعت را انتخاب کنید.
- نام سایت را برای تأیید تایپ کنید. بازیابی محتوای فعلی سایت را جایگزین میکند.
بازیابی به یک لحظه فقط وقتی پذیرفته میشود که پایگاهدادههای کلاستر اکثریت سالم داشته باشند؛ در غیر این صورت دلیل رد شدن نوشته میشود.
محیط آزمایشی و انتقال
- ایجاد محیط آزمایشی: یک کپی از سایت میسازد تا تغییرات را بدون خطر امتحان کنید.
- انتقال محیط آزمایشی به اصلی: بعد از آزمایش، تغییرات را روی سایت اصلی میبرد.
- انتقال سایت موجود: یک سایت وردپرس بیرونی را به پلتفرم منتقل میکند.
- ساخت برنامهٔ بازیابی بحران: برای نگهداشتن نسخه در ناحیهٔ دوم و آمادگی برای خرابی کامل یک ناحیه.
افزونه، پوسته و دسترسی
دسترسیهای موقت به سایت، مدیریت فایل و بهروزرسانی امن افزونهها.
دسترسیهای موقت
همهٔ دسترسیها موقتاند، با تاریخ انقضا ساخته میشوند و هر وقت بخواهید لغوشان میکنید. ساخت و لغو هر دسترسی در ممیزی ثبت میشود.
- دسترسی فایل (SFTP): نام کاربری و گذرواژهٔ موقت برای برنامههای انتقال فایل.
- دستور وردپرس (WP-CLI): اجرای یک دستور مشخص روی سایت و دیدن خروجی آن.
- ورود موقت مدیریت: یک پیوند یکبارمصرف برای ورود به پیشخوان وردپرس، بدون دانستن گذرواژه.
مدیریت فایل
- در زبانهٔ دسترسی سایت «مدیریت فایل» را بزنید.
- پوشههای محتوای سایت را مرور کنید. میتوانید فایل بارگذاری کنید (تا 256 مگابایت برای هر فایل)، دانلود کنید، نام عوض کنید، پوشه بسازید یا حذف کنید.
- حذف با تایپ نام مورد تأیید میشود.
- هر نشست یک ساعت اعتبار دارد و از همان پنجره میتوانید زودتر تمامش کنید.
مدیریت فایل فقط به پوشهٔ محتوای همان سایت دسترسی دارد و در پلنهایی فعال است که دسترسی SFTP دارند.
افزونه، پوسته و کمپین بهروزرسانی
- با «افزونه / پوسته» یک افزونه یا پوستهٔ تأییدشده را به سایت اضافه کنید.
- «ساخت کمپین» بهروزرسانی را مرحلهبهمرحله روی گروهی از سایتها اجرا میکند. هر سایت پیش و پس از بهروزرسانی بررسی میشود و اگر مشکلی دیده شود، کمپین متوقف و آن سایت به حالت قبل برگردانده میشود.
- کمپین در حال اجرا را میتوانید لغو کنید.
عملیات و هشدارها
پیگیری کارهای در جریان، پاسخ به هشدارها و صف اجرا.
عملیات
هر کاری که در پنل شروع میکنید یک عملیات است. این صفحه همه را با وضعیت، شروعکننده و زمان نشان میدهد. با کلیک روی هر ردیف مراحل، خطا و پیشنهاد اقدام بعدی را میبینید. نوع هر عملیات با برچسب فارسی نوشته میشود.
هشدارها (اپراتور)
- زبانهٔ «هشدارهای فعال» هشدارهای سامانهٔ پایش را به ترتیب شدت نشان میدهد. کنار هر هشدار، قدم بعدی پیشنهادی و پیوند صفحهٔ مرتبط آمده است.
- هشدار را میتوانید تأیید کنید یا در زبانهٔ «بیصداسازیها» برای مدتی مشخص بیصدا کنید.
- نشان بالای پنل اگر هشدار بحرانی فعال باشد قرمز میشود و با کلیک روی آن به همین صفحه میآیید.
صف اجرا (اپراتور)
کارهایی که کنترلگرهای کلاستر در صف دارند، در حال اجرا هستند یا گیر کردهاند. «پاکسازی عملیات معلق» کارهایی را که مدت زیادی بیپاسخ ماندهاند آزاد میکند و پیش از اجرا تأیید با تایپ میخواهد. «خط زمانی تمام عملیات» تاریخچهٔ کامل را نشان میدهد.
کارایی و ظرفیت
مصرف پردازنده، حافظه و درخواستهای هر سایت و کل کلاستر. با «تنظیم مقیاسدهی» حداقل و حداکثر نمونههای اجرای سایت و آستانهٔ افزایش را مشخص کنید.
زیرساخت و سرویسها
ویژهٔ مدیر پلتفرم: نودها، سرویسهای مشترک، اتوپایلوت، نسخه و ارتقا.
کلاستر و نودها
- نقشهٔ کلاستر، فهرست سرورها، نقش هر نود و نسخهٔ واقعی اجرا روی آن.
- افزودن سرور جدید: ابتدا با «ثبت کلید SSH» کلید دسترسی و اثر انگشت سرور را ثبت کنید، بعد سرور را با نقش مورد نظر اضافه کنید. پیش از نصب، سختافزار و شبکهٔ سرور بررسی میشود.
- تغییر نقش، خارج کردن نود کاری و بازیابی نود کنترلی ازکارافتاده هر کدام یک اجرای قابل پیگیری میسازند. اجرای شکستخورده را میتوانید از همان مرحله ادامه دهید.
- زبانهٔ «آمادگی» نتیجهٔ بررسی سختافزار و سلامت نودها را نشان میدهد و «دانلود بستهٔ تشخیصی» خروجی لازم برای تیم پشتیبانی را میسازد.
سرویسهای پلتفرم
سرویسها به ترتیب نصب فهرست شدهاند و هر کدام به سرویسهای بالاتر وابسته است: سرویس مرجع کنترل، ذخیرهسازی، MySQL پرتحمل، Valkey پرتحمل، ورودی امن، اجرای وردپرس، پایش، ظرفیت، بازیابی، دسترسی و امنیت. هر سرویس وضعیت واقعی خودش و دکمهٔ نصب یا بازسازی دارد.
- سلامت پایگاهداده فقط وقتی «سالم» است که دستکم 3 عضو و اکثریت در دسترس باشند.
اتوپایلوت و خودترمیمی
کنترلگرها خرابیهای شناختهشده را خودشان رفع میکنند. این صفحه کنترلگرها، سیاست ارجاع به اپراتور انسانی و دفتر شواهد را نشان میدهد. در دفتر شواهد فقط کارهایی که واقعاً سامانه انجام داده است ثبت میشود.
نسخه، ارتقا و گواهی
- گواهیها و چرخش مرجع صدور، چرخش کلید اصلی اطلاعات محرمانه و کلیدهای اعتماد بستهٔ نسخه.
- «واردکردن نسخهٔ آفلاین» یک بستهٔ نسخه را بعد از بررسی امضا وارد میکند. ارتقا و بازگشت نسخهٔ محصول و ارتقای زیرساخت از همین صفحه شروع میشوند.
- پیش از ارتقا، «اجرای تمرینی» را بزنید تا بدون تغییر، اثر ارتقا را ببینید.
تست بار
یک آزمون بار کنترلشده روی سایت مشخص اجرا میکند و گزارش را با خروجی CSV، JSON یا متن میدهد. آزمون را هر لحظه میتوانید متوقف کنید.
سازمان، پلن و صورتحساب
اعضا، نقشها، توکنها، پلن، مصرف، صورتحساب و تنظیمات.
کاربران و دسترسیها
- «سازمان جدید» و «پروژه جدید» ساختار مشتری را میسازند. سازمان و پروژه را میتوانید ویرایش، تعلیق یا حذف کنید.
- «دعوت عضو جدید» برای فرد ایمیل دعوت میفرستد. «افزودن عضویت» نقش یک کاربر موجود را در سازمان یا پروژه مشخص میکند.
- حذف عضو با تایپ نام او تأیید میشود.
- زبانهٔ «توکنهای API» برای اتصال برنامهها توکن با دامنهٔ اختیار محدود و تاریخ انقضا میسازد. توکن فقط یک بار نمایش داده میشود.
- زبانهٔ «نشستهای فعال» ورودهای جاری را نشان میدهد و میتوانید هر کدام را ببندید.
پلن و مصرف
- هر پروژه یک پلن فعال دارد که سقف سایتها، فضا و امکانات (مثل SFTP) را تعیین میکند.
- مصرف واقعی هر پروژه با واحدهای خوانا و برآورد هزینه نمایش داده میشود. «جمعآوری مصرف اکنون» آخرین اندازهگیری را میخواند.
- مدیر پلتفرم میتواند پلن بسازد یا حذف کند و پلن پروژهها را تغییر دهد.
صورتحسابها
- صورتحساب از مصرف واقعی اندازهگیریشده ساخته میشود و هر سازمان شمارهٔ ترتیبی خودش را دارد.
- اگر مصرف دوره کامل نباشد، صدور صورتحساب رد میشود تا رقم ناقص صادر نشود.
- صدور و ابطال صورتحساب ورود دوباره میخواهد.
- هر صورتحساب صفحهٔ جزئیات و نسخهٔ چاپی دارد.
تنظیمات
- برند پلتفرم: نام، لوگو و نماد مرورگر.
- تنظیمات ایمیل: سرور ارسال، روش رمزنگاری و «ارسال ایمیل آزمایشی».
- نگهداری داده و زبان پیشفرض پلتفرم.
دستیار هوشمند و امنیت
دستیار عملیات، مرز اختیار آن و حفاظتهای امنیتی.
دستیار عملیات هوشمند
- دستیار از روی شواهد واقعی (وضعیت، رویدادها و گزارشها) علت مشکل را تحلیل و راه رفع پیشنهاد میکند.
- دستیار هیچ تغییری را مستقیم انجام نمیدهد. پیشنهادش به شکل یک برنامهٔ مشخص ثبت میشود و فقط بعد از تأیید یک فرد دیگر از همان مسیر API، با همان بررسی نقش، اجرا میشود.
- هیچکس نمیتواند برنامهای را که خودش ساخته تأیید کند.
- استفاده از دستیار اختیاری است و نصب و کار عادی پلتفرم به آن وابسته نیست.
حفاظتهای امنیتی
- دیوار آتش برنامهٔ وب جلوی حملههای رایج را در ورودی میگیرد. استثنای موقت برای یک سایت با تاریخ انقضا ساخته میشود و ورود دوباره میخواهد.
- هر سایت شبکه، رمزها و فضای جداگانهٔ خودش را دارد.
- همهٔ تغییرات با نام انجامدهنده، زمان و نتیجه در ممیزی ثبت میشوند.
عیبیابی و پرسشهای رایج
وقتی چیزی آنطور که انتظار دارید کار نمیکند.
جایی «—» نوشته شده است
یعنی سرویس مربوط هنوز دادهای گزارش نکرده یا در دسترس نیست. «بهروزرسانی» را بزنید. اگر باقی ماند، وضعیت همان سرویس را در «سرویسهای پلتفرم» یا هشدارها ببینید.
دکمهای غیرفعال است
نشانگر را روی دکمه نگه دارید تا دلیل را ببینید: نقش شما اجازه نمیدهد، پلن این امکان را ندارد، یا پیشنیازی آماده نیست.
سایت بالا نمیآید
- صفحهٔ سایت را باز کنید و علت نوشتهشده را بخوانید.
- آخرین عملیات سایت را در «عملیات» ببینید.
- وضعیت پایگاهداده و کش را در زبانههای سایت بررسی کنید.
- اگر تغییر اخیری دادهاید، از آخرین پشتیبان سالم بازیابی کنید.
گواهی دامنه صادر نمیشود
رکوردهای DNS را با آنچه پنل نشان داده مقایسه کنید. ممکن است انتشار تغییر DNS چند ساعت طول بکشد. بعد صفحه را بهروز کنید.
عملیاتی گیر کرده است
در «عملیات» جزئیات و مرحلهٔ آخر را ببینید. اپراتور میتواند در «صف اجرا» وضعیت کار را بررسی و در صورت لزوم آن را آزاد کند.
به کمک پشتیبانی نیاز دارم
در زبانهٔ «آمادگی» صفحهٔ کلاستر، «دانلود بستهٔ تشخیصی» را بزنید و فایل را برای پشتیبانی بفرستید. این بسته رمز و اطلاعات محرمانه ندارد.
مستندات بیشتر
جزئیات فنی، نصب و API در صفحهٔ «مستندات API» و در مخزن کد، پوشهٔ docs، آمده است.
مستندات جامع، راهنمای کاربری و ترابلشوتینگ کلاستر
راهنمای کامل معماری کلاستر HA (حداقل 3 نود به بالا)، استقرار با اتوپایلوت، کار با پنل، سناریوهای خرابی، عیبیابی و آزمونهای بار سنگین (دوزبانه فارسی و انگلیسی)
توپولوژیهای استقرار کلاستر
امکان استقرار بر روی انواع اندازهها از 3 سرور به بالا:
- توپولوژی همگرا (3 نود): هر 3 سرور نقش ترکیبی (کنترلپلین + گره کاری + داده) دارند. کووروم 3 عضوی کامل با تحمل خرابی 1 نود (N-1 Fault Tolerance) بدون نیاز به سختافزار اضافی.
- توپولوژی توسعهیافته (4 تا 6 نود): 3 سرور کووروم کنترلی + 1 تا 3 سرور اختصاصی گره کاری و داده جهت افزایش توان پردازشی و رم.
- توپولوژی بزرگ (7 نود به بالا): تفکیک کامل 3 سرور اختصاصی Control Plane از سرورهای اختصاصی گره کاری و نودهای ذخیرهسازی داده.
پایگاه داده و کش توزیعشده
دادههای تراکنشی وردپرس با بالاترین استانداردهای پایداری در سطح کلاستر همگامسازی میشوند.
- Percona XtraDB (PXC): رپلیکیشن همگام 3 نمونهای بدون از دست رفتن داده در Failover
- Valkey Sentinel HA: کش شیء 3 نمونهای با ارتقای اتوماتیک مستر ظرف 3 ثانیه
- SeaweedFS S3/RWX: ذخیرهسازی نامحدود تصاویر و فایلهای رسانه با کپیهای متعدد
درگاه ورودی و کانتینرهای وردپرس
ترافیک ورودی پالایش میشود و تعداد نسخههای در حال اجرای سایت بر اساس تعداد درخواستها خودکار تنظیم میشود.
- Envoy Gateway + Coraza WAF: فیلتر حملات SQLi/XSS و اعمال محدودسازی نرخ درخواست محلی و عمومی
- مقیاسدهی خودکار: با زیاد شدن بازدید، نسخههای بیشتری از سایت تا سقف پلن شما اجرا میشود و با کم شدن بار دوباره کم میشود
- ایزولاسیون چندمستأجره: هر سایت در فضای نام اختصاصی با شبکه ایزوله و اعتبارات مجزا
پیشنیازهای اولیه سرورها
سیستمعامل اوبونتو 22.04 یا 24.04 (Ubuntu LTS x86_64 amd64) روی تمام سرورها (حداقل 3 سرور برای کلاستر پایه همگرا، یا بیشتر برای توسعه)، فعال بودن cgroup v2، دسترسی کلید SSH روت (/root/.ssh/id_ed25519) و یک دیسک خام دوم روی نودهای داده (/dev/sdb).
تولید و اعتبارسنجی فایل پیکربندی کلاستر (install.json)
با اجرای دستور زیر فایل پیکربندی تولید میشود (با پارامتر --nodes 3 برای کلاستر 3 نودی، یا هر تعداد دلخواه مانند 5 یا 7 نود):
4so-codex-autopilot config init --nodes 3 --out /etc/4so-enterprise-wordpress/install.json
4so-codex-autopilot config validate --config /etc/4so-enterprise-wordpress/install.json
تست جامع سلامت و پذیرش سرورها (Autopilot Doctor)
بررسی امن و غیرمخرب تمام نودها از نظر اتصال SSH، اثرانگشت کلید، رم، فضای دیسک و هسته لینوکس:
/opt/4so-enterprise-wordpress/current/bin/linux-amd64/4so-codex-autopilot doctor \
--config /etc/4so-enterprise-wordpress/install.json \
--check-local-host --check-remote-hosts --require-sealed=false
اجرای نهایی کمپین نصب فیزیکی با ریکاوری خودکار
استقرار لایهبهلایه RKE2، متالالبی، استوریج، دیتابیس و پنل وب با پشتیبانی از سوئیچ هوشمند --fix:
sudo scripts/run-codex-physical-campaign.sh \
--release-artifact /srv/releases/4so-enterprise-wordpress-0.0.282.zip \
--release-artifact-sha256 c978dfbf24d404fc0f53933528b893fcbaa9f9b3404a981b71358cdf223de953 \
--config /etc/4so-enterprise-wordpress/install.json
1. ورود به پنل
ورود از طریق حساب کاربری سازمانی platform-admin یا دکمه «درج خودکار توکن راهاندازی» انجام میشود که توکن سکرت کلاستر را از فایل امن /var/lib/4so-enterprise-wordpress/bootstrap-auth.token میخواند.
2. ایجاد سایت وردپرس جدید
از منوی «سایتها» روی «ایجاد سایت» کلیک کنید. با تعیین نام یکتا، دامنه اصلی (مثلاً blog.mycompany.ir)، پلن تجاری و نسخه PHP، زیرساخت کوبرنتیز، دیتابیس PXC و باکت رسانه به طور کامل ساخته میشود.
3. مرکز کنترل سلامت سایت (6/6 سبز)
با کلیک بر روی ردیف هر سایت، داشبورد تلمتری باز میشود و وضعیت 6 بخش حیاتی را نمایش میدهد: رانتایم، وابستگیهای دیتابیس و کش، دامنه و SSL، پشتیبانگیری، اتواسکیل و پلن تجاری.
4. پشتیبانگیری و بازیابی لحظهای (PITR)
دکمه «پشتیبانگیری الآن» بلافاصله یک نسخه پشتیبان منسجم تراکنشی در باکت SeaweedFS ثبت میکند. در صورت بروز مشکل، دکمه «بازیابی به نقطه زمانی» سایت را دقیقاً به همان لحظه بازمیگرداند.
5. مقیاسدهی خودکار
از صفحه «کارایی و ظرفیت» میتوانید کمترین و بیشترین تعداد نسخهٔ در حال اجرای سایت را در محدودهٔ پلن خود تنظیم کنید. سامانه بر اساس تعداد درخواستها نسخهها را خودکار کم و زیاد میکند.
6. امنیت افزونه و قالبها (بهروزرسانی امن)
افزونهها صرفاً از فایل ZIP محلی با بررسی هش SHA-256 نصب میشوند. مکانیزم بهروزرسانی امن قبل از آپدیت اسنپشات میگیرد و در صورت بروز صفحه سفید (WSOD) خودکار رولبک میکند.
رفتار سیستم: کلاستر دارای 3 عضو رأیدهنده (Voting Members) است. با افتادن 1 نود، 2 نود دیگر اکثریت را تشکیل داده و کووروم etcd زنده میماند. پادهای وردپرس ظرف 30 ثانیه روی نودهای سالم بازنشانی میشوند.
دستور بررسی وضعیت کووروم:
curl -s -H "Authorization: Bearer $(cat /var/lib/4so-enterprise-wordpress/bootstrap-auth.token)" \
http://127.0.0.1:8080/api/v1/infrastructure/cluster/health | jq .
رفتار سیستم: در زمان قطعی شبکه بین نودهای دیتابیس، پروتکل Galera سمت اقلیت را خودکار به حالت Non-Primary میبرد تا از نوشتن دادههای متناقض جلوگیری کند. پس از وصل شبکه، نودها با IST (انتقال تدریجی وضعیت) خودکار همگام میشوند.
دستور بررسی لاگ کنترلر دیتابیس:
tail -n 100 /var/log/4so-enterprise-wordpress/database-controller.logرفتار سیستم: پروسه Valkey Sentinel ظرف 3 ثانیه رأیگیری کرده، رپلیکای سالم را به مستر ارتقا میدهد و نشانی جدید را به وردپرس اعلام میکند؛ سایت دچار وقفه نمیشود.
رفتار سیستم: موتور بهروزرسانی امن قبل از آپدیت، اسنپشات کامل تهیه میکند و با ارسال پروب بصری صفحه را بررسی میکند؛ در صورت دریافت خطای 500 یا صفحه سفید، سایت فوراً به اسنپشات قبل برمیگردد.
راهکار پاکسازی: حذف ایمیجهای بیاستفاده کانتینرها با crictl rmi --prune و جابجایی خودکار فایلهای مدیا به باکتهای SeaweedFS.
1. آزمون جامع چندسناریویی تنش و آشوب امنیتی (Heavy Resilience & Chaos Suite)
این اسکریپت 5 سناریوی همزمان شامل اشباع بار با 40 نخ همزمان، حملات SQLi/XSS، همزمانی جهشی 25 تایی با کلید ایدمپوتنت، پایداری کووروم و ممیزی 6/6 سلامت را ارزیابی میکند:
python3 scripts/heavy_resilience_chaos_suite.py http://127.0.0.1:8080
نتیجهٔ این آزمون پس از اجرای اسکریپت روی محیط خودتان چاپ میشود. این صفحه عدد ثابتی بهعنوان نتیجه نمایش نمیدهد.
2. آزمون بنچمارک اندپوینتها (Endpoint HTTP Benchmark)
ارزیابی عملکرد اندپوینتهای استاتیک، APIهای هویت، گراف وابستگیها و تلمتری با 35 نخ همزمان:
python3 scripts/benchmark_cluster.py http://127.0.0.1:8080
3. ابزار نیتیو تست بار پیوسته سازمانی (4so-highload-runner)
ابزار سازمانی ثبت شواهد رمزنگاریشده کارایی کلاستر:
/opt/4so-enterprise-wordpress/current/bin/linux-amd64/4so-highload-runner \
-url http://127.0.0.1:8080/healthz -rps 50 -concurrency 20 -duration 2m
1. مدل احراز هویت و امنیت نشستها
درخواستها با یکی از این روشها احراز هویت میشوند:
- نشست مرورگر: پس از ورود با نام کاربری و رمز، کد ورود نصبکننده یا SSO (وقتی OIDC پیکربندی شده باشد)، کوکی
4so-bootstrap-sessionصادر میشود. نشست عادی 30 دقیقه است و با «مرا به خاطر بسپار» بهطور پیشفرض 12 ساعت. - توکن API: توکن را با دکمه «ساخت توکن API» بسازید و در سربرگ زیر بفرستید؛ دسترسی آن از نقش شما بیشتر نمیشود:
Authorization: Bearer <token> - توکن OIDC: وقتی ورود با SSO فعال است، توکن دسترسی سامانه هویت هم در همان سربرگ پذیرفته میشود.
# نمونه درخواست با توکن API
curl -s -H "Accept: application/json" \
-H "Authorization: Bearer <token>" \
https://<panel-address>/api/v1/session
2. کنترل همزمانی و قفل انحصاری عملیات
برای جلوگیری از Race Condition و تداخل تغییرات همزمان در نودها و پادها:
- هر عملیات تغییری یک
operation_idاختصاصی و یک قفل زمانی دریافت میکند. - تغییراتی که پیشنیاز آنها نقض شود بلافاصله با خطای
409 Conflictمتوقف میشوند. - تمامی رویدادها از طریق الگوی Outbox Pattern در دیتابیس ثبت و توسط ورکرها پردازش میشوند.
3. اندپوینتهای کلیدی پلتفرم (فهرست API هسته)
| روش (Method) | مسیر اندپوینت (Path) | سطح دسترسی | توضیحات و عملکرد |
|---|---|---|---|
| GET | /healthz , /readyz | عمومی (Public) | پروب سلامت زیرساخت، کوئوروم دیتابیس و آمادگی کنترلپلیت |
| POST | /auth/login | عمومی (Public) | ورود با نام کاربری و رمز، کد ورود نصبکننده یا SSO (در صورت پیکربندی OIDC)؛ «مرا به خاطر بسپار» نشست را بهطور پیشفرض تا 12 ساعت نگه میدارد |
| POST | /auth/logout | احراز هویت شده | ابطال فوری نشست و پاکسازی کوکی امن |
| GET | /api/v1/session | احراز هویت شده | استعلام نشست، سازمان و پروژههای مجاز کاربر جاری |
| GET | /api/v1/sites | پروژه | دریافت لیست سایتهای فعال همراه با آمار منابع و دامنهها |
| POST | /api/v1/sites | مدیر پروژه | ایجاد سایت وردپرس جدید (تخصیص دیتابیس، کش، فضای ذخیرهسازی و ورکر) |
| GET | /api/v1/sites/{id}/pitr/timeline | مدیر پروژه | تایملاین باینریلاگها، نقاط بازیابی فیزیکی PXC و محیط ایزوله |
| GET | /api/v1/support/bundle | مدیر پلتفرم | بسته تشخیصی سیستم با سانسور 100٪ اطلاعات حساس طبق OWASP |
| GET | /api/v1/operations | کاربر (Operator) | فهرست کارهای صف اجرا، در حال پردازش و خاتمه یافته کلاستر |
| GET | /api/v1/operations/{id}/trace | کاربر (Operator) | ردپای ممیزی، وقایع Outbox و لاگ گامبهگام عملیات |
| GET | /api/v1/infrastructure/nodes | مدیر پلتفرم | مشخصات 7 نود کلاستر، بار پردازشی و وضعیت حافظه و دیسک |
| GET | /api/v1/certification/status | مدیر پلتفرم | وضعیت 16 کمپین تست Rehearsal و گواهی فیزیکی محیط Lab |
| GET | /openapi.yaml | عمومی (Public) | دریافت مشخصات کامل ماشینخوان REST API بر مبنای استاندارد OpenAPI 3.1 |
| GET | /api/v1/ai/runtime | مدیر پلتفرم | وضعیت موتور هوش مصنوعی و پروتکلهای مدل MCP |
| POST | /api/v1/ai/sites/{id}/plans | اپراتور (Operator) | تولید خودکار پلنهای بهینهسازی ظرفیت و رفع اشکال توسط AI |
1. سازمان
بالاترین سطح ساختار حاکمیتی. هر سازمان معرف یک مشتری، شرکت هلدینگ یا شرکت بزرگ است:
- دارای شناسه Slug یکتا و نام رسمی.
- تفکیک کامل صورتحساب و بودجه مصرفی.
- مالکیت مجموعهای از پروژهها و کاربران سازمانی.
- مدیریت توسط مدیر پلتفرم و مدیر سازمان.
2. پروژه
مرز عملیاتی منابع فنی و سایتها. سایتها و سرویسها همیشه متعلق به یک پروژه هستند:
- تفکیک کامل دیتابیسها و کاربران در Percona XtraDB.
- فضای نام اختصاصی کوبرنتیز و محدودیت شبکه NetworkPolicy.
- پیشوند کلید و ایزولاسیون کش Valkey بدون امکان تداخل.
- سهمیهبندی منابع (CPU/RAM Quotas) و محدودیت تعداد سایت.
3. نقشها و دسترسیها (RBAC)
مدل ماتریس دسترسی با کمترین سطح اختیارات لازم (Principle of Least Privilege):
- Platform Admin: کنترل کامل تمام سرورها، نسخهها و سازمانها.
- Project Admin: ساخت و حذف سایت، مدیریت دامنهها، بکاپها و اعضا.
- Operator: اجرای اقدامات ارتقا، جابهجایی PHP، مانیتورینگ و تست.
- Billing Manager: مشاهده و انتخاب پلنهای تجاری و گزارش مصرف.
- Viewer: مشاهده داشبورد بدون دسترسی به تغییرات اجرایی.
4. تضمین ایزولاسیون دادهها و ذخیرهسازی توزیعشده
بر خلاف پنلهای سنتی که سایتها را روی یک دایرکتوری مشترک یا با دسترسی مشترک به دیتابیس اجرا میکنند، پلتفرم 4SO ایزولاسیون را در چند لایه سختافزاری و نرمافزاری پیاده میکند:
| لایه پلتفرم (Platform Layer) | مکانیسم ایزولاسیون پروژه | اثر امنیتی |
|---|---|---|
| پایگاهداده (Percona XtraDB) | دیتابیس و یوزر اختصاصی با رمز تصادفی 64 رقمی برای هر سایت | عدم دسترسی هیچ سایتی به جداول یا اطلاعات دیتابیس سایتهای دیگر |
| کش درونحافظهای (Valkey) | ACL کاربری اختصاصی با پیشوند کلید قفلشده prj_<id>_* | غیرممکن بودن خواندن یا مسمومسازی کش پروژههای دیگر |
| فایلهای رسانه و ذخیرهسازی | باکت ذخیرهسازی شیء (SeaweedFS S3) جدا برای هر سایت با کلیدهای مجزا | حفاظت 100٪ از فایلهای آپلودی در برابر دسترسی غیرمجاز سایر پروژهها |
| شبکه ارتباطی (Cilium eBPF) | قوانین NetworkPolicy در سطح کرنل بین پادهای وب و سرویسها | مسدود بودن ارتباط مستقیم بین پادهای وردپرس دو پروژه متفاوت |