نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه
مرگ، طلاق و جابه‌جایی سه مورد از استرس‌زاترین موقعیت‌های زندگی هر فرد هستند.
"داستان ترسناک آمریکایی".

- آندریوخ، من از خانه می روم، کمکم کن حرکت کنم، همه چیز با من جور در نمی آید:(
- باشه چند تا هستن؟
— تن* 7-8...
*تن (جارگ) - ترابایت.

اخیراً، هنگام گشت و گذار در اینترنت، متوجه شدم که با وجود در دسترس بودن در Habré و منابع مشابه بسیاری از مواد در مورد روش ها و مدل های انتقال انواع مختلف داده ها، سؤالاتی در مورد این موضوع هنوز در اینترنت ظاهر می شود. که به دلایلی همیشه پاسخ های دقیق دریافت نمی کنند. این واقعیت باعث شد که روزی یادداشت هایی در مورد اجرای یک راه حل مشابه جمع آوری کنم و آنها را در قالب یک پست جداگانه مرتب کنم.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

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

طراحی

همانطور که در نتیجه کار طراحی و بررسی مشخص شد، کیفیت و کارایی فرآیند مهاجرت نه تنها به ویژگی های فنی "سایت هایی" که داده ها در آن قرار دارند یا قرار خواهند گرفت، بلکه به موقعیت فیزیکی آنها نیز بستگی دارد.

مدیر مهاجرت یک گره محاسباتی است که "منطق" فرآیند - نرم افزار مدیریت مهاجرت - بر روی آن کار می کند.

یعنی دو مدل برای قرار دادن «مدیر مهاجرت» وجود دارد.

  • مدل A. اگر حداقل یکی از سایت ها فقط از داخل شبکه محلی قابل دسترسی باشد، ارزش دارد که یک "مدیر مهاجرت" را در همان شبکه قرار دهید. از آنجا که عملکرد و زمان مهاجرت همچنان توسط سرعت و زمان آپدیت کانال اتصال سایت ها محدود است.
  • مدل B. اگر هم منبع و هم گیرنده داده به خارج از شبکه محلی دسترسی داشته باشند، «مدیر مهاجرت» باید در جایی قرار گیرد که سرعت و زمان آپدیت کانال بین آنها به وضوح بهتر باشد.

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

ابتدا باید بفهمم آیا نرم افزاری که استفاده می کنم از ابر پشتیبانی می کند یا خیر: Mail.ru، Yandex، Google Drive، Mega، Nextloud?

پاسخ کوتاه بله است!"

من استفاده می کنم روکلون.

Rclone - rsync برای ذخیره سازی ابری. نرم افزار منبع باز طراحی شده برای همگام سازی فایل ها و پوشه ها با بیش از 45 نوع و نوع ذخیره سازی.

اینجا تنها تعداد کمی از آنها هستند:
- سیستم ذخیره‌سازی اشیا (OSS) ابری علی‌بابا (Aliyun)
- آمازون S3
- سف
-فضاهای اقیانوس دیجیتال
- دراپ باکس
- Google Cloud Storage
- درایو گوگل
- Google Photos
- HTTP
-IBM COS S3
- Mail.ru Cloud
-عظیم
- مایکروسافت Azure Blob Storage
- مایکروسافت وان درایو
- مینیو
- Nextcloud
- سوئیفت Openstack
- Oracle Cloud Storage
- ownCloud
- فایل های ابری Rackspace
- rsync.net
- SFTP
- WebDAV
- دیسک Yandex

کارکرد اصلی:
- بررسی یکپارچگی فایل ها با استفاده از هش های MD5/SHA1.
- ذخیره مُهرهای زمانی برای ایجاد/تغییر فایل‌ها.
- پشتیبانی از همگام سازی جزئی
- کپی کردن فقط فایل های جدید
- همگام سازی (یک طرفه).
- بررسی فایل ها (توسط هش).
- امکان همگام سازی از یک حساب ابری به حساب دیگر.
- پشتیبانی از رمزگذاری
- پشتیبانی از کش کردن فایل های محلی
- امکان نصب سرویس های ابری از طریق FUSE.

من به تنهایی اضافه می کنم که Rclone همچنین به من کمک می کند تا سهم بزرگی از مشکلات مربوط به خودکارسازی پشتیبان گیری از داده ها را حل کنم. پروژه "Väinämöinen".

وظیفه بعدی انتخاب یک مدل قرار دادن "مدیر مهاجرت" است.

همه منابع داده، که خدمات مختلف ابری عمومی هستند، از طریق اینترنت قابل دسترسی هستند. از جمله از طریق API. از هر سه گیرنده دو نفر همین کار را می کنند. مشخص نیست خود Nextcloud در کجا مستقر است و چه دسترسی هایی برای آن در دسترس است؟

من پنج گزینه ممکن را شمردم:

  1. در سرور خود در شبکه خانگی/شرکتی شما.
  2. در سرور خود در یک رک اجاره ای مرکز داده ارائه دهنده خدمات.
  3. در سروری که از یک ارائه دهنده خدمات اجاره شده است.
  4. در سرور مجازی (VDS/VPS) با ارائه دهنده سرویس/هاست 
  5. از ارائه دهنده خدمات طبق مدل SaaS

با توجه به اینکه Nextcloud همچنان نرم افزاری برای ایجاد و استفاده از فضای ذخیره سازی ابری است، به جرات می توان گفت که دسترسی به آن از طریق اینترنت در هر پنج گزینه موجود است. و در این مورد، مدل بهینه برای قرار دادن "مدیر مهاجرت" خواهد بود - مدل B.

با توجه به مدل انتخاب شده به عنوان یک پلت فرم برای "مدیر مهاجرت"، من یکی از گزینه های بهینه را از دیدگاه خود انتخاب خواهم کرد - یک سرور مجازی در مرکز داده M9 بزرگترین نقطه تبادل ترافیک اینترنت روسیه MSK-IX.

سومین تصمیمی که باید گرفته شود، تصمیم گیری در مورد پیکربندی سرور مجازی است. 

هنگام انتخاب پارامترهای پیکربندی VDS، باید با عملکرد مورد نیاز هدایت شوید، که بستگی به عرض کانال های بین سایت ها، تعداد و اندازه فایل های در حال جابجایی، تعداد جریان های مهاجرت و تنظیمات دارد. در مورد سیستم عامل، Rclone یک نرم افزار چند پلتفرمی است که بر روی سیستم عامل های مختلف از جمله ویندوز و لینوکس اجرا می شود.

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

ایجاد

بر اساس موارد فوق، هنگام ایجاد نمونه اولیه برای این مقاله، VDS را در پیکربندی زیر انتخاب کردم.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

هزینه 560 روبل در ماه. شامل 15% تخفیف با استفاده از کوپن بدون استرس.

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

Offtopic: اتفاقا برای امنیت بیشتر، این سرور مجازی به یکی از گره ها اختصاص داده شده است شبکه مجازی امن. و دسترسی به آن از طریق RDP فقط از آنجا مجاز است...

پس از ایجاد VDS و دسترسی به دسکتاپ از طریق RDP، اولین کاری که باید انجام دهید این است که محیط را برای Rclone و Web-GUI آماده کنید. آن ها یک مرورگر پیش‌فرض جدید، به عنوان مثال کروم، نصب کنید، زیرا متأسفانه IE 11 که در ابتدا نصب شده بود، همیشه به درستی با نرم‌افزار مورد استفاده کار نمی‌کند. 

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

پس از آماده سازی محیط، آرشیو را با بسته نرم افزاری دانلود کنید Rclone برای ویندوز و آن را باز کنید. 

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

C:UsersAdministrator>cd rclone

پس از انتقال، دستور راه اندازی Rclone را از Web-GUI اجرا می کنیم:

C:UsersAdministratorrclone>rclone rcd --rc-web-gui --rc-user=”login” --rc-pass=”password” -L

که در آن "ورود" و "گذرواژه" ورود و رمز عبوری است که شما مشخص کرده اید، البته بدون نقل قول.

پس از اجرای دستور، ترمینال نمایش داده می شود

2020/05/17 22:34:10 NOTICE: Web GUI exists. Update skipped.
2020/05/17 22:34:10 NOTICE: Serving Web GUI
2020/05/17 22:34:10 NOTICE: Serving remote control on http://127.0.0.1:5572/

و رابط وب گرافیکی Rclone به طور خودکار در مرورگر باز می شود.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

علیرغم اینکه Web-GUI هنوز در مرحله نسخه آزمایشی است و هنوز تمام قابلیت های مدیریت Rclone را که رابط خط فرمان دارد، ندارد، اما قابلیت های آن برای انتقال داده ها کاملاً کافی است. و حتی کمی بیشتر.

تنظیم

مرحله بعدی راه اندازی اتصالات به سایت هایی است که داده ها در آن قرار دارند یا قرار خواهند گرفت. و اولین نفر در ردیف گیرنده اصلی داده خواهد بود - Nextcloud.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

1. برای این کار به بخش مراجعه کنید تنظیمات Web-GUI. 

2. شروع ایجاد یک پیکربندی جدید - دکمه پیکربندی جدید.

3. نام سایت - فیلد را تنظیم کنید نام این درایو (برای مرجع شما): Nextcloud.

4. انتخاب نوع یا نوع ذخیره سازی انتخاب کنید: برای Nextcloud و Owncloud، رابط اصلی تبادل داده WebDAV است.

5. بعد، بر روی کلیک کنید مرحله 2: راه اندازی درایو، لیست پارامترهای اتصال را باز کرده و آن را پر کنید. 

- 5.1. URL میزبان http برای اتصال به URL - پیوند ابرمتن رابط WebDAV. در Nextcloud آنها در تنظیمات - گوشه سمت چپ پایین رابط قرار دارند.
- 5.2. نام سایت/سرویس/نرم افزار Webdav که استفاده می کنید - نام رابط WebDAV. این فیلد برای خودتان اختیاری است تا در صورت وجود چنین ارتباطاتی گیج نشوید.
- 5.3 نام کاربری - نام کاربری برای مجوز
- 5.4. کلمه عبور - رمز عبور برای مجوز
- 5.5. توکن حامل به جای کاربر/گذر (مثلاً Macaroon) و فرمان اجرا برای دریافت توکن حامل در گزینه های پیشرفته پارامترهای اضافی و دستورات مجوز وجود دارد. آنها در Nextcloud من استفاده نمی شوند.

6. کلیک بعدی ایجاد پیکربندی و برای اطمینان از اینکه پیکربندی ایجاد شده است، به بخش بروید پیکربندی رابط وب ... از طریق همین صفحه، پیکربندی جدید ایجاد شده را می توان حذف یا ویرایش کرد.

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

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

برای متقاعد کردن بیشتر، می توانید یک پوشه ایجاد/حذف کنید یا یک فایل را از طریق رابط وب دانلود/حذف کنید.

دومین پلتفرمی که باید متصل شود دیسک Yandex خواهد بود.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

  • چهار مرحله اول مشابه فرآیند اتصال Nextcloud است.
  • بعد، همه چیز را همانطور که هست می گذاریم، یعنی فیلدها را داخل مرحله 2: راه اندازی درایو آنها را خالی می گذاریم و در گزینه های پیشرفته چیزی را تغییر نمی دهیم.
  • فشار می دهیم Config را ایجاد کنید.
  • صفحه مجوز Yandex در مرورگر باز می شود، پس از آن پیامی در مورد اتصال موفقیت آمیز و پیشنهاد بازگشت به Rclone دریافت می کنید.
  • کاری که ما انجام می دهیم این است که بخش را بررسی کنیم پیکربندی.

مهاجرت

هنگامی که ما دو سایت به هم متصل کنیم، می توانیم داده ها را بین آنها انتقال دهیم. این فرآیند به خودی خود شبیه بررسی عملکرد اتصال به Nextcloud است که قبلاً انجام دادیم.

  • قابل اعتماد و متخصص جستجوگر.
  • انتخاب یک الگو 2-سایت بای ساید.
  • در هر یک از ریموت نام سایت خود را مشخص کنید
  • فشار می دهیم باز کن.
  • ما فهرستی از فایل ها و پوشه ها را برای هر یک از آنها می بینیم.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

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

مکانیسم اضافه کردن سایت‌های باقی‌مانده و انتقال داده‌ها بین آنها مشابه عملیات انجام شده در بالا است. اگر در حین کار با خطاهایی مواجه شدید، می توانید جزئیات مربوط به آنها را در ترمینالی که Rclone با Web-GUI در آن اجرا می شود مطالعه کنید.

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

PS اگر با جمله آخر موافق نیستید، در نظرات بنویسید: چه "موضوع پوشش داده نشده است" و در چه زمینه ای ارزش ادامه دادن دارد.

نحوه انتقال فایل ها از یک ابر به ابر دیگر بدون رفتن به رایانه

منبع: www.habr.com

اضافه کردن نظر