Tuesday, March 18, 2008

Hồi 1: Đường Tam Tạng cứu Tôn Ngộ Không và thâu nhận ngựa bạch

Lại nói Đường Tam Tạng phụng mệnh Quan Âm Bồ Tát và Đường Thái Tông đến Thiên Trúc thỉnh bộ Đại Thừa Phật Pháp Tam Tạng chân kinh về Đại Đường phổ độ chúng sinh.
Từ ngày ra đi đến nay đã được một tháng, hiện trước mặt ông chính là Ngũ Hanh Sơn, một địa điểm du lịch nổi tiếng.
Nhìn ngọn núi cao sừng sững, Đường Tam Tạng chặc lưỡi:
- Hic, giá mà trước đừng tiết kiệm học luôn khóa leo núi có phải tốt hơn không?
Chợt ông nghe tiếng huyên náo bên trái, Đường Tam Tạng vội vàng xách dép chạy sang bên cạnh nghe ngóng....

Đập vào mắt ông là một tấm biển lớn:
- Triển lãm khỉ bị núi đè mấy trăm năm không chết.
- Giá vé người lớn: 20 lượng.
- Trẻ em từ 12 đến 18 tuổi: tính 75 %
- Dưới 12 tuổi: Tính 50 %
- Mua mười vé tặng một vé
Ký tên: Thổ Địa.
Phía bên trong, một ông già ngồi rung đùi vuốt râu, Đường Tam Tạng lại gần hỏi:
- Tôi là người tu hành, có thể free một lần không?
- Không được, thế thì chúng tôi ăn cám à, ông tham thế?
Đường Tam Tạng toan bỏ đi thì nghe tiếng la choi ***i ở đằng sau:
- Ông có phải Đường Tam Tạng, hòa thượng từ Đại Đường đến Tây Thiên Thỉnh Kinh không?
- Chính là bần tăng.
- Thật không đấy? Thời buổi hàng giả nhiều thế này, ông có gì chứng minh không?
Đường Tam Tạng tự ái nói:
- Có giấy chứng nhận do đích thân hoàng thượng ký đây.
Dứt lời, tờ giấy bay vụt khỏi tay ông, Đường Tam Tạng kêu oai oái:
- Cướp giật, cướp giật, bà con ơi, cướp giật.
Thổ địa vỗ vai:
- Ông anh yên chí đi.
- Tôi đầu trọc làm gì có chí mà yên.
- Thì yên tâm đi, con khỉ đấy nó giở trò giật đồ của khách là chuyện thường ấy mà, tí nữa nó trả ngay.
- Khỉ gì mà láo như con cáo, hừ, tại sao lại bị đè ở đây?
- Nó vốn là Tề Thiên Đại Thánh trên trời, phạm tội đại náo thiên cung nên bị Phật Tổ Như Lai phạt nhốt dưới Ngũ Hành Sơn đã năm trăm năm này.
- Trời ơi, năm trăm năm nay rồi? - Đường Tam Tạng kêu lên - chết rồi, thế thì nó bẩn khiếp, nếu để nó cầm thì còn gì là công văn của ta nữa.
Nói rồi Đường Tam Tạng chạy vụt vào bên trong.
Thổ Địa chạy theo la oai oái:
- Ngươi còn chưa mua vé, đứng lại, định xù hả?
Đường Tam Tạng vào bên trong quả nhiên thấy một con khỉ mình đầy lông lá đang bị đè dưới chân núi.
Vừa thấy Đường Tam Tạng, nó kêu lên:
- Sư phụ, mau cứu đệ tử.
- Ê đừng thấy người sang bắt quàng làm họ nhé, ai sư đồ gì với ngươi.
- Con là Tôn Ngộ Không, năm trăm năm trước Phật Tổ Như Lai đã nói năm trăm năm sau sẽ có một vị hòa thượng từ đông thổ đại đường đến Tây Thiên Thỉnh Kinh đi qua đây, nếu con chịu làm đồ đệ của người thì sẽ giải thoát con khỏi Ngũ Hanh Sơn, cái này ghi rõ trong hợp đồng rồi, sư phụ không xù được đâu.
- Thì ra là thế? Nhưng ta làm sao cứu mi?
- Phật Tổ Như Lai đặt password phá núi là bài niệm kinh của Kim Thiền Tử, sư phụ là hậu thân của Kim Thiền Tử, chỉ cần sư phụ đọc một bài kinh thì con sẽ được giải thoát.
- Đọc xong nhớ trả tiền công cho ta nhé. - Đường Tam Tạng làu bàu rồi ngồi xuống tụng kinh.
Quả nhiên một lúc sau, ngọn núi rung rinh rồi nổ tan tành.
Thổ địa chạy vào thấy Tôn Ngộ Không được giải thoát thì giậm chân kêu lên:
- Thôi thế là toi rồi, ngươi đạp đổ nồi cơm của ta rồi.
Tôn Ngộ Không tức giận bay vọt tới gõ liên hồi lên đầu Thổ Địa:
- Dám lấy ta làm vật trưng bày hả?
Đường Tam Tạng thấy Tôn Ngộ Không thoát được bèn nói:
- Ê thế còn vụ ta giải thoát cho mi thì sao?
Tôn Ngộ Không quỳ xuống nói:
- Yên tâm đi, tôi không xù đâu mà sợ, Sư phụ, đệ tử nguyện đi theo người đến Tây Thiên Thỉnh kinh.
- Thật chứ? - Đường Tam Tạng không giấu nổi vẻ thất vọng khi không được trả lương. - free thù lao chứ?
- Ok, điều này Phật Tổ nói rõ rồi, thù lao free luôn/
- Thế thì được, chúng ta lên đường.
Nào ngờ lúc quay lại đã chẳng thấy con ngựa của Đường Tam Tạng đâu.
Đường Tam Tạng túm cổ Thổ Địa kêu lên:
- Con ngựa của ta đâu? Mau trả lại đây.
- Ông có mua vé thăm quan đâu, lại còn không mua vé trông ngựa, không đóng phí mà đòi tôi có trách nhiệm phải đền ông chứ?
Tôn Ngộ Không cười khẩy:
- Thôi bỏ đi, sư phụ để cho con.
Nói rồi Tôn Ngộ Không hóa ra một con Dylan mới cáu:
- Sư phụ chơi con này được chứ?
- Ta không có bằng lái xe.
Tôn Ngộ Không nghe vậy lại biến ra một con Mercedes:
- Con này thì sao? Rất hợp với dáng thầy:
- Đã nói không có bằng lái xe mà lị.
Tôn Ngộ Không bĩu môi:
- Sư phụ nhà quê khủng khiếp.
Nói rồi Ngộ Không vọt lên trên cao, chợt thấy một con rồng đang bay lượn thì vội vàng bay tới túm lấy râu nó giáng cho mấy đấm:
- Có phải mi ăn cắp ngựa của chúng ta không?
Con rồng kêu lên oai oái:
- Đại ca tha cho em, tha cho em, em chỉ vì đói quá thôi.
- Thế mi là ai?
- Em vốn là thái tử của Long Vương, cãi nhau với phụ vương nên quyết định bỏ nhà đi Thiên Trúc chơi, nào ngờ giữa đường đánh bạc hết tiền, đói quá làm liều, đành phải chén con ngựa của đại ca thôi.
- Hóa ra là bỏ nhà đi bụi đời. - Tôn Ngộ Không cười khẩy - mi ăn ngựa sống mà không sợ H5N1 à?
Con rồng cười phá lên;
- Đại ca vừa ở trên Sao Hỏa xuống hay sao mà không biết H5N1 là virus cúm gà chỉ ăn gà mới nhiễm thôi.
Tôn Ngộ Không quê độ gắt:
- Tao biết thừa, chỉ thử mày đấy thôi. Giờ ngựa tao mày chén hết rồi, tính bồi thường thế nào?
- Tiền em hết rồi, đại ca xem có đồ gì cứ lột tạm.
- Thôi khỏi, chú mày vừa đánh bạc cháy túi còn qué gì nữa cho tao lột chứ, hay mày biến thành ngựa cho thầy tao cưỡi nhớ.
- Ngựa đực hay ngựa cái hả đại ca?
- Thế mày là đàn ông hay đàn bà? - Tôn Ngộ Không quát tướng lên rôi giơ gậy toan bổ xuống.
Tiểu Bạch Long thấy vậy hoảng hồn vội hóa thành con ngựa trắng nói:
- Em đùa thôi mà đại ca, cẩn thận nóng quá đứt mạch máu não đấy.

Thấy Tôn Ngộ Không dẫn Tiểu Bạch Long về, Đường Tam Tạng mừng lắm nói:
- Thằng thế mà khá, chớp mắt đã tìm được ngựa rồi.
Rồi ông cúi xuống nói nhỏ:
- Này có phải con chôm chỉa ở đâu thế?
- Yên tâm đi sư phụ, sư phụ có cưỡi từ giờ đến Tây Thiên cũng chẳng ai bắt sư phụ đâu.
- Nếu người ta bắt thì ngươi phải chịu trách nhiệm đấy nhé.
- OK.

Friday, March 14, 2008

Các lệnh Shell cơ bản trong Linux

Khi mở một shell, bạn cần đến tài khoản kích hoạt vào thư mục chủ (thông thường nằm trong /home/tên_người_dùng).

Chú ý rằng mỗi lệnh đều có nhiều tùy chọn riêng của mình. Để xem các tùy chọn cho một lệnh cụ thể, đơn giản bạn chỉ cần gõ "man " (trong đó: man là từ khóa; command là tên lệnh). Một điểm quan trọng cần chú ý là trong các hệ điều hành Linux, câu lệnh có phân biệt chữ hoa, chữ thường. “A” sẽ được hệ điều hành hiểu là khác so với “a”.

Để vào hệ thống file, dùng:

- pwd: đưa ra ngoài màn hình thư mục đang hoạt động (ví dụ: /etc/ssh).

- cd: thay đổi thư mục (ví dụ: cd .. – ra một cấp thư mục hiện tại; cd vidu – vào thư mục /vidu).

- ls: đưa ra danh sách nội dung thư mục.


- mkdir: tạo thư mục mới (mkdir tên_thumuc).

- touch: tạo file mới (touch ten_file).

- rmdir: bỏ một thư mục (rmdir ten_thumuc).

- cp: copy file hoặc thư mục (cp file_nguồn file_đích).

- mv: di chuyển file hoặc thư mục; cũng được dùng để đặt lại tên file hoặc thư mục (mv vị_trí_cũ vị_trí_mới hoặc mv tên_cũ tên_mới).

- rm: loại bỏ file (rm tên_file).

Để tìm kiếm file, bạn có thể dùng:

- find : dùng cho các tên file.

- grep <>: để tìm nội dung trong file.

Để xem một file, bạn có thể dùng:

- more : hiển thị file theo từng trang.

- cat <>: hiển thị tất cả file.

- head <>: hiển thị các dòng đầu tiên.

- tail <>: hiển thị các dòng cuối cùng (có thể hữu ích trong những trường hợp như khi bạn muốn xem thông tin cuối cùng của một file hệ thống).

Để chính sửa file, bạn phải sử dụng trình soạn thảo tích hợp sẵn trên dòng lệnh. Thông thường, đây là vi và được dùng với cú pháp: vi .

Để giải nén một lưu trữ (thông thường có đuôi tar.gz), bạn phải dùng lệnh tar với cú pháp tar -xvf .

Để in một file, dùng lệnh lpr . Chú ý là bạn phải có một số daemon hoạt động để quản lý máy in. Thông thường đây là các cup (chủ yếu là UNIX Printing System) có thể sử dụng cho tất cả các phân phối chính.

Để loại bỏ file khỏi hàng đợi ở máy in (bạn có thể lên danh sách hàng đợi bằng lệnh lpq), sử dụng câu lệnh lprm .

Để lắp hoặc gỡ bỏ thiết bị (thêm vào hệ thống file với vai trò như một phương tiện được phép sử dụng), dùng:

- mount /mnt/floppy: lắp thêm ổ mềm.

- umount /mnt/floppy: gỡ bỏ ổ mềm.

- mount /mnt/cdrom: lắp ổ CD-ROM.

- mount /mnt/cdrom: gỡ ổ DC-ROM.

Các thiết bị này thường được cài và cho phép sử dụng một cách tự động. Nhưng có thể một ngày đẹp trời nào đó bạn lại phải tự mình thực hiện công việc này khi có lỗi xảy ra. Đừng lo lắng!

Để tạo một phân vùng

Đầu tiên, tạo một thư mục trong /mnt (mkdir /mnt/ổ_đĩa_mới). Sau đó sử dụng lệnh mount (mount /dev/source /mnt/ ổ_đĩa_mới), trong đó /dev/source là thiết bị (tức phân vùng) bạn muốn lắp thêm vào hệ thống file.

Nếu muốn kết nối tới một host từ xa, sử dụng lệnh ssh. Cú pháp là ssh .

Quản lý hệ thống:

- ps: hiển thị các chương trình hiện thời đang chạy (rất hữu ích: ps là cái nhìn toàn bộ về tất cả các chương trình).

Trong danh sách đưa ra khi thực hiện lệnh ps, bạn sẽ thấy có số PID (Process identification - nhân dạng tiến trình).

Con số này sẽ được hỏi đến khi muốn ngừng một dịch vụ hay ứng dụng, dùng lệnh kill .

- top: hoạt động khá giống như Task Manager trong Windows. Nó đưa ra thông tin về tất cả tài nguyên hệ thống, các tiến trình đang chạy, tốc độ load trung bình… Lệnh top -d thiết lập khoảng thời gian làm tươi lại hệ thống. Bạn có thể đặt bất kỳ giá trị nào, từ .1 (tức 10 mili giây) tới 100 (tức 100 giây) hoặc thậm chí lớn hơn.

- uptime: thể hiện thời gian của hệ thống và tốc độ load trung bình trong khoảng thời gian đó, trước đây là 5 phút và 15 phút.

Thông thường tốc độ load trung bình được tính toán theo phần trăm tài nguyên hệ thống (vi xử lý, RAM, ổ cứng vào/ra, tốc độ load mạng) được dùng tại một thời điểm. Nếu tốc độ được tính toán là 0.37, tức có 37% tài nguyên được sử dụng. Giá trị lớn hơn như 2.35 nghĩa là hệ thống phải đợi một số dữ liệu, khi đó nó sẽ tính toán nhanh hơn 235% mà không gặp phải vấn đề gì. Nhưng giữa các phân phối có thể khác nhau một chút.

- free: hiển thị thông tin trên bộ nhớ hệ thống.

- ifconfig : để xem thông tin chi tiết về các giao diện mạng; thông thường giao diện mạng ethernet có tên là eth(). Bạn có thể cài đặt các thiết lập mạng như địa chỉ IP hoặc bằng cách dùng lệnh này (xem man ifconfig). Nếu có điều gì đó chưa chính xác, bạn có thể stop hoặc start (tức ngừng hoặc khởi_động) giao diện bằng cách dùng lệnh ifconfig up/down.

- passwd: cho phép bạn thay đổi mật khẩu (passwd người_dùng_sở_hữu_mật_khẩu hoặc tên người dùng khác nếu bạn đăng nhập hệ thống với vai trò root).

- useradd: cho phép bạn thêm người dùng mới (xem man useradd).

Dù ở phân phối nào, bạn cũng có thể dùng phím TAB để tự động hoàn chỉnh một lệnh hoặc tên file. Điều này rất hữu ích khi bạn quen với các lệnh. Bạn cũng có thể sử dụng các phím lên, xuống để cuộn xem các lệnh đã nhập. Bạn có thể dùng lệnh đa dòng trên một dòng. Ví dụ như, nếu muốn tạo ba thư mục chỉ trên một dòng, cú pháp có thể là: mkdir thư_mục_1 ; mkdir thư_mục_2 ; mkdir thư_mục_3.

Một điều thú vị khác nữa là các lệnh dạng pipe. Bạn có thể xuất một lệnh thông qua lệnh khác. Ví dụ: man mkdir | tail sẽ đưa ra thông tin các dòng cuối cùng trong trang xem "thủ công" của lệnh mkdir.

Nếu lúc nào đó được yêu cầu phải đăng nhập với tài khoản gốc (tức "siêu" admin của hệ thống), bạn có thể đăng nhập tạm thời bằng cách dùng lệnh su. Tham số -1 (su-1) dùng để thay đổi thư mục chủ và cho các lệnh đã hoặc đang dùng. Chú ý là bạn cũng sẽ được nhắc một mật khẩu.

Để thoát hay đóng shell, gõ exit hoặc logout.

T.Thu

Để website luôn online với cluster Apache High Availability Linux

Cluster sửa chữa lỗi (failover cluster) được dùng để đảm bảo tính sẵn sàng cho các dịch vụ và ứng dụng hệ thống khi bị tấn công, xử lý các lỗi phần cứng và rủi ro do môi trường. Trong bài này chúng tôi sẽ hướng dẫn các bạn cách thức thực hiện một cluster Apache hai nút, chắc chắn tin cậy và hiệu quả cao với ứng dụng thú vị của dự án The High-Availability Linux. Cluster này đã được kiểm tra trên các phân phối Fedora Core 5, CentOS 4.3, và Ubuntu 6.06.1 LTS server.

Trong môi trường cluster, hệ thống 'có tính sẵn sàng cao' (high ability - HA) chịu trách nhiệm bắt đầu và kết thúc các dịch vụ, cài đặt và gỡ bỏ tài nguyên, giám sát khả năng sẵn sàng của hệ thống trong môi trường cluster và điều khiển quyền sở hữu địa chỉ IP ảo chia sẻ giữa các nút cluster. Dịch vụ heartbeat (trung tâm) cung cấp các tính năng cơ sở cần thiết cho hệ thống HA.

Cấu hình cluster phổ biến nhất là standby, sẽ được mô tả dưới đây. Trong cấu hình cluster này, một nút thực hiện tất cả các việc, còn các nút khác ở trạng thái nghỉ ngơi. Heartbeat giám sát "sức khoẻ" của từng dịch vụ cụ thể, thông thường qua một giao diện Ethernet phân tách vốn chỉ dùng cho hệ thống HA sử dụng câu lệnh đặc biệt ping. Nếu vì một lý do nào đó, nút đang thực hiện bị hỏng, heartbeat sẽ chuyển tất cả thành phần HA sang nút khoẻ mạnh khác. Khi nút cũ phục hồi, nó có thể khôi phục lại tình trạng cũ trước đó của mình.

Cài đặt và cấu hình

Để kiểm tra hệ thống High Availability Linux, bạn cần một bộ điều hợp Ethernet thứ hai trên từng nút dành cho heartbeat. Cài đặt Web server Apache và chương trình heartbeat phải trên cả hai nút. Nếu gói heartbeat không nằm trong bất kỳ phần lưu trữ của các phân phối đã có, bạn có thể download tại đây. Trên server CentOS, tôi dùng yum để cài đặt phần mềm cần thiết:

yum install -y httpd heartbeat


Các file cấu hình cho hearbeat không nằm ở nơi phần mềm được cài đặt. Bạn cần copy chúng từ thư mục documentation tới thư mục /etc/ha.d/:

cp /usr/share/doc/heartbeat*/ha.cf /etc/ha.d/

cp /usr/share/doc/heartbeat*/haresources /etc/ha.d/

cp /usr/share/doc/heartbeat*/authkeys /etc/ha.d/

Trong file /etc/hosts bạn phải bổ sung thêm tên hostname và địa chỉ IP để hai nút có thể giao tiếp được với nhau. Trong trường hợp của tôi sẽ như thế này:


192.168.1.1 node1.example.com node1

192.168.1.2 node2.example.com node2


Phải đảm bảo file /etc/hosts là giống nhau ở cả hai nút. Sau đó ping chúng, copy file từ nút này tới nút khác, sử dụng câu lệnh copy an toàn:


scp /etc/hosts root@node2:/etc/

Tiếp theo, chỉnh sửa file cấu hình /etc/ha.d/ha.cf theo các điểm vào để heartbeat có thể hoạt động:

logfile /var/log/ha-log # chỗ để log mọi thứ từ heartbeat

logfacility local0 # tiện ích sử dụng cho syslog hoặc logger

keepalive 2 # thời gian giữa các heartbeat

deadtime 30 # thời gian đến khi host được đưa ra 'chết'

warntime 10 # thời gian trước khi cung cấp cảnh báo chậm trễ "late heartbeat".

initdead 120 # thời gian chết đầu tiên (initdead)

udpport 694 # cổng udp cho truyền thông bcast hoặc ucast

bcast eth1 # giao diện quảng bá (broadcast)

ucast eth1 10.0.0.1 # cluster 2 nút, vì thế không cần dùng dạng đa quảng bá (multicast)

auto_failback on # tự động gửi tài nguyên sai trở lại nút chính

node node1.example.com # tên của nút đầu tiên

node node2.example.com # tên của nút thứ hai

Đây là các tuỳ chọn cơ sở cần thiết để heartbeat hoạt động. File này phải được cấu hình giống hệt nhau trên cả hai nút, ngoại trừ phần "ucast" (nơi để địa chỉ IP của hàng để gửi các gói tới).

File tiếp theo là /etc/ha.d/haresources. Trong file này bạn cần định nghĩa tên nút chính, địa chỉ IP ảo (cluster IP) và tài nguyên dùng để bắt đầu. Ở trường hợp của chúng ta thì đó là Web server Apache.

Chỉ cần một dòng dữ liệu ở đây:

node1.example.com 192.168.1.5 httpd


Hãy chắc chắn rằng file này giống nhau hoàn toàn trên cả hai nút. Chú ý tên tài nguyên là tên script khởi tạo đặt trong thư mục /etc/init.d. Nếu tên tài nguyên trong /etc/init.d không hoàn toàn giống nhau, heartbeat sẽ không thể tìm thấy khi cố gắng đọc nó và cả Apache lẫn hearbeat đều không thể khởi động được.

File liên quan đến heartbeat cuối cùng là /etc/ha.d/authkeys. File này cũng phải hoàn toàn giống nhau trên cả hai nút và chỉ được đọc hoặc ghi bởi người dùng root. Nếu quyền hạn bị thiết lập khác đi, heartbeat sẽ từ chối khởi động. Bạn cần phải cấu hình file như thế này:

auth 1

1 crc

và giới hạn quyền đọc hoặc ghi chỉ dành cho người dùng root:

chmod 600 /etc/ha.d/authkeys

Bây giờ là cấu hình Apache service. Chúng ta muốn Apache nghe địa chỉ IP ảo 192.168.1.5 và cần trỏ thư mục Apache gốc tới điểm cài đặt dữ liệu /data, nơi các file Web được lưu lại. Chú ý là nơi lưu trữ dành cho Apache có thể là một nơi cụ thể từ thư mục file hệ thống cục bộ tới mạng khu vực lưu trữ. Tất nhiên nếu dữ liệu trong cả hai nút không giống nhau thì sẽ chẳng có điểm nào trong cluster failover cả. Nếu bạn không có thiết bị lưu trữ mạng mở rộng (như Fibre Channel chẳng hạn), bạn có thể cài đặt bất kỳ file hệ thống nào như SMB, NFS, iSCSI, hoặc SAN là thư mục địa phương để dữ liệu có thể được truy cập trên từng nút khi các nút hoạt động. Điều này được thực hiện bằng cách chỉnh sửa các thông số đầu vào trong file

/etc/httpd/conf/httpd.conf như sau (ít nhất là trên phân phối CentOS):

Listen 192.168.1.5:80

DocumentRoot "/data"

Bỏ chức năng bắt đầu tự động khởi động trong thời gian boot cho Apache service là khá quan trọng. Khi đó heartbeat sẽ bắt đầu và kết thúc dịch vụ khi cần thiết. Vô hiệu hoá chức năng bắt đầu với câu lệnh sau (trên hệ thống Red Hat):

chkconfig httpd remove

Phải đảm bảo cấu hình Apache giống nhau trên cả hai nút.


Kiểm tra

Bây giờ chúng ta sẽ kiểm tra thử chương trình làm việc với cấu hình vừa thiết lập, bắt đầu tạo cluster mới, khởi động dịch vụ hearbeat trên cả hai nút:

/etc/init.d/heartbeat start

Xem thư mục /var/log/ha-log trên cả hai nút. Nếu tất cả được cấu hình chính xác, bạn sẽ thấy thông tin trong các file log như sau:


Configuration validated. Starting heartbeat 1.2.3.cvs.20050927

heartbeat: version 1.2.3.cvs.20050927

Link node1.example.com:eth1 up.

Link node2.example.com:eth1 up.

Status update for node node2.example.com: status active

Local status now set to: 'active'

remote resource transition completed.

Local Resource acquisition completed. (none)

node2.example.com wants to go standby [foreign]

acquire local HA resources (standby).

local HA resource acquisition completed (standby).

Standby resource acquisition done [foreign].

Initial resource acquisition complete (auto_failback)

remote resource transition completed.

Tiếp theo là kiểm tra failover, khởi động lại server master (server chính). Server slave (server phụ) là dịch vụ Apache. Nếu mọi thứ hoạt động tốt bạn sẽ thấy như sau:


Received shutdown notice from 'node1.example.com'.

Resources being acquired from node1.example.com.

acquire local HA resources (standby).

local HA resource acquisition completed (standby).

Standby resource acquisition done [foreign].

Running /etc/ha.d/rc.d/status status

Taking over resource group 192.168.1.5

Acquiring resource group: node1.example.com 192.168.1.5 httpd

mach_down takeover complete for node node1.example.com.

node node1.example.com: is dead

Dead node node1.example.com gave up resources.

Link node1.example.com:eth1 dead.

Khi master online trở lại, thông số trên Apache service như sau:


Heartbeat restart on node node1.example.comheartbeat

Link node1.example.com:eth1 up.

node2.example.com wants to go standby [foreign]

standby: node1.example.com can take our foreign resources

give up foreign HA resources (standby).

Releasing resource group: node1.example.com 192.168.1.5 httpd

Local standby process completed [foreign].

remote resource transition completed.

Other node completed standby takeover of foreign resources.


Kết luận


Đó là tất cả các bước để xây dựng một Web server cluster mang tính sẵn sàng cao với chi phí thấp. Tất nhiên có nhiều sản phẩm thương mại khác cũng được cung cấp với cùng mục đích này. Nhưng với các doanh nghiệp nhỏ hay các tổ chức tương tự thì High Availability Linux và heartbeat là một lựa chọn sáng suốt.