ฉันพบปัญหาเกี่ยวกับการติดตั้งเซิร์ฟเวอร์อัตโนมัติ
นี่คือสภาพแวดล้อมของฉัน:
เซิร์ฟเวอร์: centos 7.6 x86_64 (เป็นระบบ kvm)
Node1: ไม่มีระบบ
Node2: ไม่มีระบบ
ฉันต้องการติดตั้งระบบเซิร์ฟเวอร์ Ubuntu-20.04.3 โดยอัตโนมัติ
เกี่ยวกับ Server1 ฉันติดตั้ง tftpd,dhcpd,httpd
การกำหนดค่าบางอย่างเช่นนี้:
#tftpd
#แมว /etc/xinetd.d/tftp
บริการ tftp
{
socket_type = dgram
โปรโตคอล = udp
รอ = ใช่
ผู้ใช้ = ราก
เซิร์ฟเวอร์ = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
ปิดการใช้งาน = ใช่
per_source = 11
cps = 100 2
ค่าสถานะ = IPv4
}
#dhcpd
# แมว /etc/dhcp/dhcpd.conf
ddns-update-style ไม่มี;
ซับเน็ต 10.10.8.0 เน็ตมาสก์ 255.255.252.0 {
เราเตอร์ตัวเลือก 10.10.11.254;
ตัวเลือกโดเมนเนมเซิร์ฟเวอร์ 10.10.9.250;
ตัวเลือกซับเน็ตมาสก์ 255.255.252.0;
ช่วงไดนามิก bootp 10.10.11.10 10.10.11.220;
เวลาเช่าเริ่มต้น 21600;
เวลาเช่าสูงสุด 43200;
เซิร์ฟเวอร์ถัดไป 10.10.11.245;
ชื่อไฟล์ "pxelinux.0";
}
#httpd
#แมว /etc/httpd/conf.d/tftp.conf
<ไดเร็กทอรี /var/lib/tftpboot>
ตัวเลือก +FollowSymLinks +ดัชนี
ต้องได้รับอนุญาตทั้งหมด
</ไดเร็กทอรี>
นามแฝง /tftp /var/lib/tftpboot
ไฟล์ใน /var/lib/tftpboot
# ll /var/lib/tftpboot/
æ»ç¨é 1328744
drwxrwxrwx 2 ราก ราก 22 12æ 8 18:40 ด้วง
-rwxrwxrwx 1 ราก 86017541 11æ 25 17:40 เริ่มต้น
-rwxrwxrwx 1 ราก ราก 31 11æ 25 17:45 ข้อมูลเมตา
-rwxrwxrwx 1 ราก ราก 336 12æ 8 20:03 network.sh
-rwxrwxrwx 1 รูทรูท 1435512 4æ 16 2020 pxelinux.0
-rwxrwxrwx 1 รูทรูท 1261371392 8æ 24 17:09 ubuntu-20.04.3-live-server-amd64.iso
-rwxrwxrwx 1 รูท 1353 12æ 8 20:03 ubuntu_init.sh
-rwxrwxrwx 1 รูทรูท 2856 12æ 8 20:17 user-data
-rwxrwxrwx 1 รูท 11772160 11æ 25 17:40 vmlinuz
grub.cfg
#ด้วงแมว/grub.cfg
ค่าเริ่มต้น = ติดตั้งอัตโนมัติ
หมดเวลา=5
timeout_style=เมนู
ตั้งค่า menu_color_normal=ขาว/ดำ
ตั้งค่า menu_color_highlight=สีดำ/สีเทาอ่อน
เมนูรายการ "Focal Live Installer - อัตโนมัติ" --id=autoinstall {
echo "กำลังโหลด Kernel...1111"
linux /vmlinuz root=/dev/ram0 ramdisk_size=1500000 root=/dev/ram0 ramdisk_size=1500000 ip=dhcp url=http://10.10.11.245/tftp/ubuntu-20.04.3-live-server-amd64.iso ติดตั้งอัตโนมัติ ds=nocloud-net\;s=http://10.10.11.245/tftp/ ---
echo "กำลังโหลด Ram Disk...111"
initrd/initrd
}
เมนูรายการ "Focal Live Installer" --id=install {
echo "กำลังโหลด Kernel...22"
ลินุกซ์ /vmlinuz root=/dev/ram0 ramdisk_size=1500000 ramdisk_size=1500000 ip=dhcp url=http://10.10.11.245/tftp/ubuntu-20.04.3-live-server-amd64.iso
echo "กำลังโหลด Ram Disk...22"
initrd/initrd
}
ข้อมูลเมตา
# ข้อมูลเมตาของแมว
รหัสอินสแตนซ์: focal-autoinstall
ข้อมูลผู้ใช้
# ข้อมูลผู้ใช้แมว
#cloud-config
ติดตั้งอัตโนมัติ:
ถนัด:
geoip: จริง
การเก็บรักษา_sources_list: เท็จ
หลัก:
- ส่วนโค้ง: [amd64, i386]
ยูริ: http://mirrors.aliyun.com/ubuntu
- ส่วนโค้ง: [ค่าเริ่มต้น]
ยูริ: http://ports.ubuntu.com/ubuntu-ports
ข้อมูลผู้ใช้:
เขตเวลา: เอเชีย/เซี่ยงไฮ้
ปิดการใช้งาน_root: เท็จ
chpasswd:
รายการ: |
รูท: $6$YMYlEcE71$/bcl2qd2rSYePvOkmgAyQR/h/
ตัวตน: {ชื่อโฮสต์: 111, รหัสผ่าน: $6$ereNXNuj9WVUt77B$.dbpuHaLernNl6qq6r14meIk1W5VAyaMV9.,
ชื่อจริง: 11, ชื่อผู้ใช้: 11}
แป้นพิมพ์: {รูปแบบ: เรา, สลับ: null, ตัวแปร: ''}
ภาษา: en_US.UTF-8
เครือข่าย:
อีเธอร์เน็ต:
eno12399:
สำคัญ: จริง
ตัวระบุ dhcp: mac
dhcp4: จริง
เนมเซิร์ฟเวอร์:
ที่อยู่: [10.10.9.250]
eno12409: {dhcp4: จริง}
eno12419: {dhcp4: จริง}
eno12429: {dhcp4: จริง}
eno8303: {dhcp4: จริง}
eno8403: {dhcp4: จริง}
รุ่น: 2
พร็อกซี: http://mirrors.aliyun.com/ubuntu
ssh:
อนุญาต pw: จริง
คีย์ที่ได้รับอนุญาต: []
ติดตั้งเซิร์ฟเวอร์: จริง
พื้นที่จัดเก็บ:
ด้วง:
reorder_uefi: เท็จ
การกำหนดค่า:
- {ptable: gpt, เส้นทาง: /dev/sda, ลบ: superblock-recursive, รักษา: เท็จ, ชื่อ: '', grub_device: เท็จ,
ประเภท: ดิสก์, id: disk-sda}
- {อุปกรณ์: disk-sda, ขนาด: 536870912, เช็ด: superblock, แฟล็ก: บูต, หมายเลข: 1,
รักษา: เท็จ, grub_device: จริง, ประเภท: พาร์ติชัน, id: พาร์ติชัน-2}
- {fstype: fat32, ปริมาณ: พาร์ติชั่น-2, รักษา: เท็จ, ประเภท: รูปแบบ, รหัส: รูปแบบ-2}
- {อุปกรณ์: disk-sda, ขนาด: -1, ลบ: superblock, ตั้งค่าสถานะ: '', จำนวน: 2,
รักษา: เท็จ, grub_device: เท็จ, ประเภท: พาร์ติชัน, id: พาร์ติชัน-3}
- {fstype: xfs, ปริมาณ: พาร์ติชัน-3, รักษา: เท็จ, ประเภท: รูปแบบ, รหัส: รูปแบบ-3}
- {เส้นทาง: /, อุปกรณ์: รูปแบบ-3, ประเภท: เมานต์, รหัส: เมานต์-3}
- {เส้นทาง: /boot/efi, อุปกรณ์: รูปแบบ-2, ประเภท: เมานต์, รหัส: เมานต์-2}
อัปเดต: ความปลอดภัย
แพ็คเกจ:
- ลินุกซ์ทั่วไป
- เครื่องมือสุทธิ
คำสั่งล่าช้า:
- เคอร์ตินในเป้าหมาย --target=/target -- /usr/bin/wget -P /root/ http://10.10.11.245/tftp/ubuntu_init.sh
- เคอร์ตินในเป้าหมาย --target=/target -- /usr/bin/wget -P /root/ http://10.10.11.245/tftp/network.sh
- เคอร์ตินในเป้าหมาย --target=/target -- /usr/bin/bash /root/ubuntu_init.sh
#- curtin ในเป้าหมาย --target=/target -- sed -i 's/#PermitRootLogin ห้ามรหัสผ่าน/PermitRootLogin ใช่/' /etc/ssh/sshd_config && systemctl รีสตาร์ท sshd
#- curtin ในเป้าหมาย --target=/target -- systemctl หยุด ufw.service && systemctl ปิดการใช้งาน ufw.service
#- curtin ในเป้าหมาย --target=/target -- echo -e "NTP=ntp1.aliyun.com\nFallbackNTP=ntp.ubuntu.com" >> /etc/systemd/timesyncd.conf && systemctl รีสตาร์ท systemd-timesyncd
รุ่น: 1
Ubuntu_init.sh
#!/bin/bash
sed -i 's/#PermitRootLogin ห้ามรหัสผ่าน/PermitRootLogin ใช่/' /etc/ssh/sshd_config
systemctl รีสตาร์ท sshd
systemctl หยุด ufw.service
systemctl ปิดใช้งาน ufw.service
#
echo -e "NTP=ntp1.aliyun.com\nFallbackNTP=ntp.ubuntu.com" >> /etc/systemd/timesyncd.conf
systemctl รีสตาร์ท systemd-timesyncd
#
แมว >> /etc/security/limits.conf << EOF
* ซอฟต์โนไฟล์ 655350
* ฮาร์ดโนไฟล์ 655350
* ซอฟต์ nproc 655350
* ฮาร์ด nproc 655350
รูตซอฟต์โนไฟล์ 655350
รูตฮาร์ดโนไฟล์ 655350
รูทซอฟต์ nproc 655350
รูตยาก nproc 655350
อฟ
########################################
cp /etc/sysctl.conf /etc/sysctl.conf.bak
แมว > /etc/sysctl.conf << EOF
vm.swappiness = 0
kernel.sysrq = 1
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
net.ipv4.tcp_max_tw_buckets = 5,000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_slow_start_after_idle = 0
อฟ
/sbin/sysctl -p
ปัญหาของฉัน
เมื่อฉันเรียกใช้การติดตั้งอัตโนมัติ pxe บน Dell R750 หรือเครื่องเซิร์ฟเวอร์บริการ UEFI แบบเปิดอื่นๆ
tftp,dhcpd,httpd ก็โอเค แต่เมื่อเซิร์ฟเวอร์ดำเนินการ "late-commands" เช่น ว้าว
หรือ ขด
แล้วรายงานข้อผิดพลาด คำสั่งทุบตีอื่น ๆ สามารถดำเนินการได้โดยไม่มีข้อผิดพลาดเช่น เสียงสะท้อน
,เสด
,systemctl เริ่มบริการ
และอื่น ๆ
เมื่อเกิดข้อผิดพลาดในการติดตั้งอัตโนมัติ ให้รายงานข้อผิดพลาดและทำให้การติดตั้งระบบนี้เสียหาย ฉันใช้ ว้าว
สามารถดาวน์โหลดไฟล์ bash จากเซิร์ฟเวอร์ httpd ของฉันและดำเนินการ
รูปภาพสำหรับสิ่งนี้:
รูปผิดพลาด
หากคุณเปิดรูปภาพข้อผิดพลาดช้า นี่คือข้อความแสดงข้อผิดพลาดที่อธิบาย:
เริ่มต้น: subiquity/Late/run/command_0: curtin in-target --target=/target -- /usr/bin/wget -P /root/ http://10.10.11.245/tftp/ubuntu_init.sh
เริ่มต้น: subiquity/Meta/status_GET
เสร็จสิ้น: subiquity/Late/run/command_0: คำสั่ง '['system-cat', '--level-prefix=false', '--identifier=subiquity_log.3140', 'sh', 'c', 'curtin in -target --target=/target --/usr/bin/wget -P /root/ http://10.10.11.245/tftp/ubuntu_init.sh']' ส่งคืนสถานะการออกที่ไม่ใช่ศูนย์ 8.ip a
บันทึก httpd
10.10.11.94 - - [13/Dec/2021:15:58:40 +0800] "GET /tftp/ubuntu-20.04.3-live-server-amd64.iso HTTP/1.1" 200 1261371392 "-" "Wget"
10.10.11.94 - - [13/Dec/2021:15:59:01 +0800] "GET /tftp/ubuntu-20.04.3-live-server-amd64.iso HTTP/1.1" 200 1261371392 "-" "Cloud- เริ่มต้น/21.2-3-g899bfaa9-0ubuntu2~20.04.1"
10.10.11.94 - - [13/Dec/2021:15:59:13 +0800] "GET /tftp/ubuntu-20.04.3-live-server-amd64.iso HTTP/1.1" 200 1261371392 "-" "Cloud- เริ่มต้น/21.2-3-g899bfaa9-0ubuntu2~20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:25 +0800] "GET /tftp/meta-data HTTP/1.1" 200 31 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:25 +0800] "GET /tftp/user-data HTTP/1.1" 200 2772 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:25 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:26 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:27 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:28 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:29 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:30 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:31 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:32 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:33 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:34 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
10.10.11.94 - - [13/ธ.ค./2021:15:59:35 +0800] "GET /tftp/vendor-data HTTP/1.1" 404 214 "-" "Cloud-Init/21.2-3-g899bfaa9-0ubuntu2~ 20.04.1"
ฉันดำเนินการด้วยตนเองโดยไม่มีข้อผิดพลาด
ถ้าใครรู้วิธีแก้ไขปัญหานี้หรือมีปัญหาเดียวกับฉัน โปรดส่งข้อความถึงฉัน ขอบคุณ
ถ้าผมพูดไม่ชัดก็ชี้ให้เห็นได้