Dedicated Volume
هر سرویس دارای اطلاعات ارزشمندی است که باید بتوان آنها را در فضایی پایا ذخیره کرد تا بتوان در هر زمان به آن دسترسی داشت. در بستر فندق، این محلهای ذخیره سازی volume نام دارند.
انواع volume ها
فندق برای آنکه سرویسها بتوانند اطلاعات خود را در فضایی پایا و مانا ذخیره کنند دو ویژگی در نظر گرفته است:
- ۱- فضای ذخیره سازی اشتراکی
- ۲- فضای ذخیره سازی اختصاصی )Dedicated Volume(
۱- فضای ذخیره سازی اشتراکی
همانطور که از اسم این فضا مشخص است، سکوی ابری فندق برای هر کاربر یک فضای ذخیره سازی اختصاصی را فراهم می کند.
با اینکه این فضا مشکل ذخیره سازی اطلاعات را حل میکند اما گزینهای همه منظوره نیست. این فضا از فضای ذخیره سازی خود سکوی ابری فندق بوده و سرعت خواندن و نوشتن بر روی آن کندتر از volume اختصاصی یا dedicated volume است.
برای موارد مصرفی همچون پایگاههای داده و یا سرویسهای دیگری که در آن ها سرعت پروسه I/O از اهمیت بالایی برخوردار است، فندق Dedicated Volume
ها را در اختیار شما قرار میدهد.
۲- فضای ذخیره سازی اختصاصی )Dedicated Volume(
برای آنکه بتوان از افت سرعت و کیفیت سرویسها جلوگیری کرد فندق Dedicated Volume
را به سکو خود اضافه کرده است تا با استفاده از آن، هر سرویس بتواند فضایی اختصاصی برای ذخیره سازی اطلاعات داشته باشد.
تمام volumeهایی که کاربران میسازند، همگی توسط فندق مدیریت میشوند تا شما نگران مدیریت و نگهداری آنها نباشید.
همچنین در طراحی و پیادهسازی، تیم فندق تمام تلاش خود را کرده است تا رویه ساخت و استفاده از volume ها تا حد امکان برای کاربرها ساده و به دور از هر گونه سختی باشد.
نکته
توجه داشته باشید هر volume تنها به یک سرویس متصل می شود، لذا اگر تعداد replica بیشتر از ۱ باشد شما مجاز به استفاده از آن volume نخواهید بود و با پیغام خطا مواجه خواهید شد.
مقایسه Volume اشتراکی با اختصاصی
قابلیت | فضای اختصاصی | فضای اشتراکی |
---|---|---|
قابلیت استفاده همزمان توسط چند سرویس | ندارد | دارد |
قابلیت استفاده با سرویسهایی که رپلیکا دارند | ندارد | دارد |
سرعت خواندن و نوشتن | سریعتر | کندتر |
امکان تغییر مشخصات سرویس بدون داون تایم | ندارد | دارد |
قابلیت افزایش فضا پس از ساخت | دارد | ندارد |
چگونگی ساخت volume
فضاهای اختصاصی نیز مانند تمام منابع دیگری که در فندق ساخته می شوند نیازمند یک درخواست هستند.
برای این منظور کاربر می تواند با استفاده از دستور add
درخواستی مبنی بر ساخت یک volume به سرور فندق بفرستد.
پارامترهای دستور add :
n- یا name--
با استفاده از این پارامتر کاربر نام دلخواهی برای volume خود انتخاب میکند.
c- یا capacity--
با استفاده از این پارامتر کاربر میتواند مقدار فضای مورد نیاز خود را مشخص کند.
توجه
توجه داشته باشید که واحد ورودی فضا گیگابایت است
بعد از آنکه درخواستی مبنی بر ساخت یک volume به سمت سرور بیاید، فندق این درخواستها را بررسی کرده و سریعا به Dedicated Volume
خود منتقل می کند تا رویه ساخت volume انجام شود، که در شکل زیر نمایی مفهومی از این رویه را مشاهده میکنید.
بعد از آنکه درخواست ساخت volume با موفقیت به پایان برسد، سرور پاسخی را در قالب جدول زیر برای شما ارسال خواهد کرد.
Creation Date | Capacity | Volume | Mounted To | Condition | Status | Name |
---|---|---|---|---|---|---|
2018-11-19 13:15:17+00:00 | 10Gi | pvc-28a98eabebfd11e8 | None | Operative | Bound | vol1 |
همانطور که در جدول بالا مشاهده میکنید، یک پیغام مبنی بر موفقیت آمیز بودن ساخت volume با نام vol1 نمایش داده شده و در ادامه آن یک جدول نمایش داده شده که دارای چند ستون است، که در آن اطلاعاتی مربوط به volume تازه ساخته شده آورده شده است که در ادامه در مورد هر کدام از این فیلدها توضیح خواهیم داد.
توضیح ستون ها :
Name
این ستون بیانگر نام volumeای است که شما در دستور خود به سرور فرستاده اید.Status
این ستون بیانگر این موضوع است که volume ساخته شده به درستی به Block Storage متصل شده است یا خیر. مقادیر نمایش داده شده در این ستون دو حالت دارد:- Bound
یعنی volume به درستی ساخته و تنظیم شده است و آماده اتصال به یک سرویس است. - Unbound
یعنی Block Storage هنوز در حال آماده سازی volume بوده و باید کمی صبر کنید تا کار آن تمام شده و وضعیت به Bound تغییر کند، تا بتوانید volume را به سرویس مورد نظر خود متصل کنید.
- Bound
Mounted To
این ستون به ما میگوید که آیا در حال حاضر به سرویسی متصل شده است یا خیر. در صورتی که volume به سرویسی متصل باشد، نام آن سرویس در این ستون نمایش داده خواهد شد.Condition
این ستون بیانگر شرایط volume شما خواهد بود که نشان میدهد کاری بر روی آن در حال انجام است یا خیر. مقادیر نمایش داده شده در این ستون دو حالت دارد:Operative
یعنی volume سالم و فعال است و هیچ عملیاتی بر روی آن انجام نمیشود.Resizing یا FileSystemResizePending
یعنی volume در حال افزایش فضا است.
Volume
این ستون نام کوبرنتیزی volume شما را نمایش میدهد.Capacity
این ستون حجم volume شما را نمایش میدهد.Creation Date
همانطور که از نام این ستون مشخص است، تاریخ ساخته شدن یک volume در این ستون نمایش داده میشود.
fandogh-cli
برای اطلاع از وضعیت volume های خود می توانید از دستور زیر استفاده کنید.
این دستور جدولی شامل لیست تمام volume های شما را نمایش خواهد داد.
چگونگی حذف یک volume
برای آنکه بتوانید یک volume را حذف کنید، کافی است تا نام volume مورد نظر را به دستور زیر بدهید.
هشدار
پاک کردن یک volume منجر به پاک شدن تمام محتوای داخل آن شده و بازگرداندن آن امکان پذیر نخواهد بود.
راهنمایی
توجه داشته باشید، اگر volume ای که قصد پاک کردن آن را دارید به یک سرویس متصل باشد، ابتدا باید آن سرویس را destroy کرده و بعد تلاش به حذف volume مورد نظر کنید.
مدیریت volumeها
fandogh-cli
شما همچنین میتوانید با وارد کردن دستورfandogh volume --help
در fandogh-cli لیست دستورات موجود را مشاهده کنید.
list
با استفاده از دستور fandogh volume list
میتوانید لیست تمام volumeهایی که تا به حال ساختهاید را مشاهده کنید.
add
با وارد کردن دستور fandogh volunme add --name VOLUME_NAME --capacity VOLUME_CAPACITY
شما میتوانید یک volume با نام VOLUME_NAME و ظرفیت VOLUME_CAPACITY بسازید.
توجه
توجه داشته باشید که واحد ورودی فضا گیگابایت است
name-- یا n-
پارامتر name یا n نمایانگر نام volumeای است که میخواهید بسازید.
capacity-- یا c-
پارامتر capacity یا c بیانگر ظرفیت volume است.
expand
با وارد کردن دستور fandogh volunme expand --name VOLUME_NAME --capacity VOLUME_CAPACITY
شما میتوانید فضای volume با نام VOLUME_NAME را به ظرفیت VOLUME_CAPACITY افزایش دهید.
توجه
توجه داشته باشید که واحد ورودی فضا گیگابایت است
name-- یا n-
پارامتر name یا n نمایانگر نام volumeای است که میخواهید فضای آن را افزایش دهید.
capacity-- یا c-
پارامتر capacity یا c بیانگر ظرفیت جدید volume است.
delete
با استفاده از دستور fandogh volume delete --name VOLUME_NAME
میتوانید volume با نام VOLUME_NAME را پاک کنید.
name-- یا n-
پارامتر name یا n نمایانگر نام volumeای است که میخواهید آن را پاک کنید.