Score:1

คีย์สาธารณะ openstack ubuntuVM SSH ถูกปฏิเสธในการบูตครั้งแรก

ธง fr

ฉันกำลังปรับใช้ Openstack (ฉันลอง victoria และ ussuri) ด้วย kolla-ansible บน 3 CentOS 8 Nodes (1=Control+Compute,2 และ 3=Compute) การปรับใช้ทำงานได้ดีโดยไม่มีปัญหาใด ๆ แต่เมื่อฉันสร้าง VM ใหม่ด้วยอิมเมจ Ubuntu (focal-server-cloudimg-amd64.img) จาก ที่นี่ ดูเหมือนว่าจะไม่เกิดขึ้นอย่างหมดจด ซึ่งทำให้สคริปต์ cloud-init ไม่สามารถดำเนินการให้เสร็จสิ้นได้ และไม่ได้ตั้งค่าคีย์ SSH ที่กำหนดค่าไว้ภายใน VM ดังนั้นฉันจึงไม่สามารถเข้าสู่ระบบได้

ubuntu@10.20.34.137: การอนุญาตถูกปฏิเสธ (publickey)

แต่ที่อยู่ IP สามารถ ping ได้และกฎเครือข่ายทั้งหมด (กลุ่มความปลอดภัยและอื่น ๆ ) ไม่เป็นไร ตอนนี้เริ่มส่วนที่แปลก ถ้าตอนนี้ฉันทำ Hard Reboot Instance มันขึ้นมาอย่างหมดจดและฉันสามารถเข้าสู่ระบบผ่าน SSH ได้ มีใครเคยเห็นปัญหานี้มาก่อนเพราะฉันมี OpenStack ussuri อีกอินสแตนซ์ที่เก่ากว่าทำงานอยู่ (เมื่อประมาณ 15 เดือนที่แล้ว) และมีอิมเมจ Ubuntu เดียวกันทำงานได้ดี (ฉันตรวจสอบสิ่งนี้ด้วย)

บันทึกผลลัพธ์ของการรันครั้งแรก (เฉพาะบรรทัดสุดท้าย):

----- สิ้นสุดคีย์คีย์โฮสต์ SSH -----
[ 49.380046] cloud-init[1387]: Cloud-init v. 21.4-0ubuntu1~20.04.1 กำลังเรียกใช้ 'โมดูล: สุดท้าย' ในวันพุธที่ 5 มกราคม 2022 11:17:08 +0000 ขึ้น 49.23 วินาที
[49.380186] cloud-init[1387]: ci-info: ไม่พบลายนิ้วมือคีย์ SSH ที่ได้รับอนุญาตสำหรับผู้ใช้ Ubuntu
[ 49.380481] cloud-init[1387]: Cloud-init v.21.4-0ubuntu1~20.04.1 เสร็จสิ้นเมื่อวันพุธที่ 05 มกราคม 2022 11:17:08 +0000 แหล่งข้อมูล DataSourceNone ขึ้น 49.37 วินาที
[ 49.380779] cloud-init[1387]: 2022-01-05 11:17:08,288 - cc_final_message.py[คำเตือน]: ใช้แหล่งข้อมูลสำรอง

บันทึกเอาต์พุตหลังจาก Hard Reboot Instance (เฉพาะบรรทัดสุดท้าย):

----- สิ้นสุดคีย์คีย์โฮสต์ SSH -----
[ 15.105333] cloud-init[851]: Cloud-init v. 21.4-0ubuntu1~20.04.1 กำลังเรียกใช้ 'โมดูล: สุดท้าย' ในวันพุธที่ 5 มกราคม 2022 11:46:21 +0000 ขึ้น 14.95 วินาที
[ 15.106253] cloud-init[851]: Cloud-init v. 21.4-0ubuntu1~20.04.1 เสร็จสิ้นเมื่อวันพุธที่ 05 มกราคม 2022 11:46:22 +0000 แหล่งข้อมูล DataSourceOpenStackLocal [net,ver=2] ขึ้น 15.10 วินาที
[[0;32m OK [0m] เสร็จสิ้น [0;1;39mExecute cloud user/final scripts[0m.
[[0;32m OK [0m] ถึงเป้าหมายแล้ว [0;1;39mCloud-init target[0m.

อูบุนตู 20.04.3 LTS asdfff ttyS0

เข้าสู่ระบบ asdfff:

ดังนั้นฉันจึงทดสอบอิมเมจเดเบียน (debian-10-openstack-amd64.qcow2) จาก ที่นี่ และทำงานได้ดีกับการเริ่มต้นครั้งแรก

มีใครเห็นพฤติกรรมนี้หรือไม่? หรืออาจเห็นบางสิ่งที่ฉันสามารถทำได้เพื่อแก้ไขปัญหานี้

ขอแสดงความนับถือ,

ไมเคิล

cn flag
อาจเป็นไปได้ว่าต้องรีสตาร์ทเซิร์ฟเวอร์ SSH ดังนั้นการรีบูตจะทำอย่างนั้นหรือไม่
Score:1
ธง cn

ข้อมูลเพิ่มเติมบางส่วน:

  • พบปัญหากับ Openstack Ussuri และ Victoria
  • ปัญหานี้เกิดขึ้นกับ Ubuntu VM ด้วยอินเทอร์เฟซเดียวในเครือข่าย openstack ภายนอก
  • ในระหว่างการสร้าง VM cloud-init ไม่สามารถร้องขอข้อมูลเมตาที่เกี่ยวข้องกับ VM จากแหล่งที่มา "http://169.254.169.254/openstack" สิ่งนี้นำไปสู่การหมดเวลาและการเริ่มต้นด้วยคีย์เริ่มต้น บันทึกการเริ่มต้นระบุว่า: "คำเตือนไม่ใช่แหล่งข้อมูลเมตา"

วิธีแก้ปัญหาคือทำการ "ฮาร์ดบูต" ของ VM ระหว่าง "ฮาร์ดบูต" ไฟล์บันทึก "/var/log/cloud-init.log" ระบุว่ามีการเพิ่มเส้นทางที่ดูเหมือนจะแก้ไขปัญหาได้ ดูรายการบันทึก 14:27:08,314 ด้านล่าง ซึ่งเป็นจุดสูงสุดของ "ฮาร์ดบูต" 10.20.34.100 เป็น IP ภายในเครือข่ายภายนอกที่ให้ข้อมูลเมตา

ubuntu@external-server:/var/log$ grep "169.254.169.254" cloud-init.log 
2022-01-06 14:25:33,037 - util.py[DEBUG]: การแก้ไข URL: http://169.254.169.254 ใช้เวลา 0.000 วินาที
2022-01-06 14:25:33,037 - url_helper.py[DEBUG]: [0/1] เปิด 'http://169.254.169.254/openstack' ด้วย {'url': 'http://169.254.169.254/ openstack', 'allow_redirects': True, 'method': 'GET', 'timeout': 10.0, 'headers': {'User-Agent': 'Cloud-Init/21.4-0ubuntu1~20.04.1'}} การกำหนดค่า
2022-01-06 14:25:43,050 - url_helper.py[DEBUG]: การเรียก 'http://169.254.169.254/openstack' ล้มเหลว [10/-1s]: คำขอผิดพลาด [HTTPConnectionPool(host='169.254.169.254' , port=80): เกินการลองใหม่สูงสุดด้วย url: /openstack (เกิดจาก ConnectTimeoutError(<urllib3.connection.HTTPConnection object ที่ 0x7fa3b80d8a60>, 'การเชื่อมต่อกับ 169.254.169.254 หมดเวลา (connect timeout=10.0)'))]
2022-01-06 14:25:43,050 - DataSourceOpenStack.py[DEBUG]: เลิกใช้ OpenStack md จาก ['http://169.254.169.254/openstack'] หลังจากผ่านไป 10 วินาที
2022-01-06 14:25:54,772 - util.py[DEBUG]: การแก้ไข URL: http://169.254.169.254 ใช้เวลา 10.014 วินาที
2022-01-06 14:25:54,772 - url_helper.py[DEBUG]: [0/1] เปิด 'http://169.254.169.254/openstack' ด้วย {'url': 'http://169.254.169.254/ openstack', 'allow_redirects': True, 'method': 'GET', 'timeout': 10.0, 'headers': {'User-Agent': 'Cloud-Init/21.4-0ubuntu1~20.04.1'}} การกำหนดค่า
2022-01-06 14:26:04,785 - url_helper.py[DEBUG]: การเรียก 'http://169.254.169.254/openstack' ล้มเหลว [10/-1s]: คำขอผิดพลาด [HTTPConnectionPool(host='169.254.169.254' , port=80): เกินจำนวนการลองใหม่สูงสุดด้วย url: /openstack (เกิดจาก ConnectTimeoutError(<urllib3.connection.HTTPConnection object ที่ 0x7fdefd568700>, 'การเชื่อมต่อกับ 169.254.169.254 หมดเวลา (connect timeout=10.0)'))]
2022-01-06 14:26:04,785 - DataSourceOpenStack.py[DEBUG]: เลิกใช้ OpenStack md จาก ['http://169.254.169.254/openstack'] หลังจากผ่านไป 10 วินาที
2022-01-06 14:27:08,314 - subp.py[DEBUG]: รันคำสั่ง ['ip', '-4', 'route', 'add', '169.254.169.254/32', 'via', '10.20.34.100', 'dev', 'ens3'] พร้อมรหัสส่งคืนที่อนุญาต [0] (shell=False, capture=True)
2022-01-06 14:27:08,317 - util.py[DEBUG]: การแก้ไข URL: http://169.254.169.254 ใช้เวลา 0.000 วินาที
2022-01-06 14:27:08,318 - url_helper.py[DEBUG]: [0/1] เปิด 'http://169.254.169.254/openstack' ด้วย {'url': 'http://169.254.169.254/ openstack', 'allow_redirects': True, 'method': 'GET', 'timeout': 10.0, 'headers': {'User-Agent': 'Cloud-Init/21.4-0ubuntu1~20.04.1'}} การกำหนดค่า
2022-01-06 14:27:08,930 - url_helper.py[DEBUG]: อ่านจาก http://169.254.169.254/openstack (200, 105b) หลังจากพยายาม 1 ครั้ง
2022-01-06 14:27:08,930 - DataSourceOpenStack.py[DEBUG]: การใช้แหล่งข้อมูลเมตา: 'http://169.254.169.254'
2022-01-06 14:27:08,930 - url_helper.py[DEBUG]: [0/6] เปิด 'http://169.254.169.254/openstack' ด้วย {'url': 'http://169.254.169.254/ openstack', 'allow_redirects': True, 'method': 'GET', 'timeout': 10.0, 'headers': {'User-Agent': 'Cloud-Init/21.4-0ubuntu1~20.04.1'}} การกำหนดค่า
2

หลังจากรีบูต การเข้าถึง SSH จะเป็นไปได้ด้วยข้อมูลรับรองที่กำหนดค่าไว้

ปัญหาอาจเป็นสคริปต์ cloud-init ซึ่งไม่ได้เพิ่มเส้นทางไปยังเซิร์ฟเวอร์ข้อมูลเมตาระหว่าง cloud_init แรกของ VM

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา