बावर्ची - व्यंजनों के साथ रूबी रत्न
व्यंजन विधि रसोई की किताब के प्रमुख निर्माण खंड हैं जो मूल रूप से रूबी कोड है। शेफ नुस्खा के अंदर रूबी भाषा की सभी विशेषताओं का उपयोग करना संभव है। अधिकांश समय रूबी कार्यक्षमता में निर्माण पर्याप्त है लेकिन कभी-कभी किसी को अतिरिक्त रूबी रत्न का उपयोग करने की आवश्यकता हो सकती है। उदाहरण के लिए, यदि किसी को रेसिपी से MySQL डेटाबेस को एक्सेस करने की आवश्यकता है।
शेफ की रेसिपी में आवश्यक रूबी रत्नों को प्राप्त करने की क्षमता होती है ताकि वे उसी रेसिपी के अंदर उपयोग कर सकें।
दिया गया नुस्खा में iptable रत्न का उपयोग करना
Step 1 - कुकबुक की डिफॉल्ट रेसिपी को एडिट करें और रेसिपी के अंदर इस्तेमाल होने वाले रत्न को स्थापित करें।
vipin@laptop:~/chef-repo $ subl
cookbooks/my_cookbook/recipes/default.rb
chef_gem 'ipaddress'
require 'ipaddress'
ip = IPAddress("192.168.0.1/24")
Chef::Log.info("Netmask of #{ip}: #{ip.netmask}")
Step 2 - बावर्ची सर्वर के लिए संशोधित रसोई की किताब अपलोड करें।
vipin@laptop:~/chef-repo $ knife cookbook upload my_cookbook
Uploading my_cookbook [0.1.0]
Step 3 - आउटपुट देखने के लिए शेफ क्लाइंट चलाना।
user@server $ sudo chef-client
...TRUNCATED OUTPUT...
[2013-01-18T14:02:02+00:00] INFO: Netmask of 192.168.0.1:
255.255.255.0
...TRUNCATED OUTPUT...
कार्य विधि
शेफ रन चरणों में संकलन चरण शामिल है, जहां यह सभी संसाधनों और एक निष्पादन चरण को संकलित करता है, जहां शेफ संसाधन प्रदाताओं को नोड को वांछित राज्य में परिवर्तित करने के लिए चलाता है। यदि किसी को रसोई की किताब के अंदर किसी विशेष रूबी रत्न की आवश्यकता होती है, तो किसी को जटिलता चरण के दौरान रत्न स्थापित करने की आवश्यकता होती है।
Chef_gem संसाधन ठीक वैसा ही करेगा, और शेफ में, ओम्निबस काम करने का एकमात्र तरीका है। इसका मुख्य कार्य शेफ को रत्न उपलब्ध कराना है।