Chef - Tệp & Gói

Trong Chef, việc tạo các tệp cấu hình và di chuyển các gói là những thành phần quan trọng. Có nhiều cách để Chef quản lý giống nhau. Có nhiều cách Chef hỗ trợ trong việc xử lý các tệp và gói phần mềm.

Cài đặt Gói từ Repo của bên thứ ba

Step 1 - Chỉnh sửa công thức mặc định của sách nấu ăn.

vipin@laptop:~/chef-repo $ subl cookbooks/test_cookbook/recipes/default.rb 
include_recipe "apt" 
apt_repository "s3tools" do 
   uri "http://s3tools.org/repo/deb-all" 
   components ["stable/"] 
   key "http://s3tools.org/repo/deb-all/stable/s3tools.key" 
   action :add 
end 
package "s3cmd"

Step 2 - Chỉnh sửa siêu dữ liệu để thêm phụ thuộc vào sách nấu ăn apt.

vipin@laptop:~/chef-repo $ subl cookbooks/my_cookbook/metadata.rb 
... 
depends "apt"

Step 3 - Tải sách nấu ăn đã sửa đổi lên máy chủ Chef.

Step 4 - Xác thực rằng gói bạn đang cố gắng cài đặt chưa được cài đặt.

Step 5 - Xác thực repo mặc định.

Step 6 - Chạy Chef-Client trên nút.

Step 7 - Xác thực rằng gói yêu cầu đã được cài đặt.

Cài đặt phần mềm từ nguồn

Nếu người ta cần cài đặt một phần mềm không có sẵn dưới dạng gói cho một nền tảng nhất định, người ta cần phải tự biên dịch phần mềm đó. Trong Chef, chúng ta có thể làm điều này bằng cách sử dụng tài nguyên script.

Step 1 - Chỉnh sửa công thức mặc định.

vipin@laptop:~/chef-repo $ subl cookbooks/my_cookbook/recipes/ 
default.rb 
version = "1.3.9" 
bash "install_nginx_from_source" do 
   cwd Chef::Config['file_cache_path'] 
   code ≪-EOH 
      wget http://nginx.org/download/nginx-#{version}.tar.gz 
      tar zxf nginx-#{version}.tar.gz && 
      cd nginx-#{version} && 
      ./configure && make && make install 
   EOH

Step 2 - Tải sách nấu ăn đã sửa đổi lên máy chủ Chef.

Step 3 - Chạy Chef-Client trên nút.

Step 4 - Xác thực rằng nginx đã được cài đặt.