جهان اولین نمونه اولیه ذخیره سازی اشیاء را در سال 1996 دید. در 10 سال آینده، خدمات وب آمازون آمازون S3 را راه اندازی خواهد کرد و جهان به طور سیستماتیک با فضای آدرس مسطح دیوانه خواهد شد. به لطف مدیریت ابرداده و توانایی آن در مقیاسپذیری بدون افتادگی تحت بار، ذخیرهسازی اشیا به سرعت به استانداردی برای اکثر سرویسهای ذخیرهسازی ابری و فراتر از آن تبدیل شده است. یکی دیگر از ویژگی های مهم سازگاری خوب آن برای ذخیره آرشیو و فایل های مشابه که به ندرت استفاده می شود است. همه کسانی که در زمینه ذخیره سازی اطلاعات مشارکت داشتند تشویق کردند و فناوری جدید را روی دستان خود حمل کردند.
اما شایعات مردم مملو از شایعات بود مبنی بر اینکه ذخیره اشیاء فقط در مورد ابرهای بزرگ است و اگر به راه حلی از طرف سرمایه داران لعنتی نیاز ندارید، ساختن آن بسیار دشوار خواهد بود. قبلاً مطالب زیادی در مورد استقرار ابر شخصی شما نوشته شده است، اما اطلاعات کافی در مورد ایجاد راه حل های به اصطلاح سازگار با S3 وجود ندارد.
بنابراین، امروز متوجه خواهیم شد که چه گزینههایی وجود دارد "به مانند بزرگسالان، و نه CEPH و یک فایل بزرگتر"، یکی از آنها را مستقر خواهیم کرد و بررسی خواهیم کرد که همه چیز با استفاده از Veeam Backup & Replication کار می کند. ادعا می کند از کار با حافظه های ذخیره سازی سازگار با S3 پشتیبانی می کند و ما این بیانیه را بررسی خواهیم کرد.
دیگران چطور؟
من پیشنهاد می کنم با یک نمای کلی از بازار و گزینه های ذخیره سازی اشیا شروع کنیم. رهبر و استاندارد عمومی شناخته شده آمازون S3 است. دو نزدیکترین تعقیب کننده Microsoft Azure Blob Storage و IBM Cloud Object Storage هستند.
آیا این همه است؟ آیا رقیب دیگری وجود ندارد؟ البته، رقبای هم وجود دارند، اما شخصی مانند Google Cloud یا Oracle Cloud Object Storage، با پشتیبانی ناقص از S3 API، راه خودش را میرود. شخصی از نسخههای قدیمی API مانند Baidu Cloud استفاده میکند. و برخی مانند Hitachi Cloud نیاز به اعمال منطق خاصی دارند که مطمئناً مشکلات خاص خود را ایجاد می کند. در هر صورت همه با آمازون مقایسه می شوند که می توان آن را استاندارد صنعتی دانست.
اما در راه حل های داخلی، انتخاب بسیار بیشتر است، بنابراین بیایید معیارهایی را که برای ما مهم هستند، بیان کنیم. در اصل، فقط دو مورد کافی است: پشتیبانی از S3 API و استفاده از امضای v4. دست روی قلب، ما به عنوان یک مشتری آینده، فقط به رابط های تعاملی علاقه مند هستیم و به آشپزخانه داخلی خود ذخیره سازی علاقه چندانی نداریم.
خوب، بسیاری از راه حل ها متناسب با این شرایط ساده هستند. به عنوان مثال، شرکت های کلاسیک سنگین وزن:
- DellEMC ECS
- شبکه ذخیره سازی NetApp S3
- سطل های Nutanix
- FlashBlade و StorReduce Storage Pure
- Huawei FusionStorage
مجموعهای از راهحلهای نرمافزاری کاملاً خارج از جعبه وجود دارد:
- کلاه قرمزی Ceph
- SUSE Enterprise Storage
- ابریشم
و حتی کسانی که دوست دارند پس از مونتاژ پرونده را با دقت پردازش کنند، توهین نشده اند:
- CEPH در خالص ترین شکل خود
- Minio (نسخه لینوکس، زیرا سوالات زیادی در مورد نسخه ویندوز وجود دارد)
لیست کامل نیست، می توان در نظرات در مورد آن بحث کرد. فقط فراموش نکنید که قبل از اجرا، عملکرد سیستم را علاوه بر سازگاری API بررسی کنید. آخرین چیزی که می خواهید از دست دادن ترابایت داده به دلیل درخواست های گیر کرده است. پس با خیال راحت تست ها را بارگذاری کنید. به طور کلی، تمام نرم افزارهای بزرگسال که با حجم زیادی از داده ها کار می کنند، حداقل گزارش های سازگاری دارند. در صورت وایام وجود دارد
غرفهمان را جمع میکنیم
می خواهم کمی در مورد انتخاب رشته امتحانی صحبت کنم.
اول، میخواستم گزینهای را پیدا کنم که درست کار کند. خوب، یا حداقل با حداکثر احتمال که بدون نیاز به ژست های غیر ضروری کار می کند. رقصیدن با تنبور و چیدن کنسول در شب بسیار هیجانانگیز است، اما گاهی اوقات میخواهید فوراً کار کنید. و قابلیت اطمینان کلی چنین راه حل هایی معمولاً بالاتر است. و بله، روح ماجراجویی در ما ناپدید شد، ما از بالا رفتن از پنجره ها به زنان محبوبمان و غیره منصرف شدیم (ج).
ثانیاً، صادقانه بگوییم، نیاز به کار با ذخیره سازی اشیاء در شرکت های نسبتاً بزرگ ایجاد می شود، بنابراین این مورد زمانی است که به دنبال راه حل های سطح سازمانی نه تنها شرمنده نیست، بلکه حتی تشویق می شود. در هر صورت، من هنوز نمونه ای از اخراج فردی به خاطر خرید چنین راهکارهایی را نمی شناسم.
با توجه به موارد گفته شده، انتخاب من با شکست مواجه شد Dell EMC ECS Community Edition. این یک پروژه بسیار جالب است و لازم می دانم در مورد آن به شما بگویم.
اولین چیزی که با دیدن اضافه شدن به ذهن می رسد نسخه اجتماعی - که این فقط یک مقاله ردیابی از یک ECS تمام عیار با محدودیت هایی است که با خرید مجوز حذف می شوند. پس نه!
به یاد داشته باشید:
!!!Community Edition یک پروژه مجزا است که برای تست و بدون پشتیبانی فنی دل ایجاد شده است!!
و نمی توان آن را به یک ECS تمام عیار تبدیل کرد، حتی اگر واقعاً بخواهید.
بیایید آن را کشف کنیم
بسیاری از مردم فکر می کنند که Dell EMC ECS تقریبا بهترین راه حل در صورت نیاز به ذخیره سازی اشیا است. کلیه پروژه های تحت برند ECS اعم از تجاری و شرکتی هستند
DELL ECS Community Edition یک نسخه کوچک از نرم افزار کامل است که بر روی سرورهای برند Dell EMC ECS اجرا می شود.
من چهار تفاوت اصلی را شناسایی کرده ام:
- بدون پشتیبانی از رمزگذاری شرم آور است، اما انتقادی نیست.
- هیچ لایه پارچه ای وجود ندارد. این چیز وظیفه ساخت کلاسترها، مدیریت منابع، به روز رسانی، نظارت و ذخیره تصاویر داکر را بر عهده دارد. در اینجا بسیار ناامید کننده است، اما دل را نیز می توان درک کرد.
- بدترین پیامد نکته قبلی: بعد از اتمام نصب، اندازه گره قابل افزایش نیست.
- بدون پشتیبانی فنی این محصولی برای آزمایش است که استفاده از آن در تاسیسات کوچک ممنوع نیست، اما من شخصا جرات آپلود پتابایت داده های مهم را در آنجا ندارم. اما از نظر فنی، هیچ کس نمی تواند شما را از انجام این کار باز دارد.
نسخه بزرگ چیست؟
با گذر از اروپا، بیایید راه حل های آهنی را مرور کنیم تا تصویر کامل تری از اکوسیستم داشته باشیم.
من به نحوی این بیانیه که DELL ECS بهترین ذخیره سازی اشیاء اولیه است را تأیید یا رد نمی کنم، اما اگر چیزی برای گفتن در این زمینه دارید، خوشحال می شوم آن را در نظرات بخوانم. در هر صورت طبق نسخه
از نقطه نظر فنی، ECS یک ذخیره سازی شی است که دسترسی به داده ها را با استفاده از پروتکل های ذخیره سازی ابری فراهم می کند. از AWS S3 و OpenStack Swift پشتیبانی می کند. برای سطل های دارای فایل، ECS از NFSv3 برای صادرات فایل به فایل پشتیبانی می کند.
فرآیند نوشتن اطلاعات نسبتاً غیرعادی است، به خصوص پس از سیستم های ذخیره سازی بلوک کلاسیک.
- هنگامی که داده های جدید وارد می شوند، یک شی جدید ایجاد می شود که دارای نام، خود داده و ابرداده است.
- اشیاء به تکه های 128 مگابایتی تقسیم می شوند و هر تکه به طور همزمان در سه گره نوشته می شود.
- فایل فهرست به روز می شود، جایی که شناسه ها و مکان های ذخیره سازی ثبت می شوند.
- فایل log ( ثبت رکورد ) به روز می شود و همچنین در سه گره نوشته می شود.
- پیامی در مورد ثبت موفقیت آمیز به مشتری ارسال می شود.
هر سه نسخه از داده ها به صورت موازی نوشته شده اند. نوشتن تنها در صورتی موفق تلقی می شود که هر سه نسخه با موفقیت نوشته شده باشند.
خواندن آسان تر است:
- مشتری داده ها را درخواست می کند.
- ایندکس به دنبال مکانی برای ذخیره داده ها است.
- داده ها از یک گره خوانده می شوند و برای مشتری ارسال می شوند.
تعداد کمی از سرورها وجود دارد، بنابراین بیایید به کوچکترین Dell EMC ECS EX300 نگاه کنیم. از 60 ترابایت شروع می شود و می تواند تا 1,5 ترابایت افزایش یابد. و برادر بزرگتر او Dell EMC ECS EX3000 در حال حاضر به شما اجازه می دهد تا 8,6Pb را در هر رک ذخیره کنید.
مستقر کنید
از نظر فنی، Dell ECS CE می تواند به اندازه دلخواه مستقر شود. در هر صورت من محدودیت صریحی پیدا نکردم. با این حال، تمام مقیاسبندی به راحتی با شبیهسازی اولین گره انجام میشود که به آن نیاز داریم:
- 8 cpu
- 64GB رم
- 16 گیگابایت برای سیستم عامل
- 1 ترابایت به طور مستقیم برای ذخیره سازی
- آخرین نسخه CentOS Minimal
این یک گزینه برای مواردی است که می خواهید همه چیز را خودتان از همان ابتدا نصب کنید. برای ما، این گزینه مرتبط نیست، زیرا. من از یک تصویر OVA برای استقرار استفاده خواهم کرد.
اما در هر صورت، الزامات حتی برای یک گره بسیار بد است و اگر به شدت از قانون پیروی کنید، به چهار گره از این قبیل نیاز دارید.
با این حال، توسعه دهندگان ECS CE در دنیای واقعی زندگی می کنند و نصب حتی با یک گره نیز موفقیت آمیز است و حداقل نیازها عبارتند از:
- 4 cpu
- 16 GB RAM
- 16 گیگابایت برای سیستم عامل
- 104 گیگابایت حافظه داخلی
این منابع هستند که برای استقرار تصویر OVA مورد نیاز هستند. در حال حاضر بسیار انسانی تر و واقعی تر.
خود گره نصب را می توان از رسمی دریافت کرد
ما دستگاه را راه اندازی می کنیم، کنسول را باز می کنیم و از بهترین اعتبارهای پیش فرض استفاده می کنیم:
- ورود به سیستم: مدیریت
- رمز عبور: تغییر من
سپس sudo nmtui را اجرا می کنیم و رابط شبکه - IP / mask، DNS و gate را پیکربندی می کنیم. با در نظر گرفتن اینکه هیچ ابزار شبکه ای در حداقل CentOS وجود ندارد، تنظیمات را از طریق ip addr بررسی می کنیم.
و از آنجایی که فقط شجاعان دریاها را فتح می کنند، ما yum update را انجام می دهیم و پس از آن راه اندازی مجدد می کنیم. در واقع بسیار ایمن است. تمام استقرار از طریق playbook ها انجام می شود و همه بسته های docker مهم به نسخه فعلی قفل می شوند.
اکنون زمان ویرایش اسکریپت نصب است. هیچ پنجره زیبا یا شبه UI برای شما وجود ندارد - همه چیز از طریق ویرایشگر متن مورد علاقه شما است. صرفاً از نظر فنی، دو راه وجود دارد: می توانید هر دستور را به صورت دستی اجرا کنید یا پیکربندی videploy را بلافاصله اجرا کنید. به سادگی پیکربندی را در vim باز می کند و پس از خروج شروع به بررسی آن می کند. اما ساده کردن عمدی زندگی خود جالب نیست، بنابراین بیایید دو دستور دیگر را اجرا کنیم. اگرچه معنی ندارد، اما من به شما هشدار دادم =)
بنابراین، ما vim ECS-CommunityEdition/deploy.xml را می سازیم و حداقل تغییرات بهینه را انجام می دهیم تا ECS روشن شود و کار کند. لیست پارامترها را می توان کوتاه کرد، اما من این کار را به صورت زیر انجام دادم:
- Licensed_accepted: true لازم نیست آن را تغییر دهید، سپس هنگام استقرار به صراحت از شما خواسته می شود که آن را بپذیرید و یک عبارت زیبا نشان دهید. حتی ممکن است یک تخم مرغ عید پاک باشد.
- لغو کامنت خطوط autonames: و custom: حداقل یک نام دلخواه برای گره وارد کنید - نام میزبان در طول فرآیند نصب با آن جایگزین خواهد شد.
- install_node: 192.168.1.1 IP واقعی گره را مشخص کنید. در مورد ما، مانند nmtui مشخص می کنیم
- dns_domain: دامنه خود را وارد کنید.
- dns_servers: dns خود را وارد کنید.
- ntp_servers: هر کدام را می توان مشخص کرد. من اولی رو از pool 0.pool.ntp.org گرفتم (91.216.168.42 شد)
- autonaming: سفارشی اگر بدون نظر گذاشته شود، ماه Luna نامیده می شود.
- ecs_block_devices:
/ dev / sdb
به دلایلی ناشناخته، ممکن است دستگاه ذخیرهسازی بلوکی /dev/vda وجود نداشته باشد - storage_pools:
اعضا:
192.168.1.1 در اینجا دوباره IP واقعی گره را نشان می دهیم - ecs_block_devices:
/dev/sdb ما عملیات برش دستگاه های موجود را تکرار می کنیم.
به طور کلی، کل فایل با جزئیات کامل در توضیح داده شده است
پس از خروج از ویرایشگر، باید update_deploy /home/admin/ECS-CommunityEdition/deploy.yml را اجرا کنید و اگر همه چیز به درستی انجام شود، به صراحت گزارش می شود.
سپس همچنان باید videploy را شروع کنید، منتظر بمانید تا محیط به روز شود و می توانید با دستور ova-step1 خود نصب را شروع کنید و پس از اتمام موفقیت آمیز آن، دستور ova-step2 را شروع کنید. مهم: اسکریپت ها را با دست متوقف نکنید! برخی از مراحل ممکن است زمان زیادی طول بکشد، بیشتر از اولین تلاش طول بکشد و به نظر برسد که همه چیز خراب است. در هر صورت باید منتظر تکمیل فیلمنامه به صورت طبیعی باشید. در پایان، شما باید چیزی شبیه به این را ببینید.
حالا بالاخره با استفاده از IP که می شناسیم می توانیم کنترل پنل WebUI را باز کنیم. اگر در مرحله پیکربندی تغییر نکرده باشد، حساب پیش فرض root/ChangeMe خواهد بود. حتی می توانید بلافاصله از فضای ذخیره سازی سازگار با S3 ما استفاده کنید. در پورت های 9020 برای HTTP و 9021 برای HTTPS در دسترس است. دوباره، اگر چیزی تغییر نکرده است، پس access_key: object_admin1 و secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe.
اما بیایید جلوی خودمان را نگیریم و به ترتیب شروع کنیم.
در اولین ورود، به زور از شما خواسته می شود که رمز عبور را به یک رمز عبور کافی تغییر دهید که کاملاً صحیح است. داشبورد اصلی بسیار واضح است، بنابراین بیایید کاری جالب تر از توضیح معیارهای واضح انجام دهیم. به عنوان مثال، بیایید کاربری ایجاد کنیم که از آن برای دسترسی به مخزن استفاده کنیم. در دنیای ارائه دهندگان خدمات، به آنها مستاجر می گویند. این کار در Manage > Users > New Object User انجام می شود
هنگام ایجاد یک کاربر، از ما خواسته می شود که یک فضای نام را مشخص کنیم. از نظر فنی، هیچ چیز ما را از راه اندازی آنها به تعداد کاربرانی که وجود خواهد داشت، باز نمی دارد. و بالعکس. این اجازه می دهد تا منابع به طور مستقل برای هر مستاجر مدیریت شود.
بر این اساس، ما توابع مورد نیاز خود را انتخاب کرده و کلیدهای کاربر را تولید می کنیم. S3/Atmos برای من کافی خواهد بود. و فراموش نکنید که کلید را ذخیره کنید 😉
کاربر ایجاد شده است، اکنون زمان آن است که او سطل را انتخاب کند. به Manage > Bucket رفته و فیلدهای لازم را پر کنید. اینجا همه چیز ساده است.
اکنون ما همه چیز را برای استفاده کاملاً رزمی از فضای ذخیره سازی S3 خود آماده کرده ایم.
راه اندازی Veeam
بنابراین، همانطور که به یاد داریم، یکی از کاربردهای اصلی ذخیره سازی اشیاء، ذخیره سازی طولانی مدت اطلاعات است که به ندرت به آن دسترسی پیدا می شود. یک مثال ایده آل نیاز به ذخیره پشتیبان در یک سایت راه دور است. در Veeam Backup & Replication به این ویژگی Capacity Tier می گویند.
بیایید راه اندازی را با افزودن Dell ECS CE به رابط Veeam شروع کنیم. در تب Backup Infrastructure، ویزارد را برای افزودن یک مخزن جدید راه اندازی کنید و مورد Object Storage را انتخاب کنید.
ما انتخاب می کنیم که همه چیز برای چه چیزی شروع شده است - S3 Compatible.
در پنجره ظاهر شده نام مورد نظر را بنویسید و به مرحله Account بروید. در اینجا باید نقطه Service را در فرم مشخص کنید
اگر همه چیز به درستی مشخص و پیکربندی شده باشد، یک هشدار در مورد گواهی ظاهر می شود و سپس یک پنجره با یک سطل، که در آن می توانید یک پوشه برای فایل های ما ایجاد کنید.
جادوگر را تا آخر پاس می کنیم و از نتیجه لذت می بریم.
گام بعدی این است که یا یک مخزن پشتیبان Scale-out جدید ایجاد کنید، یا S3 خود را به مخزن موجود اضافه کنید - از آن به عنوان یک ردیف ظرفیت برای ذخیره سازی آرشیو استفاده می شود. عملکرد استفاده مستقیم از مخازن سازگار با S3، مانند یک مخزن معمولی، در نسخه فعلی موجود نیست. بسیاری از مشکلات غیر واضح وجود دارد که نمی توان آن را حل کرد، اما همه چیز می تواند حل شود.
وارد تنظیمات مخزن میشویم و Capacity Tier را روشن میکنیم. همه چیز در آنجا شفاف است، اما یک نکته جالب توجه وجود دارد: اگر می خواهید همه داده ها در اسرع وقت به ذخیره سازی اشیا ارسال شوند، فقط آن را روی 0 روز تنظیم کنید.
پس از عبور از ویزارد، اگر نمیخواهید منتظر بمانید، میتوانید ctrl+RMB را در مخزن فشار دهید، به زور کار Tiering را اجرا کنید و نمودارها را تماشا کنید.
فعلاً همین است. فکر میکنم با این کار کنار آمدم که نشان دهم ذخیرهسازی بلوک آنطور که معمولاً تصور میشود ترسناک نیست. بله، راه حل ها و گزینه هایی برای اجرای یک واگن و یک واگن کوچک، اما پوشش همه چیز در یک مقاله غیرممکن است. پس بیایید تجربه خود را در نظرات به اشتراک بگذاریم.
منبع: www.habr.com