روش ۲ – تهیه نسخه پشتیبان بر روی ابر گوگل با استفاده از Bucket
روش دوم برای پشتیبان گیری از ماشینهای مجازی بر روی محیط ابری گوگل مشابه به روش قبلی است که به کمک NAKIVO انجام میشود. با یک تفاوت اصلی، در این روش بجای استفاده از یک دیسک ثابت پایدار متصل به ماشین مجازی از یک Bucket ذخیره سازی را بر روی محیط ابری گوگل استفاده میشود، و شما میتوایند مخزن ذخیره سازی خودتان را بروی آن ایجاد کنید.
زمانی که تأخیر و عملکرد دیسک در اولویت کاری پشتیبان گیری از زیرساختهای محلی بر روی زیرساختهای ابری نباشد (به عنوان مثال تهیه نسخه پشتیبان از ماشینهای مجازی VMware بر روی محیط ابری گوگل)؛ شما میتوانید از یک Bucket ذخیره سازی بر روی محیط ابری گوگل استفاده کنید که امکان ذخیره سازی مقیاس پذیر، انعطاف پذیر و با دوام را برای شما فراهم میکند.
هنگام استفاده از این فضای ذخیره سازی برای پشتیبان گیری، کل فضای ذخیره سازی در اختیار شما است تا اطلاعات خود را بر روی آن ذخیره کنید و بخشی از فضای خود را برای نگهداری برنامههایی از قبیل پایگاه داده و برنامههای کاربردی مشغول نمیکنید. فضای ذخیره سازی ابری گوگل یک سرویس اصلی برای نگهداری از اطلاعات پشتیبان گرفته شما است، که به شما امکان استفاده ازbucket با ظرفیت نامحدود را میدهد. این بخشها امکان نگهداری فایل با اندازه ۵-TB را برای شما امکان پذیر میسازد، وهزینهای بسیار مقرون به صرفه را برای شما ارائه میکند.
شما میتوانید فایلها را در رابط وب ابری گوگل بارگذاری و بارگیری کنید و همچنین یک bucket را به یک ماشین مجازی در حال اجرا بر روی ابر گوگل مونت کنید. اما تعدادی از ویژگیهای bucket مونت شده به ماشین مجازی در مقایسه با دیسکهای مونت شده به ماشین مجازی به عنوان فایلسیستم، متفاوت است. شما باید از FUSE که یک ابزار ویژه برای مونت کردن در لینوکس است استفاده کنید. برای انجام پشتیبان گیری از ماشین مجازی در bucket ابری گوگل به کمک نرم افزارNAKIVO باید موارد زیر را انجام دهید:
- یک ماشین مجازی لینوکسی بر روی محیط ابری گوگل ایجاد کنید.
- نرم افزار NAKIVO را بر روی لینوکس ابری نصب و راه اندازی کنید.
- یک bucket را ایجاد کنید تا به عنوان مخزنی برای نگهداری فایلهای پشتیبان گرفته شده بر روی محیط ابری عمل کند.
- پکیج gcfuse را بر روی ماشین مجازی لینوکسی نصب کنید.
- bucket ایجاد شده را به ماشین مجازی مونت کنید.
- یک انتقال دهنده را ایجاد کنید. (برای راهنمایی ایجاد آن به روش ۱ مراجعه کنید؛ در ادامه اطمینان حاصل کنید که قوانین فایروال امکان اتصال انتقال دهنده را به محیط ابری را فراهم کند)
- یک مخزن پشتیبان گیری را بر روی لینوکس که bucket به آن مونت شده ایجاد کنید.
- از ماشینهای مجازی خود یک نسخه پشتیبان تهیه کنید یا با استفاده از مخزن پشتیبان گیری یک نسخه از فایلهای تهیه شده را بر روی محیط ابری گوگل کپی کنید.
پیکربندیهای مورد نیاز برای استفاده از این روش و همچنین تنظیمات ماشین مجازی لینوکسی را میتوانید با جزئیات بیشتری در بخش اول مشاهده کنید.
ساخت یک bucket
به کنسول ابری گوگل بروید و پروژه خود را انتخاب کنید. در پنل سمت چپ صفحه وب مدیریتی ابری گوگل، به قمست تنظمیات ذخیره سازی بروید و بعد بر روی گزینه Storage را کلیک تا صفحه مدیریت bucket مشخص شود سپس دکمه Create bucket را فشار دهید.
در صفحه ایجاد bucket، تعدادی از تنظیمات را بایستی پیکربندی کنید:
نام، یک نام منحصر به فرد که در سراسر ابر گوگل یکتا باشد را انتخاب کنید.
کلاس ذخیره سازی پیش فرض. در این بخش شما میتوانید چهار کلاس برای ذخیره سازی انتخاب کنید:
- چند منطقهای. این گزینه برای ذخیره دادههای که دسترس پذیری آنها مهم هستند، مناسب است. ویژگی این کلاس در دستر بودن بسیار بالا است اما قیمت آن بالا است.
- منطقه ای. از این گزینه میتوان برای ذخیره دادههایی استفاده کرد که مرتباً به آنها دسترسی پیدا میکنید. در دسترس بودن آن بالا است، اما قیمت پایین تری از کلاس قبلی دارد.
- نزدیک خط. اگر انتظار ندارید به دادههای خود دسترسی مکرر داشته باشید (حدوداً یک بار در ماه) این گزینه را انتخاب کنید. هزینه آن برای هر گیگابایت کم است، اما هزینههای بازیابی اطلاعات را هم باید در نظر گرفت.
- Coldline. این گزینه ذخیره سازی را برای دادههایی که به ندرت استفاده میشوند (حدود یک بار در سال) انتخاب کنید. این کلاس گزینه مناسبی برای ذخیره سازی فایلهای پشتیبان گرفته شده است که آنها را برای بازیابی فاجعه استفاده میکنند؛ کمترین هزینه را برای نگهداری هر گیگابایت به همراه خواهد داشت.
مکان جغرافیایی. مکانی را انتخاب کنید که به شما نزدیکترین است ( ماشین مجازی لینوکسی که بر روی محیط ابری گوگل نصب شده است نیز باید این چنین باشد)
برای تنظیمات باقی مانده، میتوانید آنها را در مقادیر پیش فرض بگذارید. پس از پیکربندی تمام گزینههای مورد نیاز، روی گزینه Create کلیک کنید.
شما bucket خود را با موفقیت ایجاد کردهاید، اکنون یک فایل temp.png را از طریق رابط وب در آن برای آزمایش بارگذاری کنید.
پکیج gcsfuse را بر روی لنوکس نصب کنید
FUSE یک رابط نرم افزاری است، چارچوبی که به کاربران لینوکس امکان میدهد سیستم فایل کاربری خود را برای استفاده در دستگاههای لینوکس بدون ویرایش کد اصلی ایجاد کنند. FUSE را علاوه بر Ubuntu میتوان بر روی FreeBSD ، OpenSolaris و macOS نیز استفاده کرد.
Google Cloud Storage FUSE (gcsfuse) یک ابزار منبع باز است که به عنوان یک آداپتور ذخیره سازی برای مونت کردن buckets گوگل به عنوان سیستم فایل در دستگاههای لینوکسی و سیستم عاملهای مک، استفاده میشود. یک فایل سیستم معنایی استاندارد برای بارگذاری و بارگیری فایلها (اشیاء ذخیره سازی ابری). در رابط وب گوگل، به قسمت Compute Engine رفته و بر روی گزینه ماشین مجازی کلیک کنید. ماشین مجازی لینوکسی را که قبلا ساخته اید را انتخاب و مطمئن شوید که آن در حال اجرا باشد، سپس میتوانید از طریق SSH به آن متصل شوید.
پس از دریافت کنسول لینوکسی، توجه داشته باشید که اکثر دستورات زیر باید با سطح دسترسی اصلی (root) اجرا شوند. با اجرای دستورات زیر یک مخزن را به کمک gcsfuse اضافه کنید:
export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s
echo “deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main” | sudo tee /etc/apt/sources.list.d/gcsfuse.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add –
لیست بستههای موجود مورد استفاده در لینوکس خود را به روز رسانی کنید. بعد از اجرای این دستور، مدیر بسته شما مطلع خواهد شد که یک مخزن جدید که حاوی gcsfuse است، اضافه شده است.
apt-get update
پکیج gcsfuse را از مخزنی که قبلاً اضافه کرده اید نصب کنید.
apt-get install gcsfuse
bucket گوگل را به ماشین مجازی لینوکسی مونت کنید
اکنون که ابزار gcsfuse نصب شده است، bucket گوگل ایجاد شده را به ماشین ابری خود مونت کنید و از آن برای پشتیبان گیری بر روی محیط ابری گوگل استفاده کنید. دایرکتوری که میخواهید bucket را بر روی آن مونت کنید، ایجاد کنید.
mkdir /mnt/g-bucket
bucket را با کمک ابزار gcsfuse مونت کنید.
gcsfuse nakivo-bucket01 /mnt/g-bucket/
بررسی کنید که آیا bucket در فهرست مشخص شده مونت شده باشد:
df -h
فایلهای موجود در bucket را لیست کنید. همانطور که به یاد دارید، فایل temp.png را در رابط وب گوگل بارگذاری کرده بودیم در این لیست قرار دارد.
ls -al /mnt/g-bucket
نکته مهم: دسترسی کامل به API های ابری، باید در تنظیمات ماشین مجازی ابری شما فعال شده باشد (صفحه مربوط به جزئیات ماشین مجازی را بررسی کنید). در غیر این صورت، شما قادر به نوشتن فایلها در bucket گوگل از طریق کنسول لینوکسی نخواهید بود. شما نمیتوانید با استفاده از دستورات سنتی تنظیمات مربوط به مالکیت و مجوزها را برای دایرکتوری مورد استفاده شده در bucket را مدیریت کنید.
chown -R username:groupname /mnt/g-bucket/
chmod -R 0775 /mnt/g-bucket/
بعد از مونت شدن bucket، تنظیمات و مجوزها بازنویسی میشوند.
تلاش کنید که فایلی را به دایرکتوری bucket گوگل کپی یا یک فایل جدید بر روی آن بسازید.
echo $PATH > /mnt/g-bucket/test1.txt
بررسی کنید چه فایل هایی بر روی آن ایجاد شده است.
ls -al /mnt/g-bucket/
شماره کاربری و شماره گروه، کاربر NAKIVO را بررسی کنید:
cat /etc/passwd | grep bhsvc
خروجی نمایش داده شده مشابه کدکاربری زیر خواهد بود
bhsvc:x:999:1003::/home/bhsvc:/sbin/nologin
برای این مثال uid برار با ۹۹۹ و gid برار با ۱۰۰۳ است.
برای مونت کردن پایدار و خودکار bucket تنظیمات /etc/fstab را پیکربندی کنید
vim /etc/fstab
رشته زیر را به آن اضافه کنید.
nakivo-bucket01 /mnt/g-bucket gcsfuse rw,user,implicit_dirs,uid=999,gid=1003,noatime,allow_other 0 0
- ابتدا نام bucket تعریف شده را وارد کنید.
- سپس مسیر استفاده شده برای مونت کردن bucket در آن را وارد کنید.
- سیستم فایل مورد نظرتان را به کمک ابزار gcsfuse مونت کنید.
- سیوییچ rw را برای مجوز مونت شدن اضافه کنید.
- رشته user نام هر کاربری که میتواند مونت را انجام دهد را وارد کنید.
- implicit_dirs امکان استفاده از دایرکتوریها را فراهم میکند.
- uid = 999 – به کمک این سوییچ قسمت uid تنظیم شده توسط سیستم فایل نادیده گرفته میشود. ۹۹۹ کد کاربری یوزر bhsvc است که توسط NAKIVO ساخته شده است. این کاربر باید مجوزهایی برای نوشتن فایلها داشته باشد، در غیر این صورت یک مخزن پشتیبان گیری ایجاد نمیشود.
- gid = 1003 – به کمک این سوییچ قسمت gid تنظیم شده توسط سیستم فایل نادیده گرفته میشود. ۱۰۰۳ کد گروه یوزر bhsvc است که توسط NAKIVO ساخته شده است. این گروه هم باید مجوزهایی برای نوشتن فایلها داشته باشد، در غیر این صورت یک مخزن پشتیبان ایجاد نمیشود.
- noatime – اطلاعات مربوط به دسترسی به فایلهایی است که در فایل سیستم به روز نمیشود (زمان نوشتن فایل، زمان آخرین ویرایش فایل). در صورت استفاده از ذخیره ساز ابری گوگل، این رویکرد به شما کمک میکند که میزان زمان ورودی/خروجی را کاهش و در نتیجه عملکرد را افزایش دهید.
- Allow_other – این سوییچ به همه کاربران اجازه دسترسی به فایلهای موجود در bucket مونت شده را میدهد (نه فقط کاربر root).
- مقدار ۰ این قسمت تعیین میکند که آیا ابزار dump فعال باشد تا از سیستم فایل پشتیبان گیری کند (۰ – غیرفعال، ۱- فعال).
- مقدار ۰ این قسمت تعیین میکند که آیا ابزار fsck سیستم فایل را بررسی کند (۰ – بررسی نکند ، ۱ – این پارتیشن را ابتدا بررسی کند ، ۲ – این پارتیشن را بعدی بررسی کند).
تغییرات را در مسیر /etc/fstab ذخیره کنید و سپس لینوکس خود را دوباره راه اندازی کنید.
init 6
اطمینان حاصل کنید که bucket گوگل پس از راه اندازی مجدد ماشین مجازی به طور خودکار مونت شده است:
df -h | grep g-bucket
بررسی کنید که آیا مجوز کافی برای انتقال دهنده NAKIVO برای نوشتن فایلها در فهرست /mnt/gbucket/ وجود دارد یا خیر.
ls -al /mnt
drwxr-xr-x 1 bhsvc bhsvc 0 Mar 28 15:51 g-bucket
سعی کنید فایلی را در مسیر bucket گوگل کپی کنید، یا یک پرونده جدید ایجاد کنید:
echo $SHELL > /mnt/g-bucket/test2.txt
بررسی کنید که آیا فایل ایجاد شده و محتوای جدید با موفقیت نوشت شده است:
ls -al /mnt/g-bucket/
cat /mnt/g-bucket/test2.txt
به رابط وب ابری گوگل بروید و محتوای bucket خود را بررسی کنید تا مطمئن شوید که فایلها نیز در رابط وب قابل مشاهده هستند و همه چیز درست باشد.
به رابط وب NAKIVO (سمت شبکه محلی) وارد شوید.
یک انتقال دهنده را بر روی لینوکس خودتان مستقر کنید (توضیح بیشتر در روش اول موجود است). به قسمت پیکربندی بروید سپس گزینه انتقال دهنده را انتخاب کنید، روی گزینه افزودن انتقال دهنده کلیک کنید و سرویس نصب شده را انتخاب کنید. آدرس IP بیرونی ماشین مجازی لینوکس ابری خود را که بر روی آن انتقال دهنده را نصب کردهاید را وارد کنید. یک نام برای انتقال دهنده وارد کنید، مطمئن شوید که تنظیمات فایروال ابری گوگل خود را به گونهای پیکربندی کرده باشید که سایت اصلی قادر به اتصال از راه دور به انتقال دهنده لینوکسی ابری باشد. مخزن پشتیبان گیری جدید را بر روی پوشه محلی دستگاه لینوکسی ابری اضافه کنید. به قسمت پیکربندی بروید و قسمت مخازن را انتخاب کنید، و بر روی گزینه افزودن مخزن پشتیبان گیری جدید کلیک.
دکمه Add را بزنید تا مخزن پشتیبان گیری بر روی bucket ابری گوگل ایجاد شود، ابتدا باید برای تهیه نسخه پشتیبان از راه دور آن را آماده کنید. بعد از آن میتوانید یک کار پشتیبان گیری یا یک کار کپی از فایلهای پشتیبان گرفته شده را تنظیم و اطلاعات خود را به ابر گوگل منتقل کنید.
نتیجه گیری
پشتیبان گیری بر روی فضای ذخیره سازی ابری گوگل را میتوان نوعی پشتیبان گیری از راه دور در نظر گرفت که به شما امکان میدهد از دادههای خود در برابر فاجعه محافظت کنید. پیکربندی پشتیبان گیری از ماشینهای مجازی بر روی ابر گوگل به کمک NAKIVO عملیاتی سختی نیست و با استفاده از دو روش قابل انجام است. روش اول نیاز به یک دیسک مجازی اضافی دارد که به لینوکس نصب شده ابری گوگل مونت شده است. اگر از روش دوم استفاده کنید، باید از یک bucket گوگل به جای دیسک مجازی استفاده کنید تا یک مخزن پشتیبان گیری را برروی آن ایجاد کنید. شما میتوانید سرعت و قیمت را برای این دو روش مقایسه کنید و روشی را انتخاب کنید که به بهترین نحو نیاز شما را برآورده کند. NAKIVO میتواند از ماشینهای مجازیVMware و Hyper-V بصورت اتوماتیک بر روی محیط ابری گوگل با قیمت بسیار عالی، پشتیبان گیری کند.