Tôi hiện đang cố gắng chỉ định một cụm có thể mở rộng theo chiều ngang cho một ứng dụng web dựa trên drupal, trông giống như sơ đồ đầy màu sắc bên dưới:
Bộ cân bằng tải thực hiện các phiên dính, vì vậy người dùng sẽ giữ trạng thái khi họ được phân bổ máy chủ để làm việc.
Mỗi máy chủ ứng dụng có các mục sau:
- véc ni ở phía trước
- drupal 6 ở giữa chạy trên chồng đèn
- memcached ở phía sau
Hai máy chủ cơ sở dữ liệu mysql nằm trên một IP được chia sẻ và chúng nằm trong một cụm HA với DRBD và rất hợp lý, do đó, việc mất một sẽ không làm giảm toàn bộ nền tảng.
Có một vài điều tôi không chắc chắn về điều đó tôi đánh giá cao ý kiến của bạn về:
Làm thế nào nên lưu trữ quy mô tập tin theo chiều ngang?
Tôi đang nghĩ đến việc sử dụng NFS để gắn thư mục tệp chia sẻ trên mỗi máy chủ ứng dụng, do đó, một tệp được tải lên ở một nơi có sẵn trên tất cả chúng. Tôi đang nghĩ về NFS bởi vì nó đã có từ rất lâu và tôi không có kinh nghiệm với MogileFS hoặc GlusterFS, và đó là thứ chúng tôi đã sử dụng trước đây, vì vậy chúng tôi quen thuộc hơn với nó.
Có hướng dẫn nào xung quanh để làm theo để biết có bao nhiêu máy chủ nên chia sẻ một thư mục qua NFS theo cách này không?
HA nên được cung cấp như thế nào trên bộ lưu trữ tệp chia sẻ ở đây?
Một vấn đề ở đây là máy chủ NFS là một điểm thất bại duy nhất.
Chúng tôi đã sử dụng Heartbeat và DRBD trên các máy chủ Mysql và tôi muốn giữ số lượng công nghệ liên quan đến một ngăn xếp càng thấp càng tốt - điều gì sẽ xảy ra nếu tôi sử dụng cùng một chiến lược HA cho tệp máy chủ cũng vậy?
Một cách tiếp cận khác
Điều này dành cho một trang web đối mặt nội bộ, với số lượng người dùng hữu hạn đôi khi sử dụng trang web rất mạnh mẽ trong thời gian ngắn, khi một sáng kiến nội bộ được bật. Vì vậy, điều này không cần phải mở rộng vô hạn như một số khởi động.
Cho rằng
- có một giới hạn trên cho lưu lượng chúng ta có thể mong đợi
- việc thêm HA vào các máy chủ tệp và thiết kế một thiết lập theo tỷ lệ theo chiều ngang như thế này sẽ gây ra sự phức tạp đáng kể
Tôi cũng đang xem xét chỉ làm cho hai máy chủ web trở nên mạnh mẽ hơn để chúng có thể xử lý tải tối đa giữa chúng và thiết lập unison hoặc rsync trên cả hai trên một công việc định kỳ, sao cho:
- các tệp của chúng vẫn được đồng bộ hóa (các phiên dính giữ người dùng trên cùng một máy chủ mà họ đã tải tệp lên)
- mất một nghĩa là trang web vẫn hoạt động.
Điều này nghe có vẻ là một cách có thể để khắc phục bất kỳ cơn đau đầu phức tạp NFS / DRBD HA nào có thể xảy ra?
Cảm ơn,
C