Đầu bếp - Môi trường
Chef giúp thực hiện cấu hình môi trường cụ thể. Luôn luôn là một ý kiến hay khi có một môi trường riêng biệt để phát triển, thử nghiệm và sản xuất.
Chef cho phép nhóm các nút thành các môi trường riêng biệt để hỗ trợ luồng phát triển có thứ tự.
Tạo môi trường
Tạo môi trường khi đang bay có thể được thực hiện bằng tiện ích dao. Lệnh sau sẽ mở trình soạn thảo mặc định của Shell để người ta có thể sửa đổi định nghĩa môi trường.
vipin@laptop:~/chef-repo $ knife environment create book {
"name": "book",
"description": "",
"cookbook_versions": {
},
"json_class": "Chef::Environment",
"chef_type": "environment",
"default_attributes": {
},
"override_attributes": {
}
}
Created book
Kiểm tra một môi trường đã tạo
vipin@laptop:~/chef-repo $ knife environment list
_default
book
Nút danh sách cho tất cả môi trường
vipin@laptop:~/chef-repo $ knife node list
my_server
_Môi trường mặc định
Mỗi tổ chức sẽ luôn bắt đầu với ít nhất một môi trường duy nhất được gọi là môi trường mặc định, môi trường này luôn có sẵn cho máy chủ Chef. Không thể sửa đổi môi trường mặc định. Bất kỳ loại thay đổi nào chỉ có thể được thực hiện trong môi trường tùy chỉnh mà chúng tôi tạo ra.
Thuộc tính môi trường
Một thuộc tính có thể được xác định trong một môi trường và sau đó được sử dụng để ghi đè cài đặt mặc định trong nút. Khi quá trình chạy máy khách Chef diễn ra, các thuộc tính này được so sánh với các thuộc tính mặc định đã có trong nút. Khi các thuộc tính môi trường được ưu tiên hơn các thuộc tính mặc định, ứng dụng khách Chef sẽ áp dụng các cài đặt và giá trị này khi ứng dụng khách Chef chạy diễn ra trên mỗi nút.
Thuộc tính môi trường chỉ có thể là default_attribute hoặc override_attribute. Nó không thể là một thuộc tính bình thường. Người ta có thể sử dụng các phương thức default_attribute hoặc override_attribute.
Loại thuộc tính
Default - Thuộc tính mặc định luôn được đặt lại khi bắt đầu mỗi lần chạy khách hàng Chef và có mức ưu tiên thuộc tính thấp nhất.
Override- Thuộc tính ghi đè luôn được đặt lại khi bắt đầu mỗi lần chạy máy khách Chef và có mức ưu tiên thuộc tính cao hơn mặc định, force_default và bình thường. Thuộc tính ghi đè thường được xác định nhiều nhất trong công thức nhưng cũng có thể được chỉ định trong tệp thuộc tính cho một vai trò hoặc cho một môi trường.