Triển khai cài đặt hệ thống Linux tự động với Cobbler

1. Giới thiệu

1.1 Cobbler là gì?

Cobbler là một gói công cụ tiện ích cho phép triển khai hoàn chỉnh một máy chủ PXE server với khả năng cài đặt tự động các phiên bản Linux thông qua môi trường mạng đồng thời hỗ trợ kết hợp tính năng của kickstart file cho phép tự động hóa hoàn toàn quy trình cài đặt loại bỏ hẳn các thao tác trả lời không cần thiết trong quá trình triển khai ngoài ra còn support deploy OS qua mạng mà không cần sự hỗ trợ của DHCP truyền thống thích hợp cho một số trường hợp triển khai khác nhau. Đây chưa phải là tất cả khả năng của Cobbler như tôi đã trình bày mà các bạn còn cần phải tìm hiểu thêm nhưn trong bài viết này tôi sẽ cố gắng mang đến các khái niệm và ứng dụng thông thường nhất cho một PXE server.

1.2 Các thành phần của Cobbler

Cobbler kết nối và tự động hóa nhiều công đoạn khác nhau trong quá trình cài đặt Linux, giúp cho người quản trị dễ dàng hơn trong việc cài đặt số lượng lớn hệ điều hành Linux với những cấu hình khác nhau. Cobbler quản lý những thành phần chính sau :

Kickstart file : đây là thành phần quan trọng nhất, kickstart file là file chứa tất cả những câu trả lời cần thiết cho việc cài đặt các distro Linux nhờ vào file trả lời này mà toàn bộ quá trình cài đặt sẽ được tự hóa hoàn toàn.

TFTP, Web, FTP, rsync server : đây là các giao thức mà Cobbler sử dụng để truyển tải các file cài đặt từ server đến các máy trạm để cài linux.

DHCP server : để phục vụ cho việc cài đặt qua mạng, máy trạm phải kết nối được đến server và được cấp 1 địa chỉ IP. Quá trình cấp địa chỉ này được thực hiện bởi DHCP server

DNS server : để tiện cho việc quản lý, ta có thể gán địa chỉ IP với 1 tên miền dịch vụ này không phải yêu cầu bắt buộc như DHCP.

Web server : Cobbler cung cấp giao diện web cho phép người quản trị thông qua đó, quản lý các profile cũng như các máy trạm được cài đặt.

– Các khái niệm cơ bản cần biết của Cobbler

Distribution : chứa các thông tin về kernel và initrd nào được sử dụng, bao gồm cả các dữ liệu dùng để cài đặt. Hiểu 1 cách đơn giản. Đấy chính là đĩa cài đặt của Linux của ta.

Profile = Distribution + kickstart file + các gói cài đặt thêm (nếu cần)

System = Profile + MAC addr (IP addr, hostname)

Repo : là nơi chứa các gói cài đặt thêm.

Như vậy, có thể thấy, trình tự cấu hình Cobbler sẽ như sau :

• Tạo distribution
• Tạo profle
• Tạo repo.
• Add system.
• Boot máy trạm và chờ kết quả

2. Hướng dẫn cài đặt Linux bằng Cobbler

2.1 Mô hình

clip_image001[4]
Mô hình ở đây của ta bao gồm :
Một Cobbler server

– Cài OS Centos 5.4

– Cài đặt các service : cobbler, dhcp, http, tftp, rsync (hướng dẫn sau)

– Địa chỉ IP : 192.168.1.2

Một client : một máy trắng hoàn toàn chưa cài đặt hoặc format ổ đĩa. Có trình tự boot từ card mạng có ưu tiên cao nhất

Sau khi cấu hình xong, client khi boot lên lần đầu sẽ tự động lấy file cài đặt Linux từ install server và cài đặt.

2.2 Hướng dẫn cài đặt

Bước 1 : Cài đặt cobbler và các phần mềm cần thiết

Ta cài đặt cobbler và các phần mềm cần thiết của cho nó thông qua yum. Do đó, trước tiên phải enable epel repo của yum.

Chú ý hình bên dưới mình downd về rồi mới cài local

rpm -ivh http://download.fedora.redhat.com/pub/epel/beta/6/i386/epel-release-6-5.noarch.rpm

clip_image003[4]

Chạy tiếp command Yum repolist để cập nhật repo epel

clip_image005[4]

Cài đặt các gói cần thiết cho việc triển khai cobbler

yum install dhcp httpd cobbler.noarch cobbler-web.noarch

clip_image007[4]

Đợi đến khi các gói phụ thuộc và các gói yêu cầu cài đặt xong là kết thúc bước cài đặt

clip_image009[4]

Bước 2 : Cấu hình các dịch vụ căn bản DHCP, tftp, rsync, httpd

Start dịch vụ httpd

Đặt httpd chế độ chạy khi khởi động

clip_image011[4]

Copy tập tin cấu hình DHCP mẫu cho môi trường PXE sang tập tin cấu hình dhcp gốc dhcpd.conf

Cp /etc/cobbler/dhcp.template /etc/dhcpd.conf

clip_image013[4]

Cấu hình tập tin httpd.conf theo mô hình triển khai cá nhân hoặc theo như mô hình bài lab này như sau:

Chú ý là trong quá trình này mình bỏ bớt những cái thừa chỉ để lại các thông tin cần thiết cho môi trường PXE thôi

clip_image015[4]

Start dịch vụ DHCP và đặt chế độ tự chạy khi hệ thống khởi động

clip_image016[4]

Tiếp tục chuyển sang cấu hình dịch vụ tftp

clip_image018[4]

Thay đổi trạng thái disable sang enable bằng cách thay đổi “disable = yes” sang “disable = no”

clip_image020[4]

Tiếp tục sang cấu hình dịch vụ rsync

clip_image022[4]

Thay đổi trạng thái disable sang enable bằng cách thay đổi “disable = yes” sang “disable = no”

clip_image023[4]

Cuối cùng là start dịch vụ xinetd và đặt chế độ tự động chạy khi hệ thống khởi động

clip_image024[4]

Bước 3 : Cấu hình Cobbler

Đầu tiên thay đổi setting cho môi trường cobbler trong tập tin /etc/cobbler/settings

clip_image026[4]

Thay đổi các thông số sau:

Đầu tiên là Next_Server: 127.0.0.1 sang ip máy PXE server là 192.168.1.2

clip_image028[4]

Để tối ưu việc tìm và chỉnh sửa có thể sử dụng phương thức tìm kiếm trong trình vi như sau:

Chú ý: nhấn phím n cho đến khi gặp kết quả vừa ý trong quá trình tìm kiếm

clip_image030[4]

Tiếp đến thông số thứ 2 là server: 127.0.0.1 cũng chuyển sang 192.168.1.2

clip_image032[4]

Tiếp đến cấu hình cho quản lý cobbler trong giao diện web:

Thay đổi thiết lập này trong tập tin /etc/cobbler/modules.conf

clip_image033[4]

Chuyển từ “module = authn_denyall” sang “module = authn_configfile”

clip_image034[4]

Tiếp đến là tạo tài khỏan cho phép quản lý cobbler thông qua giao diện web nhớ restart cobblerd trước đó như hình mô tả sau

clip_image036[4]

Một số boot-loader đang thiếu trong var/lib/cobbler/loaders chúng ta phải chạy command cobbler get-loaders để cập nhật chúng

clip_image038[4]

Bước cuối trong việc cấu hình cobbler là kiểm tra lại config một lần nữa để đảm bảo config chình xác

clip_image040[4]

Nếu kết quả như trên bạn phải restart và sử dụng cobbler sync để hoàn tất cả cấu hình ngoài ra 3 liệt kê thông báo trên chỉ là warning chúng ta có thể bỏ qua đối với thông báo thứ hai default password ở đây là chính là password root cho hệ thống khi được cài đặt qua mạng bạn có thể thay đổi qua lệnh sau:

Openssl passwd -1 “password-letonphat”

clip_image041[4]

Kết quả sẽ cho ra một chuỗi băm nhiệm vụ chúng ta là thay thế chuỗi này bằng chuỗi password mặc định “cobbler” trong file cấu hình settings của cobbler.

clip_image043[4]

Bước 3: tìm hiểu giao diện quản lý bằng web

Để vào giao diện này chúng ta theo dường dẫn sau http://192.168.1.2/cobbler_web

clip_image045[4]

Tuy nhiên để bớt phức tạp chỉ cần http://192.168.1.2/ thì chúng ta có thể thêm đoạn script sau vào file /var/www/html/index.html

clip_image047[4]

Tôi sẽ trình bày các mục chính trong đó là mục importer DVD

clip_image049[4]

Mục này cho phép chúng ta import các distro linux vào hệ thống quan trọng trong mục này là chúng ta khai báo được thư mục chứ resource trên hệ thống (đã được mount từ trước thông qua CD/DVD hoặc nfs đều được)

Sau khi Import thành công chúng ta sẽ có danh sách các distro trong mục Distros

clip_image051[4]

Kèm theo đó là một profile cũng sẽ được tao ra tương ứng với distro đó trong mục Profiles

clip_image053[4]

Trong mỗi profile chúng ta sẽ được quy dịnh một kickstart file tương ứng kickstart file có thể được tạo ra trong mục Kickstart Template. Như có thể thấy là nhờ thế chúng ta có thể tùy biến chỉ một Distro mà chúng ta có thể config nhiều mẫu cấu hình khác nhau nhờ tao thêm nhiều profile trên một distro.

Nếu ai không biết tạo Kickstart file ra sao thì có thể cài đặt gói system-config-kickstart để có công cụ tạo file Kickstart trên Linux Centos có giao diện như sau:

clip_image055[4]

Ngoài ra trong mục BuildOS khá đặc biệt cho phép chúng ta tạo ra một file ISO trong đó chứa menuboot của hệ thống cobbler nhằm mục đích phục vụ cho môi trường không dùng DHCP mà vẫn muốn cài dặt qua mạng. Khi tạo ra file ISO nằm tại thư mục sau /var/www/cobbler/pub/generated.iso

Posted on 05/07/2011, in Linux and tagged , , , , , , , . Bookmark the permalink. 5 phản hồi.

  1. Tìm hiểu cách tích hơp LDAP và Active Direcotory, anh trả lời giùm em nha

  2. Anh có thể share cho em cái video demo hông anh?

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: