เชฟ - การตั้งค่ามีด
Knife เป็นเครื่องมือบรรทัดคำสั่งของ Chef ในการโต้ตอบกับเซิร์ฟเวอร์ Chef หนึ่งใช้สำหรับอัปโหลดตำราอาหารและจัดการด้านอื่น ๆ ของ Chef มีอินเทอร์เฟซระหว่าง chefDK (Repo) บนเครื่องท้องถิ่นและเซิร์ฟเวอร์ Chef ช่วยในการจัดการ -
- โหนดพ่อครัว
- Cookbook
- Recipe
- Environments
- ทรัพยากรระบบคลาวด์
- การจัดสรรระบบคลาวด์
- การติดตั้งบนไคลเอนต์ Chef บนโหนด Chef
Knife มีชุดคำสั่งเพื่อจัดการโครงสร้างพื้นฐานของ Chef
คำสั่ง Bootstrap
- มีด bootstrap [SSH_USER @] FQDN (ตัวเลือก)
คำสั่งไคลเอ็นต์
- ลูกค้ามีดจำนวนมากลบ REGEX (ตัวเลือก)
- ลูกค้ามีดสร้าง CLIENTNAME (ตัวเลือก)
- ลูกค้ามีดลบไคลเอนต์ (ตัวเลือก)
- ลูกค้ามีดแก้ไขไคลเอนต์ (ตัวเลือก)
- การใช้งาน: C: / opscode / chef / bin / knife (ตัวเลือก)
- คีย์ไคลเอนต์มีดลบไคลเอนต์ KEYNAME (ตัวเลือก)
- มีดไคลเอนต์คีย์แก้ไขไคลเอนต์คีย์ (ตัวเลือก)
- มีดไคลเอนต์รายการคีย์ไคลเอนต์ (ตัวเลือก)
- มีดไคลเอ็นต์คีย์แสดงไคลเอ็นต์ KEYNAME (ตัวเลือก)
- รายชื่อลูกค้ามีด (ตัวเลือก)
- ลูกค้ามีดลงทะเบียนลูกค้าใหม่ (ตัวเลือก)
- ลูกค้ามีดแสดง CLIENT (ตัวเลือก)
กำหนดค่าคำสั่ง
- มีดกำหนดค่า (ตัวเลือก)
- มีดกำหนดค่าไคลเอ็นต์ DIRECTORY
คำสั่งตำราอาหาร
- มีดตำราลบ REGEX จำนวนมาก (ตัวเลือก)
- ตำรามีดสร้าง COOKBOOK (ตัวเลือก)
- มีดตำราลบ COOKBOOK VERSION (ตัวเลือก)
- ดาวน์โหลดตำรามีด COOKBOOK [VERSION] (ตัวเลือก)
- รายการตำรามีด (ตัวเลือก)
- มีดตำราอาหารเมตาดาต้า COOKBOOK (ตัวเลือก)
- ข้อมูลเมตาของมีดตำราอาหารจาก FILE (ตัวเลือก)
- มีดตำราแสดง COOKBOOK [VERSION] [PART] [FILENAME] (ตัวเลือก)
- แบบทดสอบตำรามีด [COOKBOOKS ... ] (ตัวเลือก)
- อัปโหลดมีดตำรา [COOKBOOKS ... ] (ตัวเลือก)
คำสั่งเว็บไซต์ตำราอาหาร
- ดาวน์โหลดไซต์ตำรามีด COOKBOOK [VERSION] (ตัวเลือก)
- เว็บไซต์มีดตำราติดตั้ง COOKBOOK [VERSION] (ตัวเลือก)
- รายการเว็บไซต์มีดตำราอาหาร (ตัวเลือก)
- การค้นหาไซต์ตำรามีด QUERY (ตัวเลือก)
- มีดตำราอาหารแบ่งปัน COOKBOOK [CATEGORY] (ตัวเลือก)
- เว็บไซต์มีดตำราแสดง COOKBOOK [VERSION] (ตัวเลือก)
- ไซต์ตำรามีดเลิกแชร์ COOKBOOK
คำสั่งกระเป๋าข้อมูล
- กระเป๋าใส่มีดสร้าง BAG [ITEM] (ตัวเลือก)
- ถุงข้อมูลมีดลบ BAG [ITEM] (ตัวเลือก)
- มีด data bag แก้ไข BAG ITEM (ตัวเลือก)
- ถุงข้อมูลมีดจากไฟล์ BAG FILE | FOLDER [FILE | FOLDER .. ] (ตัวเลือก)
- รายการถุงข้อมูลมีด (ตัวเลือก)
- กระเป๋าใส่มีดแสดง BAG [ITEM] (ตัวเลือก)
คำสั่งสิ่งแวดล้อม
- สภาพแวดล้อมของมีดเปรียบเทียบ [ENVIRONMENT .. ] (ตัวเลือก)
- สภาพแวดล้อมของมีดสร้างสภาพแวดล้อม (ตัวเลือก)
- สภาพแวดล้อมมีดลบ ENVIRONMENT (ตัวเลือก)
- สภาพแวดล้อมมีดแก้ไขสภาพแวดล้อม (ตัวเลือก)
- สภาพแวดล้อมมีดจากไฟล์ FILE [FILE .. ] (ตัวเลือก)
- รายการสภาพแวดล้อมมีด (ตัวเลือก)
- สภาพแวดล้อมของมีดแสดงสภาพแวดล้อม (ตัวเลือก)
คำสั่ง Exec
- ผู้บริหารมีด [SCRIPT] (ตัวเลือก)
คำสั่งช่วยเหลือ
- ความช่วยเหลือมีด [รายการ | หัวข้อ]
คำสั่งดัชนี
- สร้างดัชนีมีด (ตัวเลือก)
คำสั่งโหนด
- โหนดมีดจำนวนมากลบ REGEX (ตัวเลือก)
- โหนดมีดสร้าง NODE (ตัวเลือก)
- โหนดมีดลบ NODE (ตัวเลือก)
- โหนดมีดแก้ไข NODE (ตัวเลือก)
- สภาพแวดล้อมโหนดมีดตั้งค่า NODE ENVIRONMENT
- โหนดมีดจากไฟล์ FILE (ตัวเลือก)
- รายการโหนดมีด (ตัวเลือก)
- โหนดมีด run_list เพิ่ม [NODE] [ENTRY [, ENTRY]] (ตัวเลือก)
- โหนดมีด run_list ลบ [NODE] [ENTRY [, ENTRY]] (ตัวเลือก)
- โหนดมีด run_list ตั้งค่า NODE ENTRIES (ตัวเลือก)
- โหนดมีดแสดง NODE (ตัวเลือก)
คำสั่ง OSC
- มีด osc_user สร้าง USER (ตัวเลือก)
- มีด osc_user ลบ USER (ตัวเลือก)
- มีด osc_user แก้ไข USER (ตัวเลือก)
- มีด osc_user รายการ (ตัวเลือก)
- มีด osc_user ลงทะเบียนใหม่ USER (ตัวเลือก)
- มีด osc_user แสดง USER (ตัวเลือก)
คำสั่งตามเส้นทาง
- มีดลบ [PATTERN1 ... PATTERNn]
- มีด deps PATTERN1 [PATTERNn]
- มีดต่างรูปแบบ
- มีดดาวน์โหลด PATTERNS
- มีดแก้ไข [PATTERN1 ... PATTERNn]
- รายการมีด [-dfR1p] [PATTERN1 ... PATTERNn]
- การแสดงมีด [PATTERN1 ... PATTERNn]
- มีดอัพโหลดรูปแบบ
- xargs มีด [COMMAND]
คำสั่งดิบ
- มีด REQUEST_PATH ดิบ
คำสั่งสูตร
- รายการสูตรมีด [PATTERN]
คำสั่งบทบาท
- มีดบทบาทลบ REGEX จำนวนมาก (ตัวเลือก)
- บทบาทมีดสร้าง ROLE (ตัวเลือก)
- มีดบทบาทลบ ROLE (ตัวเลือก)
- บทบาทมีดแก้ไข ROLE (ตัวเลือก)
- บทบาทมีด env_run_list เพิ่ม [ROLE] [ENVIRONMENT] [ENTRY [, ENTRY]] (ตัวเลือก)
- บทบาทมีด env_run_list ชัดเจน [ROLE] [ENVIRONMENT]
- บทบาทมีด env_run_list ลบ [ROLE] [ENVIRONMENT] [ENTRIES]
- บทบาทมีด env_run_list แทนที่ [ROLE] [ENVIRONMENT] [OLD_ENTRY] [NEW_ENTRY]
- ชุดมีด env_run_list [ROLE] [ENVIRONMENT] [ENTRIES]
- บทบาทมีดจากไฟล์ FILE [FILE .. ] (ตัวเลือก)
- รายการบทบาทมีด (ตัวเลือก)
- มีดบทบาท run_list เพิ่ม [ROLE] [ENTRY [, ENTRY]] (ตัวเลือก)
- มีด run_list ล้าง [ROLE]
- มีดบทบาท run_list ลบ [ROLE] [ENTRY]
- บทบาทมีด run_list แทนที่ [ROLE] [OLD_ENTRY] [NEW_ENTRY]
- ชุดมีด run_list [ROLE] [ENTRIES]
- แสดงบทบาทมีด ROLE (ตัวเลือก)
ทำหน้าที่คำสั่ง
- มีดเสิร์ฟ (ตัวเลือก)
คำสั่ง SSH
- มีด ssh QUERY COMMAND (ตัวเลือก)
คำสั่ง SSL
- ตรวจสอบ ssl มีด [URL] (ตัวเลือก)
- มีด ssl ดึง [URL] (ตัวเลือก)
คำสั่งสถานะ
- สถานะมีด QUERY (ตัวเลือก)
คำสั่งแท็ก
- แท็กมีดสร้าง NODE TAG ...
- มีดแท็กลบ NODE TAG ...
- รายการแท็กมีด NODE
คำสั่งของผู้ใช้
- ผู้ใช้มีดสร้าง USERNAME DISPLAY_NAME FIRST_NAME LAST_NAME EMAIL PASSWORD (ตัวเลือก)
- ผู้ใช้มีดลบ USER (ตัวเลือก)
- ผู้ใช้มีดแก้ไข USER (ตัวเลือก)
- คีย์ผู้ใช้มีดสร้าง USER (ตัวเลือก)
- คีย์ผู้ใช้มีดลบ USER KEYNAME (ตัวเลือก)
- คีย์ผู้ใช้มีดแก้ไข USER KEYNAME (ตัวเลือก)
- รายการคีย์ผู้ใช้มีด USER (ตัวเลือก)
- คีย์ผู้ใช้มีดแสดง USER KEYNAME (ตัวเลือก)
- รายชื่อผู้ใช้มีด (ตัวเลือก)
- ผู้ใช้มีดลงทะเบียนใหม่ USER (ตัวเลือก)
- ผู้ใช้มีดแสดง USER (ตัวเลือก)
การตั้งค่ามีด
ในการตั้งมีดต้องย้ายไปที่ .chef ไดเร็กทอรีและสร้างไฟล์ knife.rbภายใน repo เชฟซึ่งบอกมีดเกี่ยวกับรายละเอียดการกำหนดค่า ซึ่งจะมีรายละเอียดสองสามอย่าง
current_dir = File.dirname(__FILE__)
log_level :info
log_location STDOUT
node_name 'node_name'
client_key "#{current_dir}/USER.pem"
validation_client_name 'ORG_NAME-validator'
validation_key "#{current_dir}/ORGANIZATION-validator.pem"
chef_server_url 'https://api.chef.io/organizations/ORG_NAME'
cache_type 'BasicFile'
cache_options( :path => "#{ENV['HOME']}/.chef/checksums" )
cookbook_path ["#{current_dir}/../cookbooks"]
ในโค้ดด้านบนเราใช้เซิร์ฟเวอร์ Chef ที่โฮสต์ซึ่งใช้สองคีย์ต่อไปนี้
validation_client_name 'ORG_NAME-validator'
validation_key "#{current_dir}/ORGANIZATION-validator.pem"
ที่นี่ knife.rb จะบอกมีดว่าจะใช้องค์กรใดและจะหาคีย์ส่วนตัวได้ที่ไหน มันบอกมีดว่าจะหาคีย์ส่วนตัวของผู้ใช้ได้ที่ไหน
client_key "#{current_dir}/USER.pem"
โค้ดบรรทัดต่อไปนี้บอกมีดว่าเรากำลังใช้เซิร์ฟเวอร์ที่โฮสต์
chef_server_url 'https://api.chef.io/organizations/ORG_NAME'
การใช้ไฟล์ knife.rb ตอนนี้มีด validator สามารถเชื่อมต่อกับ Opscode ที่โฮสต์ไว้ในองค์กรของคุณได้