نصب Ceph در ProxMox
در ادامه مقالات مربوط به ProxMox میخواهیم به کاربرد ceph در آن بپردازیم و کامل با آن آشنا بشویم.
در ابتدا با چند اصطلاح و سرویس آشنا میشویم:
backend storege چیست؟
در لینوکس، backend storage به معنای مکانی است که دادهها یا اطلاعاتی که برنامه یا سیستم به آن نیاز دارد را ذخیره میکند. این مکان ممکن است یک دیسک سخت معمولی، یک سرور در شبکه، یا حتی فضای ابری باشد. به عبارت دیگر، backend storage فضایی است که برنامهها یا سیستمها برای ذخیره اطلاعات و دادهها جدای از سرورهای اصلی استفاده میکنند تا از آنها در زمان نیاز استفاده کنند.
در چند سال گذشته از raid ها به عنوان backend storage استفاده میشد که به صورت سخت افزاری بود، اما امروزه backend storage ها به سمت نرم افزاری شدن رفته اند که یکی از آنها ceph است.
ceph چیست؟
Ceph یک نرمافزار ذخیرهسازی است که به شما کمک میکند دادههایتان را در سرورهای مختلف ذخیره کنید. این کار را به صورتی انجام میدهد که همه دادهها از طریق شبکه به یکدیگر متصل هستند و این به شما این امکان را میدهد که بتوانید به اندازه لازم فضای ذخیرهسازی خود را افزایش دهید.
بنابراین، Ceph میتواند به عنوان یک نوع ذخیرهسازی پشتیبان برای سیستمها و برنامههای مختلف در لینوکس استفاده شود. این به شما امکان میدهد که دادههای خود را در یک مکان مرکزی ذخیره کرده و به صورت موثر و کارآمد از آنها استفاده کنید.
ریکاوری اطلاعات در ceph:
ceph storage اطلاعات را به بلاک های کوچک تقسیم میکند آنها را رمزنگاری میکند و بر روی کلاستر میگذارد.و در صورت از دسا دادن بخشی از اطلاعات، آنها را ریکاوری میکند.
Ceph به کمک یک فناوری به نام “Replication” یا “Erasure Coding” (رمزگذاری فرسایشی) از اطلاعات برای ریکاوری یا بازیابی دادهها استفاده میکند. در اینجا توضیح مختصری از هر یک داده شده است:
- Replication (تکثیر): در این روش، Ceph دادهها را به صورت تکثیر شده بر روی چندین دستگاه ذخیره میکند. به عبارت سادهتر، هر قطعه از داده در چندین جایگاه مختلف ذخیره میشود. اگر یکی از دستگاهها یا سرورها خراب شود، دادهها همچنان در دسترس خواهند بود زیرا نسخههای دیگر از دادهها در دیگر دستگاهها وجود دارد.
- Erasure Coding: در این روش، دادهها به صورت Erasure Coding رمزگذاری میشوند و در بین چندین دستگاه (معمولاً بیشتر از حالت تکثیر) توزیع میشوند. به طور سادهتر، دادهها به شکل تکههای کوچک (fragments) تقسیم میشوند و بر روی دستگاههای مختلف ذخیره میشوند. برای بازیابی دادهها، Ceph باید تعداد مشخصی از این تکهها را بیابد و با استفاده از آنها، دادههای اصلی را بازسازی کند.
در هر دو روش، اگر یکی از دستگاهها یا سرورها خراب شود، Ceph میتواند با استفاده از نسخههای دیگر از دادهها یا تکههای موجود، دادهها را بازیابی کند و در دسترس قرار دهد. این به شما اطمینان میدهد که حتی در مواقع اضطراری یا وقوع خطا، دادههای شما در دسترس خواهند بود.
Ceph از تعدادی کامپوننت اصلی تشکیل شده است که هرکدام وظایف خاص خود را دارند. این کامپوننتها عبارتند از:
- Ceph OSD (Object Storage Daemon): OSDها مسئول ذخیره و مدیریت دادهها در Ceph هستند. آنها به عنوان دستگاههای ذخیرهسازی واقعی عمل میکنند و دادهها را در قالب اشیاء ذخیره میکنند.
- Ceph Monitor: مانیتورها (Monitors) وضعیت و فعالیت کلیه کامپوننتهای Ceph را نظارت میکنند. آنها اطلاعاتی از سرورها و OSDها جمعآوری میکنند و تصمیمگیریهای مربوط به توزیع و مدیریت دادهها را انجام میدهند.
- Ceph RADOS (Reliable Autonomic Distributed Object Store): RADOS بستر زیرساختی است که امکان ذخیره و بازیابی اشیاء (objects) را در Ceph فراهم میکند. این بستر از OSDها تشکیل شده است و مسئولیت توزیع و مدیریت دادهها را برعهده دارد.
- Ceph MDS (Metadata Server): MDSها برای سیستم فایل توزیعشده CephFS استفاده میشوند. آنها مسئول مدیریت متادیتاها (metadata) و نامگذاری فایلها هستند.
- Ceph RGW (RADOS Gateway): RGW یک درگاه (gateway) برای دسترسی به Ceph از طریق پروتکلهایی مانند S3 و Swift است. این کامپوننت اجازه میدهد تا برنامهها و سرویسهایی که از این پروتکلها استفاده میکنند، به Ceph دسترسی داشته باشند.
همچنین، در برخی موارد، ممکن است از کامپوننتهای دیگری مانند Ceph Manager، Ceph Dashboard و Ceph Volume هم استفاده شود که وظایف مدیریتی، نظارتی و دسترسی به حجمهای ذخیرهسازی را فراهم میکنند
نصب Ceph در ProxMox:
در proxmod یک ساختاری وجود دارد که خودش با چند گزینه ساده میتواند ceph storage را برای شما بسازد. که در ادامه آن را آموزش خواهید دید:
۱) در پنل ProxMox، در سمت چپ نود مورد نظر را انتخاب میکنیم و و نوار میانی گزینه “Ceph” را انخاب میکنیم و سپس گزینه “Install Ceph” را میزنیم.
در پنجره باز شده، در بالای آن ۴ مرحله تا پایان نصب وجود دارد.به ترتیب:
“Info” ، “Installation” ، “Configuration” ، “Success”
الف) در تب info، گزینه ceph version to install را روی اخرین ورژن میگذاریم و Repositori را روی No-Subscription میگذاریم.
ب) در مرحله Installation وارد محیط شل میشوید و وقتی برای نصی سوال میکند “y” را تایپ میکنیم و اینترنت میزنیم.
پ) تب Configuration را فقط در اولین نود پس از کلاستر کردن انجام میدهیم و در مابقی نود ها نیازی نیست.در قسمت Publice Network باید IP نود اول را برنیم و next را میزنیم. مرحله Success هم نیز مرحله اتمام است.
دقت کنید که این مرحله فقط در نود اول اجرا باید شود
مراحل بالا را در همه نود ها انجام میدهیم تا همه آنها جزو ceph بشوند.
بعد از انجام این مراحل نیاز هست که برای هر کدام از ceph ها “OSD” را یا همان هارد های خودمان را تعریف کنیم.برای این کار در هر نود از نوار میانی ، ceph را انتخاب میکنیم و زیر مجموعه OSD را انتخاب میکنیم. حالا در صفحه مربوطه گزینه “Create: OSD” را میزنیم.
در پنجره باز شده، خودکار، هارد را میشناسد و باید فقط create را بزنیم تا تنظیمات پیش فرض جلو برود.طبق شکل زیر هارد ها شناخته میشود و نمایش داده میشود.
دقت کنید که بعد از انجام این مراحل باید در نوار میانی، قسمت ceph خطایی وجود نداشته باشد.
بعد از انجام این مراحل Ceph آماده است و کار باموفقیت به پایان رسید !
لینک ویدیو یوتوب این مقاله:
لینک چنل یوتوب:
https://www.youtube.com/@linuxacademyir
اینستاگرام:
https://www.instagram.com/linuxacademy.ir
لینکدین:
https://www.linkedin.com/in/taleghanipv
تلگرام: