OffshoreVps
Hướng dẫn18 thg 10 20268 phút đọcBởi đội ngũ OffshoreVps

Chuyển website sang VPS mới mà không gián đoạn

Di chuyển website từng bước: hạ TTL của DNS, sao chép tệp và cơ sở dữ liệu hai lần, kiểm tra bằng mục hosts, chuyển DNS và giữ máy chủ cũ đến khi lưu lượng ngừng đổ về.

Phần lớn các cuộc di chuyển khó chịu là do sai thứ tự chứ không phải lỗi kỹ thuật. Nhiều người đổi DNS trước rồi mới phát hiện cơ sở dữ liệu đã cũ. Hãy làm theo thứ tự dưới đây và khách truy cập sẽ không nhận ra việc chuyển đổi.

Cửa sổ terminal trên VPS hiển thị các lệnh dùng để di chuyển website không gián đoạn, bắt đầu bằng “rsync -aHAX --info=progress2 -e ssh /var/www/ us”
Loại lệnh bạn sẽ chạy trên máy chủ của mình trong hướng dẫn này.

Bước 1: giảm TTL của DNS từ sớm

Ít nhất một ngày trước khi chuyển, hãy đặt TTL của các bản ghi A và AAAA thành 300 giây. Các bộ nhớ đệm đang giữ giá trị cũ cần thời gian để hết hạn, nên bước này không thể làm gấp vào đúng ngày chuyển.

Bước 2: dựng máy chủ mới trước

Tạo VPS mới, áp dụng danh sách kiểm tra tăng cường bảo mật và cài cùng một bộ phần mềm: máy chủ web, phiên bản PHP hoặc Node, hệ quản trị cơ sở dữ liệu. Phiên bản trùng khớp sẽ loại bỏ phần lớn các bất ngờ. Hãy sao chép cả cấu hình, không chỉ nội dung.

Bước 3: sao chép tệp

rsync -aHAX --info=progress2 -e ssh /var/www/ user@NEW_IP:/var/www/

Hãy chạy một lần ngay bây giờ. Lần đầu sẽ chậm nhưng các lần lặp lại rất nhanh, đó chính là mục đích.

Các bước của hướng dẫn này theo thứ tự: 1. hạ TTL của DNS từ sớm; 2. dựng máy chủ mới trước; 3. sao chép tệp; 4. kiểm tra trước khi chuyển bất kỳ ai sang; 5. đóng băng, đồng bộ lần cuối, chuyển đổi; 6. theo dõi, rồi loại bỏ máy chủ cũ
Các bước trong hướng dẫn này, theo thứ tự.

Bước 4: sao chép cơ sở dữ liệu

# on the old server
mysqldump --single-transaction --routines --triggers mydb | gzip > mydb.sql.gz
scp mydb.sql.gz user@NEW_IP:~/
# on the new server
gunzip < mydb.sql.gz | mysql mydb

Đây là lần chạy thử. Nó cho bạn một bản sao hoạt động để kiểm tra.

Bước 5: kiểm tra trước khi chuyển bất kỳ ai sang

Trỏ máy tính của bạn tới máy chủ mới bằng cách sửa tệp hosts: thêm NEW_IP example.com www.example.com. Duyệt trang web, đăng nhập, gửi một biểu mẫu và đặt một đơn hàng thử. Sửa những gì hỏng trong khi công chúng vẫn thấy máy chủ cũ. Cài chứng chỉ TLS bằng thử thách DNS để nó hoạt động ngay trước thời điểm chuyển đổi.

Bước 6: đóng băng, đồng bộ lần cuối, chuyển đổi

  1. Đưa trang web cũ vào chế độ bảo trì hoặc chỉ đọc.
  2. Lặp lại rsync cùng việc xuất và nhập cơ sở dữ liệu.
  3. Đổi các bản ghi DNS sang IP mới.
  4. Xóa dòng trong tệp hosts và kiểm tra từ một mạng khác.

Khoảng thời gian chỉ đọc thường chỉ vài phút. Với cửa hàng hoặc trang web có đăng nhập, hãy lên lịch vào lúc ít người dùng.

Bước 7: theo dõi, rồi cho máy chủ cũ nghỉ hưu

Hãy giữ máy cũ trong vài ngày. Một số trình phân giải bỏ qua TTL nên vẫn sẽ có lưu lượng nhỏ giọt đến máy cũ. Nếu có thể, hãy chuyển tiếp hoặc proxy lưu lượng đó sang IP mới, kiểm tra nhật ký, rồi tăng TTL trở lại giá trị bình thường. Hãy tạo bản sao lưu mới từ máy chủ mới trước khi xóa máy cũ.

Đồng thời chuyển sang một khu vực pháp lý khác? Hãy so sánh các lựa chọn trong so sánh các khu vực pháp lý lưu trữ offshore trước.