Con rối: quản lý (rất nhiều) Apache Virtualhosts


9

Tôi đang học theo cách của mình thông qua quản lý cấu hình nói chung và sử dụng con rối để thực hiện nó nói riêng. Tôi đã thực hiện một số nghiên cứu chung chung ( cũng trên SF ) và hiện tại tôi đang xem xét Apache Virtualhosts.

Chúng tôi lưu trữ rất nhiều trang web LAMP (hiện đang ở trong phạm vi hàng trăm) trên hai hệ thống: một Apache2 / mod_php và một MySQL - về cơ bản ngược lại với một câu hỏi khác đã có trên SF , nơi anh ấy quản lý rất nhiều máy chủ với mỗi vhost không thực sự là một, tôi không biết). Tôi chưa đặt một cấu hình làm việc trong con rối nhưng nó không phải là một vấn đề, có rất nhiều ví dụ và công thức nấu ăn ngoài kia.

Ngoài (các) tệp cấu hình apache rõ ràng (không có vấn đề ở đây tôi đoán) mỗi vhost sẽ cần phải có một số thư mục được tạo và kiểm tra quyền (ví dụ: một thư mục gốc cho mỗi vhost chứa tài liệu, thư mục tmp chuyên dụng, dành riêng Tập tin phiên php, có thể là chứng chỉ SSL, v.v.) trên máy chủ web và người dùng + một hoặc nhiều cơ sở dữ liệu trên máy chủ MySQL.

Thêm một vhost mới sẽ yêu cầu con rối tạo ra chúng, loại bỏ một con sẽ yêu cầu con rối chạy một số tập lệnh sẽ sao lưu dữ liệu người dùng và sau đó xóa dữ liệu trực tiếp khỏi hai máy chủ, nhưng mỗi tác nhân múa rối sẽ kiểm tra sự tồn tại của các thư mục, db, quyền, v.v.

Tôi có hỏi rắc rối không khi có tới hàng trăm virtualhost với tất cả các kiểm tra đang chạy ở mỗi lần chạy rối, đặc biệt là các hệ thống tệp (trên máy chủ web) và đặc biệt là khi nào trong tương lai các hệ thống sẽ được tải lên nhiều hơn? (giả sử chúng tôi nhắm mục tiêu phạm vi 1000 ~ 2000 trang web dưới dạng tối đa trên mỗi máy chủ hợp lý).

Có bất kỳ kinh nghiệm trong việc làm điều đó trên mạng? Tôi googled nhưng không tìm thấy gì, cũng bởi vì có tỷ lệ tín hiệu / nhiễu thấp khi tìm kiếm "con rối" và "apache" ...

Câu trả lời:


4

Tôi nghi ngờ rằng việc quản lý nhiều máy chủ ảo apache sẽ không thành vấn đề, nhưng tôi không thể chắc chắn. Hiệu suất chấp nhận được xác định bởi nhu cầu kinh doanh của bạn. Chỉ bạn mới có thể quyết định nếu nó đủ nhanh. Đây là một chủ đề hay về việc giảm tải CPU: https://groups.google.com/forum/?fromgroups#!topic/puppet-users/sxtMvCnKnys[1-25]

Để tóm tắt chủ đề:

  • Tăng độ trễ giữa các lần chạy rối
  • không lên lịch cho rối và chỉ sử dụng đá rối hoặc mcollective để kích hoạt chạy
  • lên lịch các thay đổi của Apache chỉ xảy ra vào những thời điểm nhất định.
  • sử dụng hai môi trường khác nhau (bảo trì và sản xuất) để quản lý mọi thứ. Giữ sản xuất nhẹ và sử dụng bảo trì để thực hiện thay đổi.

Dưới đây là một ví dụ về việc quản lý Máy chủ ảo apache từ trang web PuppetLabs: http://docs.puppetlabs.com/learning/dDeftypes.html#an-example-apache-vhosts

Thiết lập và loại bỏ cấu hình không phải là một vấn đề. Vấn đề lớn nhất là loại bỏ các tệp dữ liệu cho các ứng dụng / trang web. Vì thế, tôi khuyên bạn nên lưu trữ chia sẻ, như NFS / AFS. Nếu bạn không sử dụng bộ nhớ chia sẻ, thì hãy đảm bảo dữ liệu do người dùng tạo được giữ nguyên, sao lưu hoặc di chuyển sang máy chủ mới.

Tôi nghi ngờ rằng bạn đang ở trong một tình huống lưu trữ hàng loạt, như một công ty lưu trữ web, vì vậy tôi khuyên các tên trang web riêng lẻ không được mã hóa vào bảng kê khai con rối của bạn. Đối với điều này, tôi khuyên bạn nên sử dụng Hiera < http://puppetlabs.com/blog/first-look-installing-and-USE-hiera/ . Hiera cho phép bạn sử dụng một cách riêng để lưu trữ danh sách máy chủ ảo vào ánh xạ máy chủ thực. Bạn có thể sử dụng các tệp phẳng hoặc cơ sở dữ liệu với Hiera. Đáng buồn thay, tôi không biết Hiera đủ để hướng dẫn bạn cách thiết lập cấu trúc dữ liệu Hiera đa cấp mà bạn có thể cần, nhưng ít nhất tôi có thể chỉ cho bạn theo hướng chung của Hiera.

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.