Điểm:2

Di chuyển máy chủ web sang trung tâm dữ liệu mới và IP mới

lá cờ in

Tôi có một máy chủ web lưu trữ hơn 200 tên miền nhưng máy chủ này cần được chuyển đến một trung tâm dữ liệu khác và nhận địa chỉ IP mới. Nhưng vì tất cả cài đặt DNS phải được cập nhật theo cách thủ công nên tôi đã nghĩ xem liệu bạn có thể thiết lập một loại proxy minh bạch nào đó tại địa chỉ IP cũ để chuyển tiếp tất cả lưu lượng truy cập http/https sang IP mới hay không. Vì vậy, khách truy cập không phát hiện ra việc chuyển sang DNS đang được sửa chữa.

Suy nghĩ đầu tiên của tôi là sử dụng nginx cho nó, nhưng nghĩ rằng nó sẽ gây ra sự cố với chứng chỉ SSL trên miền. Có một cách tốt để giải quyết vấn đề?

lá cờ cn
Chúng ta nói về bao nhiêu địa chỉ IP? Một? Và tại sao bạn không sử dụng CNAME cho điều đó để một thay đổi đơn giản sẽ chuyển hướng tất cả các miền?
djdomi avatar
lá cờ za
lúc đầu, hãy giảm ttl của bất kỳ bản ghi nào xuống mức tối thiểu, sau đó đợi trong 3-5 ngày, hãy xác minh điều đó. thực hiện đồng bộ hóa ban đầu máy chủ cũ sang máy chủ mới của bạn. đặt tên miền cục bộ thành IP mới thông qua máy chủ tìm kiếm bất kỳ lỗi nào. thường sẽ không có vấn đề gì khi có cùng một chứng chỉ trên 2 máy chủ cùng một lúc. xác minh và nếu không sao, bạn có thể thay đổi mục nhập thực, hãy nhắc Xóa mục nhập máy chủ
Guntram Blohm avatar
lá cờ in
Giả sử máy chủ của bạn chạy linux, bạn thậm chí không cần chạy nginx. Chỉ cần chạy một cái gì đó như `socat -T 900 TCP-LISTEN:443,reuseaddr,fork TCP-CONNECT:newserver:443` trên máy chủ cũ (đảm bảo rằng nó khởi động lại, tồn tại khi khởi động lại, ...). Điều đó sẽ chuyển tiếp kết nối trên cơ sở TCP và giúp bạn không phải đau đầu khi định cấu hình đúng nginx.
Điểm:5
lá cờ us

Tôi sử dụng quy trình di chuyển sau trong những trường hợp này:

  1. Thay đổi DNS TTL thành giá trị tối thiểu
  2. Đợi DNS TTL cập nhật
  3. Sao chép khóa/chứng chỉ sang máy chủ mới
  4. Đặt trang web ở chế độ bảo trì
  5. Đồng bộ hóa tệp/cơ sở dữ liệu với máy chủ mới
  6. Thiết lập proxy ngược từ máy chủ cũ sang máy chủ mới
  7. Xóa chế độ bảo trì trên máy chủ mới
  8. Thay đổi các mục DNS để trỏ đến máy chủ mới

Bước 6 đảm bảo rằng người dùng cuối không kết thúc với máy chủ cũ mặc dù DNS của họ đã phân giải thành IP máy chủ cũ.

Sau đó, hãy tiếp tục theo dõi nhật ký máy chủ cũ để xem khi nào lưu lượng truy cập đã dừng ở đó. Sau đó, bạn có thể tháo dỡ thiết lập cũ.

Proxy ngược được thiết lập bằng cách sử dụng proxy_pass chỉ thị. Nếu địa chỉ IP của người dùng cuối là thông tin quan trọng, bạn cần thêm nó vào tiêu đề HTTP trên máy chủ cũ -> yêu cầu máy chủ mới và yêu cầu máy chủ mới sử dụng giá trị tiêu đề làm địa chỉ IP.

The Tech Guy avatar
lá cờ in
Nó cũng hơi theo hướng mà tôi đã nghĩ, nhưng tôi không thực sự nghĩ rằng mình có thể tìm ra cách xử lý phần https mà không cần phải cài đặt tất cả các chứng chỉ SSL trên máy chủ proxy vì nó ở đâu đó không thực sự cần dữ liệu nhưng chỉ phải nhận và chuyển tiếp dữ liệu. Nó phải là cả lưu lượng 80/HTTP và 443/HTTPS.
lá cờ us
Bạn có thể sử dụng mô-đun nginx `stream` để chuyển tiếp kết nối TCP nguyên trạng sang máy chủ mới. Trong trường hợp đó, chỉ máy chủ mới mới cần tất cả các chứng chỉ.
Điểm:2
lá cờ ng

Trước tiên, bạn có thể muốn quyết định (hoặc ước tính) những gì bạn muốn hy sinh khi di chuyển:

  1. Dễ dàng chuyển đổi (nếu nhiều điểm bên dưới quan trọng, thì quá trình chuyển đổi sẽ là một dự án thay vì một nhiệm vụ, bạn cũng có thể không có sẵn kiến ​​thức chuyên môn cần thiết)
  2. Thời gian ngừng hoạt động (có thể thực hiện toàn bộ quá trình chuyển đổi vào ban đêm hoặc bất cứ khi nào hoạt động của người dùng ở mức tối thiểu không?)
  3. Tính nhất quán của nhật ký truy cập (có thể khá quan trọng và proxy http hoặc tcp sẽ che giấu các địa chỉ IP từ xa)
  4. Tính nhất quán của dữ liệu được hiển thị cho người dùng (một số người dùng có thể chấp nhận xem dữ liệu cũ không?)
  5. Khả năng cập nhật nội dung trong một thời gian
  6. An toàn dữ liệu (trong một số trường hợp, điều quan trọng là phải giữ dữ liệu tuyệt đối an toàn khỏi bị hỏng và/hoặc rò rỉ ngay cả khi điều này có nghĩa là phải ngừng hoạt động)
  7. Thời gian có sẵn (hợp đồng lưu trữ của bạn sắp hết)
  8. Tính nhất quán của phiên người dùng (điều này chính thức được đưa vào điểm 4 nhưng đáng được xem xét thêm vì các biện pháp giảm thiểu khả thi khác nhau)

Tùy thuộc vào sự kết hợp của những điều trên, bạn có thể muốn sử dụng một hoặc nhiều điều sau:

  • TCP proxy (như socat)
  • Proxy HTTP (nginx, mực, v.v.)
  • Một giải pháp định tuyến/VPN phức tạp để cho phép một máy chủ phản hồi các yêu cầu trên 2 địa chỉ IP
  • Sao chép cơ sở dữ liệu
  • Di chuyển máy ảo

Những điều bạn sẽ muốn bất kể chiến lược được chọn là:

  1. Giảm DNS TTL (bạn có thể tăng trở lại sau khi mọi thứ đã sẵn sàng)
  2. Sao lưu - vâng, những điều tồi tệ xảy ra trong quá trình chuyển đổi và di chuyển.
  3. Một kế hoạch
  4. Một kế hoạch quay trở lại nếu kế hoạch chuyển tiếp thất bại.
lá cờ cn
+1 để đề cập đến vấn đề di chuyển cơ sở dữ liệu trực tiếp (hoặc VM). Đây là phần khó khăn trong việc di chuyển một trang web mà không làm phiền người dùng và có nguy cơ mất dữ liệu. Tôi có kinh nghiệm tốt với MySQL và sao chép vòng tròn cho việc này. Nếu được thực hiện đúng, bạn cũng không cần phải vội vàng thực hiện bất kỳ bước nào.
lá cờ cn
Một điều nữa cho danh sách: tính nhất quán của phiên người dùng. Nếu các phiên được lưu trữ trong cơ sở dữ liệu thì điều này được đề cập, nhưng ví dụ: các phiên dựa trên tệp/redis cần di chuyển riêng hoặc bất kỳ người dùng đang hoạt động nào sẽ thấy phiên của nó bị hủy ngay khi họ bắt đầu nói chuyện với máy chủ mới.
Điểm:0
lá cờ in

Một cách khác là sử dụng kết hợp NAT, VPN và định tuyến chính sách.

Bạn thiết lập VPN giữa các máy chủ ở vị trí cũ và mới, trên máy chủ ở vị trí cũ, bạn sử dụng NAT đích để chuyển hướng lưu lượng đến xuống VPN. Trên máy chủ ở vị trí mới, bạn sử dụng định tuyến chính sách để đảm bảo rằng các phản hồi đối với lưu lượng truy cập đến từ VPN sẽ quay trở lại VPN.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.