Tôi đang sử dụng nginx như một bộ cân bằng tải trước các trường hợp máy chủ web của tôi. Tôi chạy 4 phiên bản của máy chủ web và phân bổ lưu lượng bằng nhau trên chúng bằng nginx. Khi tôi đang triển khai phiên bản mới - tôi thay đổi nginx.conf và đánh dấu 2 trong số 4 máy chủ đầu tiên, sau đó khởi động lại nginx. Tôi cập nhật mã máy chủ và khởi động lại 2 máy chủ đầu tiên. Sau đó, tôi chỉnh sửa nginx.conf để chỉ ra rằng 2 máy chủ đầu tiên đã hoạt động và đánh dấu 2 máy chủ kia xuống, một lần nữa khởi động lại nginx. Sau đó, tôi cập nhật và khởi động lại hai trường hợp khác. Một lần nữa cập nhật nginx.conf đánh dấu tất cả các máy chủ và khởi động lại cuối cùng của nginx.
Tôi phải làm quá trình này nhiều lần trong một số ngày. Thực hiện thủ công các bước trên mỗi lần hóa ra là dễ bị lỗi.
Có quyền truy cập theo chương trình vào nginx / nginx.conf để tôi có thể tự động hóa quy trình này không?
[Cách duy nhất tôi tưởng tượng ngay bây giờ là viết các bước trên trong shell script]
fail_timeoutthành 5s trên mỗi phụ trợ của bạn, đưa hai trong số chúng xuống và NGINX sẽ chọn nó và chuyển hướng tất cả lưu lượng truy cập đến hai nút thứ hai. Cập nhật mã của bạn, đợi 5 giây (hoặc bất cứ giá trị hết thời gian chờ nào của bạn) và NGINX sẽ bắt đầu sử dụng hai máy chủ đầu tiên, sau đó gỡ xuống hai giây thứ hai và lặp lại. NGINX chơi rất độc đáo với kiểu thiết lập đó