2013-09-05 30 views
5

Hiện tại chúng tôi có một bản sao được đặt với hai thành viên đầy đủ & một trọng tài. Bây giờ, tôi cần phải thúc đẩy trọng tài trở thành thành viên đầy đủ. Cách dễ nhất để thực hiện điều này là gì? Tôi không có nhiều máy chủ để chơi với, vì vậy tôi cần phải làm điều này với các máy tôi nhận được.Chuyển đổi trọng tài thành thành viên đầy đủ

Trả lời

7

Nếu tôi hiểu bạn một cách chính xác: Bạn muốn bí mật trọng tài của bạn thành máy chủ mongo đầy đủ trên cùng một phần cứng. Điều đầu tiên mà bạn muốn xem xét là nếu phần cứng arbiter có thể hỗ trợ cơ sở dữ liệu. Nếu trọng tài có phần cứng ít hơn nhiều thì 2 nút kia có lẽ sẽ không xuất hiện tốt. Nhiều trọng tài được chạy trên các máy không thể hỗ trợ một cơ sở dữ liệu đầy đủ. Nếu bạn muốn làm điều này, bạn sẽ cần thiết lập máy như một nút đầy đủ từ đầu. Không có cách nào để quảng cáo trọng tài cho thành viên đầy đủ một cách tự động.

Để thực hiện việc này: 1) Trước tiên, cần tắt quy trình mongod trên trọng tài. Sau đó, bạn có thể muốn kiểm tra thư mục dữ liệu để đảm bảo rằng nó có thể giữ dữ liệu, như một trọng tài nó không có 2) Kết nối với primary với shell mongo. Bạn có thể sử dụng db.isMaster() trong trình bao để kiểm tra xem nút nào là nút chính nếu bạn không chắc chắn. 3) Sử dụng rs.remove ("") để xóa nó khỏi tập hợp. 4) Khởi động máy chủ mongo mới. Đảm bảo rằng thư mục dữ liệu trống (nó sẽ sao chép từ bộ bản sao). Lệnh này là một cái gì đó giống như mongod --dbpath --replSet. Bạn có thể có các tùy chọn khác cho cấu hình của bạn. 5) Trên chạy chính rs.add() 6) Gọi rs.conf() để xác nhận rằng cấu hình của bạn tốt.

Là một lưu ý phụ, bạn cũng có thể đồng bộ hóa thư mục dữ liệu giữa nút mới và nút chính bằng rsync để đồng bộ hóa ban đầu. Nhưng nếu dữ liệu của bạn là nhỏ chỉ có mongo làm điều đó sẽ được dễ dàng hơn. Nếu bạn cần sử dụng rsync, vui lòng tham khảo tài liệu cho tất cả các yêu cầu. http://docs.mongodb.org/manual/tutorial/expand-replica-set/

Nếu bạn có bất kỳ câu hỏi nào khác, vui lòng cho tôi biết.

nhất, Charlie

+0

Tôi đã cố gắng này mà không cần tắt trọng tài chỉ bằng cách cấu hình lại các thiết lập bản sao, và nó vẫn tiếp tục trạng thái ROLLBACK vô thời hạn. Nhờ câu trả lời này bây giờ tôi biết các trọng tài phải được tắt trước khi thêm nó một lần nữa để các bản sao thiết lập như là một trung học –

+0

@Charlie Page Tôi đang cố gắng để thay thế Arbiter với một mới đầy đủ trung nên tôi làm theo cùng một quá trình. 1. Hủy bỏ trọng tài 2. Thêm trung học mới 3. Chờ cho Trung học mới bắt kịp. Trong quá trình này cho đến khi Node mới này trở thành thứ hai, hai nút của tôi sẽ đầy đủ chức năng (Arbiter đã được loại bỏ) vì vậy muốn xác nhận rằng nó sẽ hoạt động phù hợp. Cảm ơn – viren

Các vấn đề liên quan