۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

کار با Azure Managed Instance برای Cassandra

از ابزارهای منبع باز برای ساختن سیستم های کلان داده که بر روی محل و فضای ابری پل می شوند، استفاده کنید.

از ابزارهای منبع باز برای ساختن سیستم های کلان داده که بر روی محل و فضای ابری پل می شوند، استفاده کنید.

ساخت برنامه‌های ابری بومی در مقیاس، مستلزم انتخاب دقیق پشته است. یکی از ابزارهای محبوب پروژه Cassandra Apache است، یک پایگاه داده NoSQL که برای مقیاس‌بندی سریع و بدون تأثیر بر عملکرد برنامه طراحی شده است. . این یک پلت فرم ایده‌آل برای کار با داده‌های بزرگ، با ابزارهای داخلی کاهش نقشه مبتنی بر Hadoop، و همچنین زبان پرس و جو خود است. در ابتدا در فیس بوک توسعه داده شد و از آن زمان در CERN، Netflix و Uber استفاده شده است.

Azure ابتدا پشتیبانی Cassandra را از طریق پیشنهادات DataStax در Azure Marketplace قبل از افزودن پشتیبانی Cassandra API به Cosmos DB توزیع شده خود و همچنین ارائه راهنمایی برای کاربرانی که می‌خواستند Cassandra خود را بسازند و اجرا کنند، ارائه کرد. سیستم های روی ماشین های مجازی Azure. اکنون در حال توسعه پیاده‌سازی Cassandra خود با پیش‌نمایش عمومی یک مجموعه ای از نمونه های مدیریت شده از Cassandra، طراحی شده برای کار در کنار Cosmos DB.

Apache Cassandra در Azure

Cassandra یک پایگاه داده توزیع شده است که هر گره از طریق پروتکل gossip به یکدیگر متصل است. گره ها بر روی چندین ماشین اجرا می شوند که به عنوان یک مرکز داده سازماندهی شده و به عنوان حلقه های گره مستقر شده اند. همه گره ها همتا هستند، بنابراین اگر هر یک از گره ها از بین برود، سیستم می تواند در حین شروع جایگزینی به کار خود ادامه دهد. حلقه‌ها می‌توانند با حلقه‌های دیگر همتا شوند و به شما این امکان را می‌دهند که سیستم‌های درون محل با سیستم‌های میزبان ابری یا یک منطقه با سایرین برای انعطاف‌پذیری جهانی کار کنند. گره ها را می توان در صورت لزوم از یک حلقه اضافه یا حذف کرد و مقیاس خطی را ارائه می دهد. برای دو برابر کردن عملکرد یا ظرفیت، تنها کاری که باید انجام دهید این است که تعداد گره ها را دو برابر کنید.

نمونه مدیریت شده Azure مایکروسافت برای Apache Cassandra شاید بهترین راه برای گسترش داده های داخلی به Cosmos DB باشد. مدت کوتاهی پس از راه‌اندازی، تقاضا برای Cosmos DB در محل وجود داشت، اما ادغام عمیق آن با پلتفرم Azure جدا کردن آن را برای مایکروسافت دشوار می‌کند. با ارائه یکپارچگی بین پیاده‌سازی Azure و Cosmos DB، اکنون می‌توانید یک حلقه Cassandra میزبان Azure راه‌اندازی کنید و آن را در محل و با Cosmos DB بررسی کنید. اکنون می‌توانید با استفاده از قابلیت‌های Cosmos DB برای اجرای برنامه‌های کاربردی توزیع‌شده در مقیاس جهانی و در حین کار با نمونه‌های محلی کاساندرا، داده‌ها را بین محل‌ها و فضای ابری تکرار کنید تا عملیات داده‌های تنظیم‌شده را در مرکز داده خودتان مدیریت کنید.

چه کسی به مهمانی استراتژی ابری شما دعوت شده است؟

استفاده از نمونه های مدیریت شده مزایای دیگری نیز دارد، زیرا می توانید بسیاری از عملیات روزانه حلقه کاساندرا را به Azure بسپارید. به‌طور خودکار ارتقاها و به‌روزرسانی‌ها را ارائه می‌کند، وصله‌ها را مدیریت می‌کند تا پایگاه داده شما همیشه امن‌ترین نسخه نرم‌افزار را اجرا کند. با هزینه های مدیریتی کمتر، می توانید به جای حفظ پشته خود، روی ساخت برنامه ها تمرکز کنید.

شروع به کار با نمونه های مدیریت شده

تفاوت زیادی بین راه‌اندازی و اجرای Apache Azure و سایر پایگاه‌های داده منبع باز مدیریت شده آن وجود ندارد. با ورود به پورتال Azure شروع کنید< /a>، سپس برای ایجاد یک خوشه، Managed Instance برای Apache Cassandra را جستجو کنید.

برای افزودن سرویس Azure به اشتراک، از افزودن آن به گروه منابع و انتخاب مکان، باید بیشتر مراحل را دنبال کنید. در همان زمان، یک نام انتخاب کنید و نوع میزبان VM را انتخاب کنید. در پیش‌نمایش فعلی، شما محدود به سرورهای DS14_v2 هستید که به چهار دیسک P30 متصل هستند. اینها سیستم‌های کاملاً قدرتمند مبتنی بر Xeon هستند، با ۱۶ vCPU، ۱۱۲ گیگابایت حافظه و ۲۲۴ گیگابایت SSD. از ۶۴ دیسک داده و ۸ کارت شبکه با پهنای باند ۱۲۰۰۰ مگابیت در ثانیه پشتیبانی می شود. انتظار دارید حداقل ۲.۱۱ دلار در ساعت بپردازید به ازای هر سرور، بسته به جایی که سرویس را ارائه می کنید. دیسک‌های P30 1 ترابایت فضای ذخیره‌سازی در هر دیسک ارائه می‌دهند و حداقل ۱۲۲.۸۸ دلار در ماه هزینه دارند (با هزینه اضافی برای نصب‌ها).

برنامه های ویندوز را بلند کرده و به کانتینرها منتقل کنید

اجرای Casandra در Azure ارزان نخواهد بود، اما برای برنامه های کوچک مناسب نیست. حتی اگر فقط از آن به عنوان دروازه ای به Cosmos DB استفاده کنید، داده های زیادی را در اطراف برنامه خود جابجا خواهید کرد.

مرحله بعدی نمونه شما را به یک شبکه مجازی جدید یا موجود Azure پیوند می‌دهد. هر VNet باید به اینترنت دسترسی داشته باشد، زیرا باید به چندین سرویس مختلف Azure پیوند دهد. اینها شامل پشتیبانی از مقیاس ماشین مجازی، مدیریت کلیدهای رمزگذاری و گواهینامه ها، و همچنین ادغام با سرویس های امنیتی و احراز هویت Azure است. اگر به یک VNet موجود متصل هستید، باید مجوزهای مناسب را از Azure CLI اضافه کنید، در غیر این صورت استقرار شما ناموفق خواهد بود.

اکنون آماده ایجاد خوشه خود هستید. پس از استقرار، گام بعدی شما ایجاد یک ماشین مجازی مدیریت با پشتیبانی از کتابخانه های کاساندرا است. این به شما این امکان را می دهد که از ابزارهای جستجوی Cassandra برای مدیریت پایگاه داده خود با استفاده از رمز عبور مدیریتی که هنگام ایجاد کلاستر تنظیم کرده اید استفاده کنید. اکنون می توانید با کاساندرا شروع به کار کنید.

ساخت خوشه های ترکیبی در ابرهای ترکیبی

اگر می‌خواهید از Cassandra در Azure به عنوان پلی برای Cosmos DB استفاده کنید، باید منابع Azure خود را به عنوان یک خوشه ترکیبی پیکربندی کنید. مانند قبل، یک خوشه Cassandra را در Azure ایجاد و مستقر کنید، نام آن را تنظیم کنید و آن را به Azure VNet متصل کنید. شما باید کاساندرا را برای رمزگذاری گره به گره پیکربندی کنید، بنابراین اگر نصب داخلی شما از آن استفاده نمی کند، آن را فعال کنید. گواهی های رمزگذاری خود را صادر کنید و از Azure CLI برای نصب آنها در خوشه میزبان Azure خود استفاده کنید. این دو سایت شما را قادر می‌سازد تا از طریق اتصالات شایعه‌سازی رمزگذاری‌شده ارتباط برقرار کنند.

VNet باید به شبکه محلی شما متصل شود، یا از طریق اتصالات اختصاصی مسیر Express یا با استفاده از VPN سایت به سایت. آنچه استفاده می‌کنید به میزان داده‌ای که قصد ارسال به Azure را دارید بستگی دارد، اگرچه خوشه‌های آزمایشی احتمالاً از VPN استفاده می‌کنند تا از هزینه راه‌اندازی یک اتصال سوئیچینگ برچسب چندپروتکل اختصاصی (MPLS) جلوگیری کنند.

ابرها نمی توانند توسعه دهندگان را فراموش کنند

شما باید یک مرکز داده جدید در خوشه مدیریت شده خود ایجاد کنید، با استفاده از Azure CLI برای دریافت جزئیات گره های اولیه آن. اینها به جزئیات پیکربندی سیستم داخلی شما اضافه می شوند، همراه با تعریف استراتژی تکرار سایت به سایت شما. این فرآیند به طرز شگفت آوری ساده است، فقط به چند خط در زبان پرس و جو Cassandra نیاز دارد.

استفاده از Managed Cassandra با سایر سرویس های Azure

یک جنبه جالب این سرویس، پشتیبانی از ابزار تحلیلی مبتنی بر Apache Spark Azure، Databricks است. اگر Databricks را در همان VNet نصب کنید سرویس مدیریت‌شده Cassandra خود و سپس از رابط Apache Spark Cassandra برای پیوند دادن به نقاط پایانی خود استفاده کنید، سپس می‌توانید از نوت‌بوک‌های Spark و Databricks برای اجرای تجزیه و تحلیل بر روی داده‌های میزبانی شده توسط Cassandra خود استفاده کنید.

دیدن اینکه تعهد مایکروسافت به عملیات ابری ترکیبی چگونه به کار با داده ها تبدیل می شود جالب است. با ارائه یک مسیر مدیریت شده برای اجرای Cassandra، این شرکت یک پل طبیعی برای داده های NoSQL بین ابزارهای داخلی شما و ابر فراهم می کند. این یک اتصال دو طرفه است که پردازش محلی داده‌های حساس را قادر می‌سازد و در عین حال از مقیاس ابری برای برنامه‌های شما استفاده می‌کند (و در نهایت به مقیاس جهانی Cosmos DB گسترش می‌یابد).

پروتکل‌های تکثیر کاساندرا پل را فراهم می‌کنند، در حالی که Azure به‌روز و ایمن بودن آن را تضمین می‌کند. نتیجه مجموعه‌ای از ابزارهای مؤثر است که بسیاری از مشکلات مرتبط با پیوند ابر و مرکز داده را حل می‌کند، ابزاری که می‌تواند از ابزارهایی مانند Apache Spark برای ارائه آن داده‌ها به سایر سرویس‌های Azure که به داده‌های بزرگ متکی هستند، استفاده کند.