Giới thiệu
Tôi làm việc trong một công ty nơi chúng tôi chạy nhiều công ăn việc làm hàng loạt chế biến hàng triệu hồ sơ của các dữ liệu mỗi ngày và tôi đã suy nghĩ gần đây về tất cả các máy ngồi xung quanh mỗi và mỗi ngày không làm gì trong vài giờ. Nó sẽ không tốt nếu chúng ta có thể sử dụng những máy móc để tăng cường sức mạnh xử lý của hệ thống của chúng tôi? Trong tập hợp các bài này, tôi sẽ nhìn vào những lợi ích tiềm năng của việc sử dụng một mạng lưới văn phòng bằng cách sử dụng các môi trường ảo hóa.
Trong phần 2 chúng tôi nhìn vào việc làm một máy chủ sẽ chạy, và làm thế nào công việc cần được cấu hình để đạt được số tiền lớn nhất xử lý đồng thời đảm bảo rằng mỗi công việc được xử lý mà không có thất bại.
Thiết lập nhân viên của bạn hoặc máy chủ khập khiễng
Bước tiếp theo trong quá trình là để thiết lập các công nhân ảo của bạn. Đối với điều này, tôi sẽ sử dụng một cài đặt của CentOS sử dụng VirtualBox. Tôi sẽ cài đặt mySQL và PHP trên máy chủ, còn được gọi là (Li nux, m ySQL, P HP) khập khiễng Server (tôi có thể thực hiện rằng tên lên) .
- Cài đặt VirtualBox trên máy tính cửa sổ của bạn (theo liên kết)
- Tải về và cài đặt CentOS (hiện tại phiên bản 5.3) trong một máy ảo được tạo ra
Không có chỉ cho tôi đi này có thể có 1.000 hướng dẫn tuyệt vời ra khỏi đó (ok, đây là một : Tạo và máy Managing CentOS ảo trong VirtualBox) . Điểm quan trọng cần lưu ý Tôi cho rằng là tôi được gọi là máy ảo của tôi GridMachine.
Theo như sự lựa chọn của khách hàng ảo hóa và hệ thống điều hành đi không có lý do lớn hấp dẫn cho mỗi sự lựa chọn. VirtualBox là một cái gì đó tôi sử dụng trên máy chủ của tôi và được hỗ trợ bởi ba hệ thống điều hành chính. Tôi đã chọn CentOS là một hệ điều hành ổn định của nó tốt và tôi sử dụng nó trên máy chủ web của riêng tôi. Tôi là một người tin tưởng tuyệt vời trong các công cụ cho công việc (mặc dù tôi đang áp dụng sử dụng nhanh nhất và dễ nhất cho bạn "tâm lý ở đây), vì vậy nếu hệ điều hành X chạy mã của bạn nhanh hơn và hiệu quả hơn sử dụng mà thay vào đó:)
Điều quan trọng là đảm bảo rằng máy ảo của bạn sử dụng DHCP, nếu không cho mỗi máy ảo mới sẽ cần phải được cấu hình riêng biệt mà là một cái gì đó chúng tôi không want.By sử dụng DHCP chúng tôi không cần phải cấu hình các thiết lập mạng riêng biệt cho các máy công nhân, DHCP sẽ tay khu công nghiệp ra cho bạn. Vì vậy, bạn có thể sao chép máy ảo của bạn về văn phòng mà không cần lo lắng về việc thiết lập mỗi một trong những động (này cải thiện khả năng mở rộng và làm giảm nhân viên hành chính).
Quá trình bạn nên nhằm mục đích đạt được sẽ là để có được một máy vật lý mới, cài đặt VirtualBox, và sau đó triển khai khá nhiều hình ảnh ảo mà không có nhiều thứ khác nữa. Nó có thể là khôn ngoan để thiết lập tất cả các công nhân trên một mạng con khác nhau để bạn có thể xem có bao nhiêu máy đang chạy. Bạn cũng sẽ cần phải thiết lập máy của bạn vào một hợp đồng thuê dài hoặc không giới hạn cho thuê DHCP.
Làm thế nào để chạy Việc người lao động
Đây là một khu vực thú vị và có một số phương pháp hợp lệ để xử lý công việc trên người lao động. Ở đây tôi sẽ chỉ thảo luận về hai rõ ràng nhất:
- Vĩnh viễn chạy kịch bản: Một kịch bản, có thể là một kịch bản, hoặc một kịch bản PHP được thực hiện một lần vào người lao động và chạy như một phần của một vòng lặp vô hạn. Tôi đã giảm giá phương pháp này là một trong những vụ tai nạn của kịch bản và có khả năng lao động của bạn sẽ ngừng chạy mà không có một số loại can thiệp.
- Định kỳ dựa trên kịch bản thực hiện: Mỗi phút X daemon cron bắt đầu một cuộc gọi đến kịch bản của bạn để có được điều đi. Nếu không có kiểm tra một số điều này có thể dẫn đến nhiều bản sao nhiều nhân viên chạy kịch bản của bạn.
Quyết định của tôi là để đi với cron khởi động một kịch bản mỗi minutes. 10 kịch bản của tôi thực hiện các nhiệm vụ sau đây:
- Một danh sách các tiến trình và grep 'php'. Nếu không tìm thấy sau đó tiếp tục.
- Gọi mã công việc của bạn, trong trường hợp này sẽ là một cái gì đó dựa trên PHP
- Nhân viên kịch bản hoàn thành chạy của nó
- Sẵn sàng để đi lại trên các cuộc gọi thích hợp tiếp theo
Kịch bản bash của tôi trông giống như sau:
# / Bin / sh
nếu ps ax | grep grep-v | grep php> / dev / null
sau đó
echo "công việc hiện đang chế biến, xuất cảnh"
khác
echo "công việc không chạy, bắt đầu ngay bây giờ"
php yourJobProcessingScript.php
fi Lưu ý: của tiếng vọng gần như hoàn toàn vô nghĩa, nhưng có thể giúp cho người tiếp theo đến cùng để thử và chỉnh sửa chúng.
Kết thúc các thiết lập của máy nhân viên ảo, nhanh chóng, đơn giản và dễ dàng để sao chép cho mỗi mảnh mới của phần cứng mà là nhận được. 'Thông minh' của hệ thống lưới điện thực sự không có trong hệ điều hành hình dung, tất cả để làm với mã được tạo ra để xử lý công việc, cấu hình việc làm, và trong việc bảo đảm rằng công việc chạy khi thích hợp (ví dụ như khi máy chủ là nhàn rỗi ).
Thiết lập Windows Khởi công nhân
Nhiệm vụ đầu tiên là để làm việc ra các lệnh cần thiết để chạy các máy ảo từ các cửa sổ dòng lệnh. Nếu bạn đã cài đặt VirtualBox trong vị trí mặc định và bạn đã đặt tên GridMachine nhân viên của bạn sau đó các lệnh cần thiết để tải lên nhân viên của bạn là:
"C: \ Program Files \ CN \ VirtualBox \ VBoxManage.exe" startvm GridMachine
Tuy nhiên để chạy các kịch bản trong một trạng thái "không đầu" chúng ta cần phải sử dụng:
"C: \ Program Files \ CN \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off
Điều này sẽ bắt đầu các máy ảo mà không có giao diện đồ họa và cho phép nó để tiết kiệm nhà nước một cách duyên dáng. Đối số thứ hai sẽ tắt RDP để nó không mâu thuẫn với các cửa sổ RDP, hoặc cung cấp cho bạn một thông điệp về lắng nghe trên cổng 3389 tên máy ảo là trường hợp nhạy cảm!
Tiếp theo, chúng tôi sẽ cần để thiết lập các cửa sổ để khởi động máy ảo nhân viên của chúng tôi một khi máy tính đã được nhàn rỗi. Để làm điều này (trên Windows XP), bạn sẽ cần phải đi Start -> All Programs -> Accessories -> System Tools -> Scheduled Tasks như sau:
Tiếp theo bấm vào "Add Scheduled Task duyệt để thêm một chương trình tùy chỉnh. Điều hướng đến kịch bản VBoxManage của bạn và kích OK. Lịch trình công việc của bạn cho bất kỳ tùy chọn (chúng tôi sẽ thay đổi điều này trong một phút) và tiếp tục. Sau khi bỏ qua màn hình kế tiếp, các cửa sổ sẽ yêu cầu bạn của những người bạn muốn chạy nhiệm vụ này, tôi muốn đề nghị hoặc là 'Administrator' hoặc tạo ra một người sử dụng đặc quyền mới. Hãy nhớ chúng ta không muốn can thiệp vào tài khoản nhân viên tiêu chuẩn trên máy tính tại bất kỳ điểm nào. Kích Next và kiểm tra hiển thị tùy chọn nâng cao cho nhiệm vụ này.
Đến cuối của hộp chạy thêm chuỗi 'startvm GridMachine của chúng tôi và đảm bảo rằng chạy chỉ khi đăng nhập là trái unticked. Truy cập vào nhiệm vụ kế hoạch tiếp theo và thay đổi lịch trình thả xuống tùy chọn 'khi nhàn rỗi', chọn số lượng thời gian bạn muốn máy tính để được nhàn rỗi trước khi chuyển sang tab tiếp theo.
Cuối cùng bỏ chọn tùy chọn trạng thái dừng công việc nếu nó đã được chạy số tiền X của thời gian, nhưng đánh dấu vào tùy chọn để ngăn chặn các nhiệm vụ nếu máy không còn nhàn rỗi.
Đó là sau đó cho các cửa sổ thiết lập máy chủ!
Tóm tắt thông tin
Trong phần này chúng tôi đã thiết lập một máy ảo để hoạt động như một nhân viên, cũng như cách thức mà chúng ta gọi và thực thi các kịch bản xử lý công việc của chúng tôi (cho bản thân mình một kịch bản PHP). Từ đây chúng ta nhìn vào cách thiết lập bản sao của các cửa sổ để khởi động máy ảo trong chế độ không đầu khi máy tính trở nên nhàn rỗi, và lưu trạng thái của nó khi người dùng tiếp tục sử dụng của máy. Hy vọng rằng vào thời điểm này, bạn đang nhìn thấy cách đơn giản nó là để thiết lập một hệ thống như vậy và đang nóng lòng muốn có được một số thí nghiệm sẽ cho mình!
Tiếp theo thời gian
Trong Phần 4 , chúng tôi sẽ xem xét sử dụng các công cụ để đảm bảo rằng bạn đang chạy các phiên bản mới nhất của các nguồn mã và dữ liệu để kết quả thu được là luôn luôn up-to-ngày với các thông tin kinh doanh mới nhất và logic.