ฉันมีเซิร์ฟเวอร์ที่มี Consul Agent (CA) ที่เทียบท่า ใน CA นี้ ฉันต้องการเรียกใช้สคริปต์จากโฮสต์ที่ตรวจสอบจำนวนพื้นที่ดิสก์ที่เหลืออยู่ในการตรวจสอบบริการ
สำหรับสิ่งนี้ ฉันได้สร้างบริการใน CA :
{
"บริการ": {
"ชื่อ": "การใช้ดิสก์-var-re7",
"แท็ก": [
"ประเภท: ตรวจสอบ",
"env:re7"
]
"เช็ค": [
{
"id": "การใช้ดิสก์-var-re7",
"ชื่อ": "การใช้ดิสก์ /var RE7",
"หาเรื่อง": [
"ช",
"-ค",
"ssh consul@hostserver 'disk_usage.sh /dev/mapper/centos-var'"
]
"ช่วงเวลา": "5s",
"หมดเวลา": "30 วินาที"
}
]
}
}
แต่เมื่อกงศุลเรียกใช้เขา ฉันได้รับข้อผิดพลาดนี้: การยืนยันคีย์โฮสต์ล้มเหลว
ฉันใช้อิมเมจ Docker อย่างเป็นทางการจาก Consul (Alpine) เวอร์ชัน 1.6.1 และฉันใช้คำสั่งเหล่านี้ในคอนเทนเนอร์:
นักเทียบท่า exec กงสุล apk เพิ่ม opensh
นักเทียบท่า exec -it กงสุล ssh-keygen -t rsa
นักเทียบท่า cp กงสุล:/root/.ssh/id_rsa.pub /tmp
ซูกงสุล
umask 077 && mkdir ~/.ssh
umask 077 && สัมผัส ~/.ssh/authorized_keys
แมว /tmp/id_rsa.pub > /home/consul/.ssh/authorized_keys
rm -f /tmp/id_rsa.pub
เมื่อฉันพยายาม
นักเทียบท่า exec -it กงสุล ssh consul@hostserver 'disk_usage.sh /dev/mapper/centos-var'
ครั้งแรก SSH ถามฉัน:
ไม่สามารถสร้างความถูกต้องของโฮสต์ 'hostserver (::1)' ได้
ลายนิ้วมือของคีย์ ECDSA คือ SHA256:MlsT6sDr9xXuOurqBJu4e+a8m2De3Lu4ctJSB+5RNmk
คุณแน่ใจหรือไม่ว่าต้องการเชื่อมต่อต่อ (ใช่/ไม่ใช่) ใช่
คำเตือน: เพิ่ม 'โฮสต์เซิร์ฟเวอร์' (ECDSA) อย่างถาวรในรายการโฮสต์ที่รู้จัก
และหลังจากนั้นสคริปต์ก็ยังใช้งานได้ แต่ไม่ใช่กับเช็คของกงศุล
ผมทำอะไรผิดหรือเปล่า?
ขอบคุณมาก.