Cách tốt nhất để sao chép hệ thống linux trực tiếp


17

Có ai biết một cách để sao chép một hệ thống linux sống? Tôi có một cài đặt trực tiếp chạy một trang web sản xuất. Vấn đề là, tôi cần sao chép nó (mà không đưa nó xuống), và sau đó di chuyển nó (khôi phục) vào một máy ảo. Về cơ bản, tôi đang chuyển từ phần cứng vật lý sang phần cứng ảo.


Bạn sẽ phải đưa nó xuống bất kể, để khởi động nó trên VM.
Ignacio Vazquez-Abrams

Phần cứng vật lý sẽ hoạt động -> nhân bản xảy ra -> di chuyển sang VM -> thay đổi địa chỉ URL -> xong. Tôi cần chi tiết cụ thể về thực hành tốt nhất để nhân bản hệ thống sống.
drewrockshard

4
Bước đầu tiên là cố gắng xác định hệ điều hành nào nó đang chạy.
Tạm dừng cho đến khi có thông báo mới.

Câu trả lời:


12

Trên máy nguồn:

dump -0 -f - / | ssh -c blowfish root@target_machine "cd /; restore -rf -"

Điều này sẽ kết xuất fs trên máy nguồn của bạn, sao chép nó qua ssh và trên máy đích nó sẽ khôi phục nó.

Tất nhiên bạn cần phải lặp lại điều này cho mọi fs.

'blowfish' chỉ để làm cho nó nén và giải nén nhanh hơn.


Điều này dường như làm việc hiệu quả nhất.
drewrockshard

tôi không thể làm cho nó thích chữ thường tôi đã có một phần của công việc này bằng cách tách -rf to -r -f, nhưng bây giờ khôi phục: tùy chọn không hợp lệ - 'r' cat: tùy chọn không hợp lệ - 'r'
rjt

4
Câu trả lời này có còn hiệu lực không? Điều gì sẽ xảy ra nếu bạn có một dịch vụ MySQL đang chạy trên hộp?
MirroredFate

6

VMWare Converter có thể thực hiện hầu hết các hệ điều hành hiện đại mà không cần tắt máy chủ, nhưng như Dennis chỉ ra, chúng tôi thực sự cần biết bạn đang chạy hệ điều hành nào.

Bạn sẽ kết thúc với một hình ảnh ảo của máy chủ khi bạn hoàn thành, thay vì hình ảnh đĩa thô, nhưng nó thường đủ tốt cho hầu hết các công việc, tùy thuộc vào những gì bạn muốn làm với nó sau khi bạn đã thực hiện nó.


Nó đang chạy trên Fedora. FYI, tôi dự định hình ảnh nó để ảo hóa sau này, có lẽ là trong Xen.
Str

Đối với mục đích ảo hóa, nếu tôi không nhầm hình ảnh phải ở trong hình ảnh ảo chứ không phải hình ảnh đĩa thô, phải không?
Str

1
@Str, nếu bạn biết HĐH là gì, vui lòng chỉnh sửa câu hỏi của bạn để nói như vậy và sử dụng các thẻ thích hợp.
John Gardeniers

@Str - điều đó đúng, tuy nhiên bạn đã không đề cập đến việc bạn có định ảo hóa máy hay không, chỉ là bạn muốn sao chép nó.
Mark Henderson

1

Bạn đang chuyển sang nền tảng VM nào? VMWare có một trình chuyển đổi cho Linux . Nó sẽ chuyển đổi một nguồn trên máy.


Cuối cùng, nó ở trong nhà và dựa trên VMWare. Bảng điều khiển là tùy chỉnh, vì vậy về cơ bản chúng tôi sẽ tải CD trực tiếp và mở rộng / trích xuất / vv vào VM. Tôi không chắc mình có thể truy cập vào cơ sở hạ tầng VM để thực hiện trình chuyển đổi VMWare, nhưng tất cả phụ thuộc vào những gì liên quan đến việc này. Tuy nhiên, để kiểm tra, tôi sẽ cố gắng chuyển nó sang một hộp ảo vm chỉ để xem bằng chứng về khái niệm này có hoạt động không.
drewrockshard

Bạn có nghĩ rằng tôi có thể chạy trình chuyển đổi trên máy vật lý và sau đó "nhập" vm đã chuyển đổi vào vmware (không bao giờ sử dụng trình chuyển đổi, vì vậy thuật ngữ của tôi có thể bị tắt).
drewrockshard

Bộ chuyển đổi không thực sự hoạt động theo cách đó. Kiểm tra liên kết này. Nó sẽ cho bạn thấy những điều cơ bản về cách chuyển đổi hoạt động vladan.fr/how-to-p2v-linux-into-vmware-esx-server
Jason Berg

Có cách nào để bỏ qua việc nhập cấu trúc cơ sở hạ tầng vmware để tôi có thể giữ hình ảnh "đã chuyển đổi" cục bộ trên hệ thống của mình hay tôi phải chuyển sang cơ sở hạ tầng khác (không có khả năng cục bộ)?
drewrockshard

Lưu ý rằng Trình chuyển đổi VMWare (hiện tại) yêu cầu Windows, mặc dù nó có thể di chuyển máy tính vật lý Linux sang máy ảo.
Greg Glockner


1

Chúng tôi thường làm điều này:

  • Khởi động máy chủ ảo đích ra khỏi một đĩa cd (hoặc netboot nó)
  • Chuẩn bị các hệ thống tệp trên máy chủ ảo (nghĩa là chuẩn bị (các) đĩa, tạo các hệ thống tệp và gắn kết chúng).
  • Đồng bộ hóa các tệp từ máy chủ vật lý đến máy chủ ảo
  • Cài đặt bộ tải khởi động trên máy chủ đích

Điều này hoạt động rất tốt, miễn là dữ liệu bạn sao chép là tương đối không trạng thái. Ví dụ: nếu bạn đang giao dịch với một máy chủ cơ sở dữ liệu, đặc biệt là một máy chủ có nhiều hoạt động, bạn sẽ cần đảm bảo rằng cơ sở dữ liệu đó không hoạt động trước khi bạn thực hiện việc cắt giảm cuối cùng ... vì vậy, mọi thứ như thế này, sau mọi thứ khác sẵn sàng:

  • Dừng cơ sở dữ liệu
  • Thực hiện một rsync cuối cùng của dữ liệu
  • Tắt máy chủ vật lý
  • Khởi động máy chủ ảo

1
Các bạn sử dụng lệnh rsync nào?
drewrockshard

0

Hãy xem VMware Converter (miễn phí nếu bạn có vCenter) hoặc mảng Spin (một trong những sản phẩm của họ là bộ chuyển đổi).

Tấm Spin sẽ làm cho một máy sống, với thời gian chết tối thiểu để cắt.

Với trình chuyển đổi VMware, nó sẽ thực hiện một máy trực tiếp (nếu có cơ sở dữ liệu thì nó có thể không đồng bộ) chỉ cần không khởi động VM khi kết thúc. Sau đó ngắt kết nối vNIC và sau đó khởi động máy, đăng nhập thông qua bảng điều khiển và thay đổi IP, v.v. Sau đó kết nối lại vNIC.


0

Không thể có được một ảnh chụp nhanh nhất quán mà không dừng tất cả các hoạt động có thể thay đổi trạng thái của hệ thống.

Trừ khi ứng dụng được thiết kế rõ ràng để phù hợp với loại hoạt động này (tức là tất cả quá trình xử lý được xử lý qua tin nhắn có thể xếp hàng), không thể có được một ảnh chụp nhanh nhất quán mà không làm giảm hệ thống (hoặc ít nhất là vô hiệu hóa thành phần giao dịch).

Tuy nhiên, có thể giảm cửa sổ thời gian để chụp nhanh hệ thống một cách đáng kể (ví dụ: bằng cách xóa gương khỏi bộ RAID sau đó kết nối lại ở nơi khác). Và thời gian tạo ảnh chụp càng ngắn, giao dịch sẽ càng ít có khả năng kéo dài hoạt động.

Và hầu hết các hệ thống tập tin / DBS sẽ hỗ trợ một số loại nhật ký sẽ cho phép hầu hết các hoạt động bị hỏng được phục hồi hoặc khôi phục.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.