Đây là bữa trưa lệnh có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
bữa trưa - Trình khởi chạy quy trình phân tán
SYNOPSIS
bữa ăn trưa [cấu hình hồ sơ] [lựa chọn]
MÔ TẢ
Bữa trưa là một trình khởi chạy quy trình phân tán cho GNU / Linux. The Lunch Master ra mắt
trưa-nô lệ xử lý thông qua một phiên SSH được mã hóa nếu trên một máy chủ từ xa. Nô lệ đó
các quy trình lần lượt có thể khởi chạy các lệnh mong muốn theo yêu cầu.
LỰA CHỌN
--phiên bản
hiển thị số phiên bản của chương trình và thoát
-h, --Cứu giúp
hiển thị thông báo trợ giúp này và thoát
-f TẬP TIN CẤU HÌNH, --tập tin cấu hình=TẬP TIN CẤU HÌNH
Chỉ định tệp cấu hình python. Bạn cũng có thể chỉ định tệp cấu hình là
đối số đầu tiên.
-l LOGGING_DIRECTORY, --logging-thư mục=LOGGING_DIRECTORY
Chỉ định thư mục ghi nhật ký và pidfile cho cái chính. Mặc định là
/ var / tmp / bữa trưa
-q, --Đăng nhập vào tập tin
Cho phép ghi thông tin chính vào tệp và tắt ghi vào đầu ra tiêu chuẩn.
-g, --đồ họa
Bật giao diện người dùng đồ họa.
-v, --dài dòng
Làm cho đầu ra ghi nhật ký dài dòng.
-d, --gỡ lỗi
Làm cho kết quả ghi nhật ký rất dài dòng.
-k, --giết chết
Giết một bậc thầy ăn trưa khác sử dụng cùng một tệp cấu hình và thư mục ghi nhật ký.
Thoát sau khi hoàn tất.
HOẠT ĐỘNG
Trình thực thi bữa trưa được gọi là tổng thể bữa trưa. Thực thi trưa-nô lệ được gọi là
nô lệ ăn trưa. Nếu chạy với tư cách là chủ, nó sẽ khởi chạy nô lệ. Các nô lệ phải chịu trách nhiệm về
khởi chạy các quy trình con. Master khởi chạy các nô lệ (thông qua SSH hoặc không), đến lượt nó,
khởi chạy các quy trình con.
Tệp cấu hình Bữa trưa có thể được cung cấp như một đối số đầu tiên cho tệp thực thi Bữa trưa.
Nếu không được đưa ra, chủ buổi trưa sẽ tìm kiếm ~ / .lunchrc tập tin. Nếu không tìm thấy, bữa trưa sẽ
in lỗi và thoát. Tệp cấu hình bữa trưa được viết bằng lập trình Python
ngôn ngữ, và phải gọi hàm add_command.
ID quy trình của cái chính được ghi vào một tệp nằm trong /var/tmp/lunch/master*.pid,
trong đó * thay đổi tùy thuộc vào tệp cấu hình trưa được sử dụng để định cấu hình chính. Đây là
làm thế nào để giết mọi chủ bữa trưa trên hệ thống của bạn:
cho f trong /var/tmp/lunch/master-*.pid; giết -15 $ (cat $ f); xong
HÌNH ẢNH USER GIAO DIỆN
Khi được gọi với tùy chọn --graphical, (-g) chế độ ăn trưa hiển thị một người dùng đồ họa
giao diện hiển thị trạng thái của mọi quy trình được quản lý. Khi cửa sổ này đóng lại,
chủ bữa ăn trưa thoát ra và giết tất cả các quá trình con của nó.
SSH KHÓA QUẢN LÝ
Nếu sử dụng cho nhiều máy chủ, bữa trưa cần có máy chủ SSH được cài đặt trên mỗi điều khiển từ xa
máy vi tính. Cũng cần khóa SSH công khai của người dùng của bạn trên máy tính chính
phải được cài đặt trên mọi máy tính nô lệ. Dưới đây là tóm tắt các bước cần làm để tạo
khóa SSH trên máy tính chính của bạn và gửi khóa công khai của bạn trên mỗi máy tính phụ.
$ mkdir -p ~ / .ssh
$ chmod 700 ~ / .ssh
$ ssh-keygen -f ~ / .ssh / id_rsa -t rsa
Tiếp theo, đối với mỗi máy chủ nô lệ, hãy thực hiện:
$ ssh-copy-id @
Tên người dùng $ ssh @ host 'echo Xin chào'
Lệnh sau sẽ hiển thị "Xin chào" khi được phát hành.
Nếu bạn bắt đầu ăn trưa qua SSH và khởi chạy từ đó ra lệnh cho các máy chủ khác, trước tiên bạn phải
đảm bảo rằng ssh-agent đang chạy và bạn đã mở khóa SSH riêng tư của mình.
Nó có thể được thực hiện như thế này:
$ ssh-đại lý bash
$ ssh-thêm
LỊCH SỬ
2010 - Chuyển từ đa xử lý sang Twisted
2009 - Do Alexandre Quessy viết kịch bản[email được bảo vệ]> với sự đóng góp của Simon
Piette[email được bảo vệ]>
VÍ DỤ
Xem thư mục ví dụ để biết các ví dụ. Trên hệ thống Debian hoặc Ubuntu, chúng sẽ nằm ở vị trí
trong thư mục / usr / share / doc / Lunch /amples /.
Đây là ví dụ đơn giản nhất có thể cho nội dung của ~ / .lunchrc tập tin. Nó nói
Ăn trưa chỉ gọi một lệnh, gọi là "xeyes".
add_command ("xeyes")
Nếu bạn thêm nhiều lệnh gọi tới add_command trong tệp này, nó sẽ thêm nhiều quy trình hơn để trở thành
ra mắt bởi Bữa trưa. Add_command là hàm Python bạn cần gọi từ Bữa trưa của mình
tập tin cấu hình để thêm các lệnh sẽ được gọi bởi Lunch. Nếu bạn thêm nhiều hơn
một lệnh, chúng sẽ được gọi theo thứ tự bạn thêm chúng vào tệp.
Đây là một ví dụ phức tạp hơn về tệp cấu hình. Nó tạo ra ba quy trình, với
sự phụ thuộc giữa các tiến trình.
add_command ("xeyes", định danh = "xeyes")
add_command ("xlogo", phụ thuộc = ["xeyes"])
add_command ("xclock", phụ thuộc = ["xeyes", "xlogo"])
Tệp cấu hình ở trên trước tiên sẽ khởi động xeyes, xlogo tiếp theo và cuối cùng là xclock.
Nếu xeyes thoát, cả ba quá trình sẽ bị dừng và khởi động lại. Nếu quá trình xlogo
thoát, xclock sẽ bị dừng và khởi động lại khi xlogo đang chạy. Các
đối số từ khóa "phụ thuộc" của hàm "lệnh add_com" cần một danh sách các chuỗi như
tranh luận. Chuỗi đó phải khớp với đối số từ khóa "mã định danh" của một chuỗi đã được thêm vào
chỉ huy.
Trong ví dụ tiếp theo, chúng tôi sử dụng SSH để khởi chạy các quy trình trên máy chủ từ xa. Lưu ý rằng bữa trưa-
kịch bản nô lệ phải được cài đặt trên mỗi máy chủ để khởi chạy các quy trình con.
add_command ("xeyes")
add_command ("xeyes", user = "johndoe", host = "example.org")
Nó sẽ tạo một cây quy trình, chẳng hạn như cây này:
ăn trưa _______________ trưa-nô lệ ____ xeyes
| ____ ssh ____ trưa-nô lệ ____ xeyes
Lệnh tiếp theo là lệnh chỉ được chạy một lần.
add_command ("ls -l", idfier = "danh sách ...", respawn = False)
Nếu vì lý do nào đó, bạn sẽ dễ dàng chỉ định tên máy chủ cho mọi lệnh mà bạn
thêm, ngay cả đối với máy chủ cục bộ, bạn có thể gọi "add_local_address" với IP của máy chủ dưới dạng
tranh luận.
add_local_address ("192.168.1.2")
# Chúng tôi sẽ không sử dụng SSH cho cái này,
# vì chúng tôi vừa thêm máy chủ của nó bằng cách sử dụng
# "add_local_address" chức năng.
add_command ("xeyes",
định danh = "local_xeyes",
user = "johndoe", host = "192.168.0.2")
# Chúng tôi sẽ sử dụng SSH cho phần tiếp theo,
# vì máy chủ của nó không được đặt làm máy chủ cục bộ.
add_command ("xeyes -geometry 300x400",
định danh = "remote_xeyes",
user = "johndoe", host = "example.org")
BÁO CÁO GIỎI
Xem http://svn.sat.qc.ca/trac/lunch để được trợ giúp và cung cấp tài liệu.
Dùng bữa trưa trực tuyến bằng dịch vụ onworks.net