นี่คือคำสั่ง knife-ssh ที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
knife-ssh - หน้า man สำหรับคำสั่งย่อย ssh ของมีด
งานวิ่งการกุศล มีด SSH คำสั่งย่อยใช้เพื่อเรียกใช้คำสั่ง SSH (แบบขนาน) บนชุดย่อยของโหนด
ภายในองค์กร โดยพิจารณาจากผลลัพธ์ของ ค้นหา การสอบถาม ทำไปยังเซิร์ฟเวอร์เชฟ
วากยสัมพันธ์
คำสั่งย่อยนี้มีไวยากรณ์ต่อไปนี้:
$ มีด ssh SEARCH_QUERY SSH_COMMAND (ตัวเลือก)
Options
คำสั่งย่อยนี้มีตัวเลือกต่อไปนี้:
-a SSH_ATTR, --คุณลักษณะ SSH_ATTR
แอตทริบิวต์ที่ใช้เมื่อเปิดการเชื่อมต่อ SSH แอตทริบิวต์เริ่มต้น
คือ FQDN ของโฮสต์ ค่าที่เป็นไปได้อื่นๆ ได้แก่ ที่อยู่ IP สาธารณะ a
ที่อยู่ IP ส่วนตัวหรือชื่อโฮสต์
-NS, --forward-ตัวแทน
ใช้เพื่อเปิดใช้งานการส่งต่อตัวแทน SSH
-c CONFIG_FILE, --การกำหนดค่า CONFIG_FILE
ไฟล์คอนฟิกูเรชันที่จะใช้
-C จำนวน --การทำงานพร้อมกัน NUM
จำนวนการเชื่อมต่อพร้อมกันที่อนุญาต
--chef-zero-พอร์ต PORT
พอร์ตที่เชฟศูนย์จะฟัง
--[ไม่มี-]สี
ใช้เพื่อดูผลงานที่มีสี
-NS, --disable-แก้ไข
ใช้เพื่อป้องกัน $EDITOR ไม่ให้เปิดและยอมรับข้อมูลตามที่เป็นอยู่
--ค่าเริ่มต้น
ใช้เพื่อให้มีดใช้ค่าเริ่มต้นแทนการขอให้ผู้ใช้จัดเตรียม
-e บรรณาธิการ --บรรณาธิการ บรรณาธิการ
$EDITOR ที่ใช้สำหรับคำสั่งแบบโต้ตอบทั้งหมด
-E สิ่งแวดล้อม, --สิ่งแวดล้อม และพวกเรา
ชื่อของสิ่งแวดล้อม เมื่อเพิ่มตัวเลือกนี้ลงในคำสั่งแล้ว command
จะทำงานเฉพาะกับสภาพแวดล้อมที่มีชื่อเท่านั้น
-F รูปแบบ, --รูปแบบ FORMAT
รูปแบบเอาต์พุต: สรุป (Default) ข้อความ, JSON, มันแกวและ pp.
-G ประตู, --ssh-เกตเวย์ GATEWAY
อุโมงค์ SSH หรือเกตเวย์ที่ใช้ในการรันการดำเนินการบูตสแตรปบนเครื่องที่
ไม่สามารถเข้าถึงได้จากเวิร์กสเตชัน
-ชม, --ช่วยด้วย
แสดงความช่วยเหลือสำหรับคำสั่ง
-i ข้อมูลระบุตัวตน_ไฟล์ --identity-ไฟล์ ระบุ_FILE
ไฟล์ข้อมูลประจำตัว SSH ที่ใช้สำหรับการตรวจสอบสิทธิ์ การรับรองความถูกต้องด้วยคีย์คือ
แนะนำ
-k กุญแจ, --กุญแจ KEY
คีย์ส่วนตัวที่มีดจะใช้เพื่อลงนามคำขอที่ทำโดยไคลเอ็นต์ API ไปยัง
เซิฟเวอร์เชฟ.
-NS, --คู่มือรายการ
ใช้เพื่อกำหนดคำค้นหาเป็นรายการเซิร์ฟเวอร์ที่คั่นด้วยช่องว่าง ถ้ามีมากกว่านี้
มากกว่าหนึ่งรายการในรายการ ใส่เครื่องหมายคำพูดรอบรายการทั้งหมด ตัวอย่างเช่น:
--คู่มือรายการ "เซิร์ฟเวอร์01 เซิร์ฟเวอร์ 02 เซิร์ฟเวอร์ 03 "
--[no-]โฮสต์คีย์ยืนยัน
ใช้ --no-host-key-ยืนยัน เพื่อปิดการตรวจสอบรหัสโฮสต์ การตั้งค่าเริ่มต้น:
--host-key-ตรวจสอบ.
อื่น ๆ ชนิดเปลือก. ค่าที่เป็นไปได้: การโต้ตอบ, จอภาพ, tmux, แม็คเทอม,หรือ cssh.
(csshx เลิกใช้เพื่อสนับสนุน cssh.)
-p ท่า, --ssh-พอร์ต PORT
พอร์ต SSH
-P รหัสผ่าน, --ssh-รหัสผ่าน รหัสผ่าน
รหัสผ่าน SSH สามารถใช้เพื่อส่งรหัสผ่านโดยตรงบนคำสั่ง
ไลน์. หากไม่ได้ระบุตัวเลือกนี้ (และต้องใช้รหัสผ่าน) มีดจะ
ให้ใส่รหัสผ่าน
--พิมพ์หลัง
ใช้เพื่อแสดงข้อมูลหลังการดำเนินการทำลายล้าง
-s URL --เซิร์ฟเวอร์-url URL
URL สำหรับเซิร์ฟเวอร์ Chef
การค้นหา
คำค้นหาที่ใช้เพื่อส่งคืนรายการเซิร์ฟเวอร์ที่เข้าถึงได้โดยใช้ SSH และ
ที่ระบุไว้ SSH_คำสั่ง. อ็อพชันนี้ใช้ไวยากรณ์เดียวกับคำสั่งย่อยการค้นหา
SSH_คำสั่ง
คำสั่งที่จะรันกับผลลัพธ์ของคำค้นหา
-u ผู้ใช้ --ผู้ใช้ USER
ชื่อผู้ใช้ที่ใช้โดยมีดเพื่อลงนามคำขอที่ทำโดยไคลเอนต์ API ถึง Chef
เซิร์ฟเวอร์ การตรวจสอบสิทธิ์จะล้มเหลวหากชื่อผู้ใช้ไม่ตรงกับคีย์ส่วนตัว
-ใน, --รุ่น
รุ่นเชฟ-ลูกค้า.
-วี --รายละเอียด
ตั้งค่าสำหรับเอาต์พุตที่ละเอียดยิ่งขึ้น ใช้ -วี.วี เพื่อความฟุ่มเฟือยสูงสุด
-x ชื่อผู้ใช้, --ssh-ผู้ใช้ ชื่อผู้ใช้
ชื่อผู้ใช้ SSH
-y, --ใช่
ใช้เพื่อตอบกลับข้อความยืนยันทั้งหมดด้วย "ใช่" มีดจะไม่ขอ
การยืนยัน.
-z, --โหมดท้องถิ่น
ใช้เพื่อเรียกใช้เชฟลูกค้าในโหมดท้องถิ่น นี้จะช่วยให้คำสั่งทั้งหมดที่ทำงาน
กับเซิร์ฟเวอร์ Chef เพื่อทำงานกับ Chef-repo ในท้องถิ่นด้วย
ตัวอย่าง
หากต้องการค้นหาเวลาทำงานของเว็บเซิร์ฟเวอร์ทั้งหมดที่ใช้ Ubuntu บนแพลตฟอร์ม Amazon EC2 ให้ป้อน:
$ มีด ssh "role:web" "uptime" -x ubuntu -a ec2.public_hostname
เพื่อส่งคืนบางสิ่งเช่น:
ec2-174-129-127-206.compute-1.amazonaws.com 13:50:47 ขึ้น 1 วัน, 23:26, ผู้ใช้ 1 ราย, โหลดเฉลี่ย: 0.25, 0.18, 0.11
ec2-67-202-63-102.compute-1.amazonaws.com 13:50:47 ขึ้น 1 วัน, 23:33, ผู้ใช้ 1 ราย, โหลดเฉลี่ย: 0.12, 0.13, 0.10
ec2-184-73-9-250.compute-1.amazonaws.com 13:50:48 ขึ้น 16:45 น. ผู้ใช้ 1 ราย โหลดเฉลี่ย: 0.30, 0.22, 0.13
ec2-75-101-240-230.compute-1.amazonaws.com 13:50:48 ขึ้น 1 วัน, 22:59, ผู้ใช้ 1 ราย, โหลดเฉลี่ย: 0.24, 0.17, 0.11
ec2-184-73-60-141.compute-1.amazonaws.com 13:50:48 ขึ้น 1 วัน, 23:30, ผู้ใช้ 1 ราย, โหลดเฉลี่ย: 0.32, 0.17, 0.15
$ มีด ssh 'name:*' 'sudo chef-client'
เพื่อบังคับให้เชฟไคลเอ็นต์ทำงานบนเว็บเซิร์ฟเวอร์ทั้งหมดที่ใช้ Ubuntu บน Amazon EC2
แพลตฟอร์ม ป้อน:
$ มีด ssh "บทบาท: เว็บ" "sudo chef-client" -x ubuntu -a ec2.public_hostname
เพื่อส่งคืนบางสิ่งเช่น:
ec2-67-202-63-102.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:37 +0000] ข้อมูล: การเริ่มต้น Chef Run (เวอร์ชัน 0.9.10)
ec2-174-129-127-206.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:37 +0000] ข้อมูล: การเริ่มต้น Chef Run (เวอร์ชัน 0.9.10)
ec2-184-73-9-250.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:38 +0000] ข้อมูล: การเริ่มต้น Chef Run (เวอร์ชัน 0.9.10)
ec2-75-101-240-230.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:38 +0000] ข้อมูล: การเริ่มต้น Chef Run (เวอร์ชัน 0.9.10)
ec2-184-73-60-141.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:38 +0000] ข้อมูล: การเริ่มต้น Chef Run (เวอร์ชัน 0.9.10)
ec2-174-129-127-206.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: Chef Run เสร็จสมบูรณ์ใน 1.419243 วินาที
ec2-174-129-127-206.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: การล้างแคชเช็คซัม
ec2-174-129-127-206.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: การเรียกใช้ตัวจัดการรายงาน
ec2-174-129-127-206.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: ตัวจัดการรายงานเสร็จสมบูรณ์
ec2-67-202-63-102.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: Chef Run เสร็จสมบูรณ์ใน 1.578265 วินาที
ec2-67-202-63-102.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: การล้างแคชเช็คซัม
ec2-67-202-63-102.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: การเรียกใช้ตัวจัดการรายงาน
ec2-67-202-63-102.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:39 +0000] ข้อมูล: ตัวจัดการรายงานเสร็จสมบูรณ์
ec2-184-73-9-250.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: Chef Run เสร็จสมบูรณ์ใน 1.638884 วินาที
ec2-184-73-9-250.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การล้างแคชเช็คซัม
ec2-184-73-9-250.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การเรียกใช้ตัวจัดการรายงาน
ec2-184-73-9-250.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: ตัวจัดการรายงานเสร็จสมบูรณ์
ec2-75-101-240-230.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: Chef Run เสร็จสมบูรณ์ใน 1.540257 วินาที
ec2-75-101-240-230.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การล้างแคชเช็คซัม
ec2-75-101-240-230.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การเรียกใช้ตัวจัดการรายงาน
ec2-75-101-240-230.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: ตัวจัดการรายงานเสร็จสมบูรณ์
ec2-184-73-60-141.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: Chef Run เสร็จสมบูรณ์ใน 1.502489 วินาที
ec2-184-73-60-141.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การล้างแคชเช็คซัม
ec2-184-73-60-141.compute-1.amazonaws.com [วันศุกร์ที่ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: การเรียกใช้ตัวจัดการรายงาน
ec2-184-73-60-141.compute-1.amazonaws.com [ศุกร์ 22 ต.ค. 2010 14:18:40 +0000] ข้อมูล: ตัวจัดการรายงานเสร็จสมบูรณ์
เพื่อสอบถามโหนดทั้งหมดที่มี เว็บเซิร์ฟเวอร์ บทบาทแล้วใช้ SSH เพื่อเรียกใช้คำสั่ง
sudo เชฟ-ลูกค้า, ป้อน:
$ มีด ssh "บทบาท: เว็บเซิร์ฟเวอร์" "sudo chef-client"
$ มีด ssh ชื่อ:* "sudo aptitude upgrade -y"
ในการระบุประเภทเชลล์ที่ใช้กับโหนดที่ส่งคืนโดยคำค้นหา:
$ มีด ssh บทบาท:opscode-omnitruck macterm
ที่ไหน จอภาพ เป็นหนึ่งในค่าต่อไปนี้: cssh, การโต้ตอบ, แม็คเทอม, จอภาพ,หรือ tmux.
หากโหนดไม่ได้ติดตั้งประเภทเชลล์มีดจะส่งคืนข้อผิดพลาดที่คล้ายกับ
ต่อไปนี้:
คุณต้องมี rb-appscript gem เพื่อใช้ knife ssh macterm
`(sudo) gem install rb-appscript` เพื่อติดตั้ง
ข้อผิดพลาด: LoadError: ไม่สามารถโหลดไฟล์ดังกล่าว -- appscript
ใช้ knife-ssh ออนไลน์โดยใช้บริการ onworks.net