Khi thực hiện puppet agent
cuộc gọi từ một hình ảnh mới, tôi gặp err: Could not find class custommod
lỗi. Bản thân mô-đun này /etc/puppet/modules/custommod
giống như tất cả các mô-đun khác mà chúng tôi đang gọi, nhưng mô-đun này là chướng ngại vật.
[trang web.pp]
node /clunod-wk\d+\.sub\.example\.local/ {
include base
include curl
include custommod
class{ "custommod::apps": frontend => "false}
[...]
}
Khi con rối được chạy với đầu ra gỡ lỗi, nó rõ ràng tìm thông tin cho cơ sở và cuộn tròn:
debug: importing '/etc/puppet/modules/base/manifests/init.pp' in environment production
debug: Automatically imported base from base into production
debug: importing '/etc/puppet/modules/curl/manifests/init.pp' in environment production
debug: Automatically imported curl from curl into production
err: Could not find class custommod for clunod-wk0130.sub.example.local at /etc/puppet/manifests/site.pp:84 on node clunod-wk0130.sub.example.local
Dòng 84 là include custommod
Một thư mục viết tắt và cấu trúc tệp:
/etc/puppet
|- manifests
| |- site.pp
|
|- modules
|- base
| |- manifests
| |- init.pp
|
|- curl
| |- manifests
| |- init.pp
|
|- custommod
|- files
| |- apps
| |- [...]
|
|- manifests
|- init.pp
|- apps.pp
Tôi đã kiểm tra chính tả:}
Nội dung của init.pp
trong thư mục lưu trữ là hoàn toàn không đáng kể:
class custommod {
}
Mục đích là để tạo một lớp trống cho tệp apps.pp, nơi chứa thịt.
class custommod::apps {
[lots of stuff]
}
Chỉ, nó không bao giờ vào tập tin ứng dụng. Nếu tôi nhận xét include custommod
, lỗi ở trên được tạo ra trên class{ "custommod::apps": frontend => "false}
dòng thay thế.
Tôi còn thiếu gì trong cuộc săn lùng của mình để tìm hiểu xem lỗi này được tạo ra như thế nào? Tôi cần lưu ý rằng repo này chỉ hoạt động tốt nếu nó được chạy cục bộ thông qua puppet apply
.
could not retrieve catalog from remote server:
lỗi có lẽ là lý do tại sao.
custommod
- thậm chí có thể thử xóa init.pp
hoàn toàn, vì nó không cần thiết.
strace
vào nó và cố gắng tìm ra những tập tin mà nó đang cố đọc theo cách đó.