Score:2

รวมการติดตั้งอัตโนมัติแบบ cloud-init เข้ากับโมดูล cloud-init อื่นๆ

ธง br
Tom

ฉันกำลังพยายามจัดเตรียม VM ด้วย cloud-init และอิมเมจสดของเซิร์ฟเวอร์ (ฉันไม่ได้ใช้อิมเมจคลาวด์ ด้วยเหตุผลด้านโครงสร้างพื้นฐาน ฉันต้องติดตั้งจาก ISO)

อย่างไรก็ตาม เมื่อใดก็ตามที่ฉันพยายามรวมเข้าด้วยกัน ติดตั้งอัตโนมัติ ด้วยเช่น Write_files, Write_files ส่วนหนึ่งดูเหมือนจะไม่สำเร็จ

ต่อไปนี้ติดตั้ง Ubuntu:

#cloud-config
ติดตั้งอัตโนมัติ:
  รุ่น: 1
  ตัวตน:
    ชื่อโฮสต์: boxy-001
    รหัสผ่าน: "$1$k46kl1..."
    ชื่อผู้ใช้: อลิซ
  พื้นที่จัดเก็บ:
    รูปแบบ:
      ชื่อ: lvm
  ssh:
    ติดตั้งเซิร์ฟเวอร์: จริง
    คีย์ที่ได้รับอนุญาต: 
      - "ecdsa-sha2-nistp256 AAAAE2...."
     
Write_files:              
- เนื้อหา: |              
    cloud_init_has_run    
  เส้นทาง: /cloud_init_flag  

แต่ไฟล์ไม่ได้เขียนที่ /cloud_init_flag.

โมดูลหายไปหรือไม่? cloud-config ไม่สมบูรณ์บน Server live ISOs หรือไม่

แก้ไข ไฟล์ เป็น เขียน แต่มันเขียนในสภาพแวดล้อมการติดตั้ง! ฉันน่าจะใช้แทน autoinstall.user-data กุญแจสำคัญในการให้ ข้อมูลผู้ใช้ สำหรับระบบเป้าหมาย

Andrew Lowther avatar
jp flag
การกำหนดค่า `write_files` ของคุณใช้งานได้สำหรับฉันโดยใช้ตัวติดตั้งเซิร์ฟเวอร์สด `20.04` 'การติดตั้งอัตโนมัติ' ที่เหลือใช้งานได้หรือไม่ คุณจะยืนยันได้อย่างไรว่าไฟล์หายไป
br flag
Tom
ดังนั้น เมื่อใช้ข้อมูลผู้ใช้นี้ขณะติดตั้ง Ubuntu 20.04 LTS ด้วยโปรแกรมติดตั้งจริง `/cloud_init_flag` จะถูกสร้างขึ้นจริงหรือ
Andrew Lowther avatar
jp flag
ฉันใช้ส่วน `write_files` ของคุณและเพิ่มลงในไฟล์ `user-data` ของฉัน ฉันเริ่มการติดตั้งและเปิดเชลล์ในสภาพแวดล้อมของตัวติดตั้ง `/cloud_init_flag` ถูกสร้างขึ้นด้วยเนื้อหาที่กำหนดค่า ฉันเดา: 1. ไฟล์ติดตั้งอัตโนมัติของคุณไม่ได้ถูกใช้งานเลย 2. ไฟล์ติดตั้งอัตโนมัติของคุณไม่ถูกต้องและไม่ได้รับการแยกวิเคราะห์ 3. คุณคาดว่าไฟล์จะอยู่บนระบบที่ติดตั้งไว้ เมื่อมันอยู่ในสภาพแวดล้อมการติดตั้งเท่านั้น
br flag
Tom
อ๊าาา ต้องเป็นอย่างนั้นแน่ๆ ฟังก์ชัน cloud-init ทั้งหมดดำเนินการในสภาพแวดล้อมการติดตั้งหรือไม่ ฉันขอถามได้ไหม ฉันจะทำให้ cloud-init ทำงานบนระบบ _installed_ ร่วมกับ `autoinstall` ได้อย่างไร
Score:3
ธง jp

ฉันจะทำให้ cloud-init ทำงานบนระบบที่ติดตั้งร่วมกับการติดตั้งอัตโนมัติได้อย่างไร

มี ข้อมูลผู้ใช้ การกำหนดค่า คีย์สำหรับการติดตั้งอัตโนมัติ ไฟล์.

ตัวอย่างเช่น ถ้าคุณต้องการของคุณ Write_files การกำหนดค่าที่จะใช้โดย cloud-init บน ติดตั้งแล้ว ระบบอาจรวมส่วนย่อยนี้เป็นส่วนหนึ่งของไฟล์ติดตั้งอัตโนมัติ

#cloud-config
ติดตั้งอัตโนมัติ:
  รุ่น: 1
  ข้อมูลผู้ใช้:
    Write_files:
    - เนื้อหา: |
        cloud_init_has_run
      เส้นทาง: /cloud_init_flag
...

มันทำงานอย่างไร

  • ระหว่างการติดตั้ง ความย่อยยับ จะสร้างการกำหนดค่าสำหรับ cloud-init ที่ /target/var/lib/cloud/seed/nocloud-net/user-data.
  • ระหว่างการบูตระบบที่ติดตั้งครั้งแรก cloud-init จะใช้ไฟล์ปรับแต่งนี้เพื่อดำเนินการติดตั้งบางอย่าง นี่เป็นวิธีสร้างผู้ใช้รายแรก
  • ถ้า ก ข้อมูลผู้ใช้ ส่วนจะรวมอยู่ในไฟล์ติดตั้งอัตโนมัติแล้ว ความย่อยยับ จะ รวมส่วนข้อมูลผู้ใช้ ในการสร้าง /target/var/lib/cloud/seed/nocloud-net/user-data ไฟล์.

การใช้ข้อมูลโค้ดด้านบน การกำหนดค่าที่ผสานทำให้ได้เนื้อหาไฟล์นี้

#cloud-config
ส่วนเติบโต: {โหมด: 'ปิด'}
ภาษา: en_US.UTF-8
preserv_hostname: จริง
resize_rootfs: เท็จ
...
Write_files:
- {เนื้อหา: 'cloud_init_has_run

    ' เส้นทาง: /cloud_init_flag}

ระหว่างการบู๊ตครั้งแรก cloud-init ได้สร้าง /cloud_init_flag ไฟล์ที่มีเนื้อหาที่กำหนดค่าไว้

br flag
Tom
ขอขอบคุณ. นี่จะเป็นส่วนเสริมที่ยอดเยี่ยมสำหรับเอกสารที่กระชับที่ https://ubuntu.com/server/docs/install/autoinstall-reference#user-data

โพสต์คำตอบ

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