Bản đồ mongodb di chuyển trực tiếp
Hướng dẫn này mô tả và triển khai quá trình di chuyển từ bộ bản sao MongoDB tự quản lý có chứa cơ sở dữ liệu sang cụm được quản lý đầy đủ trong MongoDB Atlas bằng cách sử dụng Dịch vụ di chuyển trực tiếp Atlas của MongoDB (Atlas Live Migration) Show
Hướng dẫn này dành cho kiến trúc sư cơ sở dữ liệu, quản trị viên cơ sở dữ liệu và kỹ sư cơ sở dữ liệu quan tâm đến dịch vụ MongoDB được lưu trữ đầy đủ hoặc chịu trách nhiệm di chuyển cơ sở dữ liệu MongoDB trong bản sao MongoDB được đặt thành cụm MongoDB Atlas mục tiêu
Hướng dẫn này sử dụng bản sao MongoDB được đặt làm nguồn. Di chuyển một cụm MongoDB đã phân mảnh sang MongoDB Atlas không được đề cập trong hướng dẫn này. Sự khác biệt về kiến trúc giữa bộ bản sao MongoDB và cụm MongoDB được phân đoạn được giải thích trong Stack Exchange này. Quản trị viên cơ sở dữ liệu đăng Để hoàn thành quá trình di chuyển cho hướng dẫn này, bạn sử dụng Atlas Live Migration, không phải tiện ích Atlas 6. Tiện ích 6 yêu cầu cài đặt một tác nhân trên môi trường MongoDB nguồn và hoạt động ở mức trừu tượng thấp hơnThiết lập di chuyển trong hướng dẫn này là một bản sao ngữ nghĩa. Dữ liệu không được chuyển đổi trong quá trình di chuyển và không xảy ra quá trình hợp nhất cơ sở dữ liệu hoặc phân chia lại dữ liệu. Bạn có thể triển khai chức năng ngoài ngữ nghĩa bản sao với công nghệ tích hợp như Striim Quá trình di chuyển trong hướng dẫn này là quá trình di chuyển một chiều từ bản sao MongoDB nguồn được đặt thành cụm MongoDB Atlas đích. Sau khi quá trình chuyển đổi từ bản sao MongoDB nguồn được đặt thành cụm đích hoàn tất, cơ sở dữ liệu nguồn không được cập nhật với các thay đổi đối với cụm đích. Vì vậy, nếu bạn triển khai giải pháp này trong môi trường sản xuất, bạn không thể chuyển ứng dụng của mình sang cơ sở dữ liệu nguồn cập nhật trong dự phòng. Để biết thêm thông tin về quy trình dự phòng, hãy xem Di chuyển cơ sở dữ liệu. Khái niệm và nguyên tắc (Phần 2) chi phíHướng dẫn này sử dụng các thành phần có thể thanh toán sau của Google Cloud
Để hoàn thành hướng dẫn này, bạn không thể sử dụng bậc miễn phí của MongoDB Atlas. Các loại máy khả dụng trong bậc miễn phí không hỗ trợ Atlas Live Migration. Loại máy được yêu cầu tối thiểu (M10 tại thời điểm viết bài này) có chi phí dịch vụ hàng giờ trong MongoDB Atlas. Để tạo ước tính giá, hãy truy cập MongoDB Atlas Pricing, nhấp vào Google Cloud Platform, sau đó làm theo hướng dẫn. Nếu bạn triển khai quá trình di chuyển này trong sản xuất, chúng tôi khuyên bạn nên sử dụng phiên bản được lưu trữ thông thường của MongoDB Atlas Khi bạn hoàn thành hướng dẫn này, bạn có thể tránh tiếp tục thanh toán bằng cách xóa các tài nguyên bạn đã tạo. Để biết thêm thông tin, xem Trước khi bắt đầu
Sơ đồ sau đây cho thấy kiến trúc triển khai mà bạn tạo trong hướng dẫn này Mũi tên biểu thị đường dẫn di chuyển dữ liệu từ bộ bản sao MongoDB nguồn chạy trên Compute Engine đến cụm mục tiêu chạy trong MongoDB Atlas trên Google Cloud Kiến trúc triển khai chứa các thành phần sau
Mặc dù hướng dẫn này sử dụng bộ bản sao MongoDB tự quản lý trên các phiên bản Compute Engine, nhưng bạn cũng có thể triển khai bộ bản sao MongoDB nguồn trong một trung tâm dữ liệu tại chỗ hoặc một môi trường đám mây khác Atlas Live Migration hỗ trợ một. Trong quá trình di chuyển từ bộ bản sao MongoDB nguồn, ứng dụng của bạn vẫn có thể truy cập cơ sở dữ liệu nguồn mà không bị ảnh hưởng. Sau quá trình di chuyển , Atlas Live Migration sẽ thay đổi khi chúng xảy ra sau khi quá trình di chuyển bắt đầu Để thực hiện chuyển đổi từ cơ sở dữ liệu nguồn sang cụm đích sau khi tập dữ liệu ban đầu được di chuyển, bạn thực hiện theo các bước sau
Sau khi tất cả dữ liệu được di chuyển, Atlas Live Migration sẽ thông báo cho bạn về dòng trạng thái tiến trình trong giao diện người dùng. Tại thời điểm này, quá trình di chuyển dữ liệu đã hoàn tất và các hệ thống ứng dụng có thể bắt đầu truy cập cụm mục tiêu dưới dạng hệ thống bản ghi mới Tạo bộ bản sao MongoDB tự quản lýĐầu tiên, bạn cài đặt bộ bản sao MongoDB trên Google Cloud. Cơ sở dữ liệu này đóng vai trò là cơ sở dữ liệu nguồn của bạn. Tiếp theo, bạn kiểm tra xem cơ sở dữ liệu nguồn của mình có đáp ứng tất cả các điều kiện bắt buộc không Ghi chú. Lý do hướng dẫn này bao gồm các bước kiểm tra các điều kiện tiên quyết là để bạn chuẩn bị cho bước này trong môi trường sản xuất. Ngay cả khi bản sao MongoDB đã tồn tại trong môi trường sản xuất của bạn, bạn vẫn cần kiểm tra các điều kiện tiên quyết.Sau khi bạn hoàn thành kiểm tra điều kiện tiên quyết, bạn phải kích hoạt xác thực và khởi động lại phiên bản MongoDB nguồn. Cuối cùng, để kiểm tra quá trình di chuyển, bạn thêm một bộ dữ liệu mẫu vào phiên bản MongoDB nguồn được di chuyển sang cơ sở dữ liệu đích Cài đặt bộ bản sao MongoDB
Bạn đã tạo và truy cập bộ bản sao MongoDB của mình và xác nhận rằng nó đang hoạt động Kiểm tra các điều kiện tiên quyết cho cơ sở dữ liệu nguồnAtlas Live Migration yêu cầu bộ bản sao MongoDB nguồn đáp ứng các tiêu chí hoặc điều kiện tiên quyết về cấu hình cụ thể. Các kiểm tra được nêu trong Tổng quan về di chuyển Atlas và trong. Các lệnh sau được lấy từ các tài nguyên này. Sau khi bạn xác minh các điều kiện tiên quyết này và thực hiện bất kỳ thay đổi cần thiết nào, cơ sở dữ liệu nguồn của bạn sẽ yêu cầu Ghi chú. Mặc dù bộ bản sao MongoDB nguồn mà bạn đã cài đặt như một phần của hướng dẫn này tuân thủ phiên bản bắt buộc, bạn vẫn cần kiểm tra các điều kiện tiên quyết trong môi trường sản xuất. Vì lý do này, chúng tôi đã đưa vào đây một quy trình để chứng minh rằng việc kiểm tra.Để kiểm tra xem tất cả các điều kiện tiên quyết có được đáp ứng hay không, hãy làm như sau
Bật xác thực và khởi động lại bộ bản sao MongoDBĐể bật xác thực, cần có các tệp chính ngoài việc tạo quản trị viên. Các bước sau đây cho thấy cách tạo các tệp chính theo cách thủ công. Trong môi trường sản xuất, bạn có thể cân nhắc sử dụng tập lệnh để tự động hóa quy trình
Chèn dữ liệu mẫuTrong các bước sau, bạn chèn dữ liệu mẫu vào cơ sở dữ liệu nguồn rồi xác minh rằng tài liệu đã được chèn thành công
Sau khi quá trình di chuyển cơ sở dữ liệu được thiết lập và bắt đầu, các tài liệu này sẽ được di chuyển đến cụm mục tiêu trong MongoDB Atlas Tạo một cụm trong MongoDB AtlasMột bộ bản sao MongoDB được gọi là một cụm trong MongoDB Atlas. Nếu bạn chưa thiết lập cụm làm cơ sở dữ liệu đích, hãy làm theo các bước trong phần này. Các bước này dựa trên tài liệu MongoDB. Nếu bạn đã thiết lập một cụm làm cơ sở dữ liệu đích, bạn có thể bỏ qua phần này Ghi chú. Hướng dẫn này sử dụng phiên bản MongoDB Atlas với chi phí hàng giờ. Nếu bạn triển khai quá trình di chuyển này trong sản xuất, chúng tôi khuyên bạn nên sử dụng phiên bản được lưu trữ thông thường của MongoDB Atlas. Để biết thêm thông tin, xem.
Cụm mục tiêu được thiết lập và chạy trong MongoDB Atlas Kiểm tra chuyển đổi dự phòng của cụm MongoDB AtlasSau khi quá trình di chuyển hoàn tất, cụm trong MongoDB Atlas thực hiện khởi động lại liên tục. Lần lượt từng thành viên trong cụm khởi động lại. Để đảm bảo quy trình này hoạt động, hãy kiểm tra chuyển đổi dự phòng bằng cách làm theo các bước trong tài liệu MongoDB Bắt đầu di chuyển trực tiếpĐể di chuyển dữ liệu từ nguồn sang cơ sở dữ liệu đích, hãy làm như sau
Quá trình tải ban đầu từ bộ bản sao MongoDB hiện đã hoàn tất. Bước tiếp theo là xác minh rằng tải ban đầu thành công Sau khi quá trình di chuyển ban đầu hoàn tất, MongoDB Atlas cung cấp ước tính số giờ còn lại cho đến khi bạn phải thực hiện quá trình chuyển đổi sang cụm mục tiêu. Bạn cũng có thể nhận được email từ MongoDB cung cấp cho bạn số giờ còn lại, khả năng kéo dài thời gian đó và cảnh báo rằng nếu việc chuyển đổi cuối cùng không được thực hiện trong thời gian nhất định, quá trình di chuyển sẽ bị hủy Xác minh việc di chuyển cơ sở dữ liệuĐiều quan trọng là phải thiết kế và triển khai chiến lược xác minh di chuyển cơ sở dữ liệu để xác nhận rằng quá trình di chuyển cơ sở dữ liệu thành công. Mặc dù chiến lược xác minh cụ thể phụ thuộc vào trường hợp sử dụng cụ thể của bạn, chúng tôi khuyên bạn nên thực hiện các kiểm tra này
Đầu tiên, xác minh rằng tải ban đầu thành công
Tiếp theo, xác minh rằng các thay đổi đang diễn ra đối với cơ sở dữ liệu nguồn được phản ánh trong cơ sở dữ liệu đích
Bạn đã xác minh rằng tất cả dữ liệu gốc và mọi thay đổi đang diễn ra đối với nguồn đều được Atlas Live Migration tự động di chuyển đến đích Kiểm tra cụm mục tiêu Atlas của bạnTrong môi trường sản xuất, thử nghiệm là tối quan trọng. Cần kiểm tra các ứng dụng truy cập cơ sở dữ liệu mục tiêu để đảm bảo rằng chúng hoạt động bình thường. Phần này thảo luận về một số chiến lược thử nghiệm Kiểm tra các ứng dụng với cơ sở dữ liệu đích trong quá trình di chuyểnNhư phần trước đã trình bày, bạn có thể thực hiện kiểm tra ứng dụng trong quá trình di chuyển cơ sở dữ liệu đang diễn ra. Cách tiếp cận này có thể hoạt động nếu các ứng dụng không thay đổi mục tiêu theo cách nó xung đột với dữ liệu được di chuyển từ cơ sở dữ liệu nguồn. Phương pháp này có phải là một tùy chọn cho bạn hay không tùy thuộc vào môi trường và các phụ thuộc của bạn. Nếu ứng dụng thử nghiệm ghi dữ liệu vào cơ sở dữ liệu đích, nó có thể xung đột với quá trình di chuyển đang diễn ra Thử nghiệm các ứng dụng với cơ sở dữ liệu đích tạm thờiNếu bạn không thể thử nghiệm các ứng dụng trong quá trình di chuyển cơ sở dữ liệu sản xuất, thì bạn có thể di chuyển dữ liệu sang cơ sở dữ liệu đích tạm thời mà bạn chỉ sử dụng để thử nghiệm, sau đó xóa các mục tiêu thử nghiệm sau khi di chuyển thử nghiệm Đối với phương pháp này, bạn dừng quá trình di chuyển thử nghiệm tại một thời điểm nào đó (như thể quá trình di chuyển cơ sở dữ liệu đã hoàn tất) và thử nghiệm các ứng dụng dựa trên các cơ sở dữ liệu thử nghiệm này. Sau khi kiểm tra xong, bạn xóa cơ sở dữ liệu đích và bắt đầu di chuyển cơ sở dữ liệu sản xuất để di chuyển dữ liệu sang cơ sở dữ liệu đích vĩnh viễn. Lợi ích của chiến lược này là cơ sở dữ liệu đích có thể được đọc và ghi vì chúng chỉ dành cho thử nghiệm Kiểm tra các ứng dụng với cơ sở dữ liệu đích sau khi quá trình di chuyển hoàn tấtNếu cả hai chiến lược đầu tiên này đều không khả thi, thì chiến lược còn lại là kiểm tra ứng dụng trên cơ sở dữ liệu sau khi quá trình di chuyển hoàn tất. Sau khi tất cả dữ liệu có trong cơ sở dữ liệu đích, hãy kiểm tra các ứng dụng trước khi cung cấp chúng cho người dùng. Nếu kiểm thử bao gồm ghi dữ liệu, thì điều quan trọng là dữ liệu kiểm thử phải được ghi chứ không phải dữ liệu sản xuất, để tránh sự không nhất quán của dữ liệu sản xuất. Dữ liệu thử nghiệm phải được xóa sau khi hoàn thành thử nghiệm để tránh sự không nhất quán dữ liệu hoặc dữ liệu thừa trong cơ sở dữ liệu đích Chúng tôi khuyên bạn nên sao lưu cơ sở dữ liệu đích trước khi mở chúng để các hệ thống ứng dụng truy cập sản xuất. Bước này giúp đảm bảo rằng có một điểm bắt đầu nhất quán mà bạn có thể tạo lại nếu cần Cắt từ bản sao MongoDB nguồn được đặt thành cụm đíchSau khi bạn hoàn thành bất kỳ thử nghiệm nào và xác minh rằng các thay đổi đang diễn ra được phản ánh trong cơ sở dữ liệu đích, bạn có thể lập kế hoạch chuyển đổi Trước tiên, bạn cần dừng bất kỳ thay đổi nào đối với cơ sở dữ liệu nguồn để Atlas Live Migration có thể chuyển các thay đổi chưa được di chuyển sang mục tiêu. Sau khi tất cả các thay đổi được ghi lại trong mục tiêu, bạn có thể bắt đầu quá trình chuyển đổi Atlas Live Migration. Sau khi quá trình đó hoàn tất, bạn có thể chuyển máy khách từ cơ sở dữ liệu nguồn sang cơ sở dữ liệu đích
Bạn đã di chuyển thành công bộ bản sao MongoDB của mình sang cụm MongoDB Atlas Chuẩn bị một chiến lược dự phòngSau khi quá trình chuyển đổi kết thúc, cụm mục tiêu là hệ thống bản ghi; . Tuy nhiên, bạn có thể muốn quay lại cơ sở dữ liệu nguồn trong trường hợp xảy ra lỗi nghiêm trọng trên cơ sở dữ liệu đích mới. Ví dụ: lỗi có thể xảy ra nếu logic nghiệp vụ trong ứng dụng không được thực thi trong quá trình thử nghiệm và sau đó không hoạt động bình thường. Một lỗi khác là khi hành vi hiệu suất hoặc độ trễ không khớp với cơ sở dữ liệu nguồn và gây ra lỗi Để tránh những lỗi như vậy, bạn có thể muốn giữ cho cơ sở dữ liệu nguồn ban đầu được cập nhật với những thay đổi của cơ sở dữ liệu đích. Atlas Live Migration không cung cấp cơ chế dự phòng. Để biết thêm thông tin về các chiến lược dự phòng, hãy xem Di chuyển cơ sở dữ liệu. Khái niệm và nguyên tắc (Phần 2) Dọn dẹpXóa dự án Đám mâyĐể tránh phát sinh phí đối với tài khoản Google Cloud của bạn đối với các tài nguyên được sử dụng trong hướng dẫn này, bạn có thể xóa dự án Đám mây mà bạn đã tạo cho hướng dẫn này
Nếu bạn dự định khám phá nhiều hướng dẫn và bắt đầu nhanh, thì việc sử dụng lại các dự án có thể giúp bạn tránh vượt quá giới hạn hạn mức dự án Tạm dừng hoặc chấm dứt cụm MongoDB AtlasĐể tránh phải trả thêm phí cho cụm MongoDB Atlas, bạn cần tạm dừng hoặc chấm dứt cụm. Để biết thêm thông tin về các hàm ý thanh toán, hãy xem Tạm dừng hoặc chấm dứt một cụm |