จะติดตั้ง Cobbler ด้วย PXE ได้อย่างไรถ้าคุณไม่สามารถเปลี่ยนเซิร์ฟเวอร์ dhcp ได้?


16

ในอดีตที่ผ่านมาฉันได้ติดตั้งเซิร์ฟเวอร์ PXE หลายครั้งด้วยการทำให้เซิร์ฟเวอร์ dhcp ปกติคืนค่าทุกอย่างที่จำเป็นสำหรับการบูทเครือข่าย: ทั้งการกำหนดค่า ip ปกติและ bootinfo ในการตั้งค่า dhcp เดียว วิธีการที่มันเป็นเรื่องง่ายที่จะทำ

ตามเอกสารฉันอ่านมาแล้ว ( วิกิพีเดียมีบทสรุปที่ดี ) ควรจะมีเซิร์ฟเวอร์ dhcp ที่ไม่มีการแก้ไข (ตัวอย่างเช่นหากผู้ดูแลระบบที่ตำแหน่งของคุณปฏิเสธการเข้าถึง) และเซิร์ฟเวอร์แยกต่างหากที่ส่งคืนเฉพาะข้อมูลการบูตเท่านั้น ซึ่งมักเรียกว่าเซิร์ฟเวอร์ "PXE เซิร์ฟเวอร์" หรือ "พร็อกซี DHCP" ในอดีตฉันเคยเห็น (ไม่ได้ใช้) เซิร์ฟเวอร์ pxe นี้ (เปิดตัวล่าสุดคือ 5 ปีที่ผ่านมา)

เมื่อวานฉันติดตั้ง Cobbler เพื่อดูว่ามันทำอะไรจริงๆ ตอนนี้ฉันต้องการใช้มัน (ชอบการใช้งานง่าย) แต่การปรับเปลี่ยนเซิร์ฟเวอร์ 'หลัก' dhcpd เพื่อรับ PXE ไม่ใช่ตัวเลือก

ฉันไม่สามารถค้นหาเอกสารใด ๆ เกี่ยวกับวิธีที่ฉันสามารถทำให้ cobbler ให้ทำงานโดยใช้เซิร์ฟเวอร์ PXE (== proxy dhcp) จริง

สิ่งนี้สามารถทำได้ด้วยพายผลไม้?

ฉันสามารถกำหนดค่าเซิร์ฟเวอร์ isc dhcp ให้ทำงานเป็นเซิร์ฟเวอร์ PXE ได้หรือไม่ (เช่นไม่มีข้อมูล IP, ข้อมูลการบูตเท่านั้น)

หรือฉันควรจะไปหาวิธีที่แตกต่างอย่างสิ้นเชิง (ถ้าเป็นเช่นนั้นข้อเสนอแนะของคุณคืออะไร)?

ขอบคุณ


การค้นพบใหม่ที่ฉันเพิ่งทำ: การเปลี่ยนแปลงสำหรับ dnsmasq รุ่น 2.4.8พูดว่า:

"Proxy-DHCP ที่ dnsmasq ให้ข้อมูล PXE และเซิร์ฟเวอร์ DHCP อื่นทำการจัดสรรที่อยู่ได้เช่นกัน"

น่าสนใจมาก. โดยเฉพาะอย่างยิ่งเพราะพายผลไม้สามารถควบคุม dnsmasq ได้แล้ว


ปรับปรุง:

dnsmasq 2.51 จะสนับสนุนการกำหนดค่านี้ซึ่งทำตามเคล็ดลับที่ฉันต้องการอย่างเต็มที่

/etc/cobbler/dnsmasq.template ของฉันตอนนี้มีลักษณะเช่นนี้:

# Cobbler generated configuration file for dnsmasq
# $date
#

# resolve.conf .. ?
#no-poll
#enable-dbus
read-ethers
addn-hosts = /var/lib/cobbler/cobbler_hosts

# Be a proxyDHCP server
dhcp-range=10.10.0.0,proxy

# Only respond to clients that are known (i.e present in /etc/ethers)
dhcp-ignore=#known

# Set this (and domain: see below) if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts
domain=test.basjes.nl,10.10.15.0

# Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.
pxe-service=x86PC, "Boot PXELinux (=Cobbler controlled)", pxelinux ,$next_server

$insert_cobbler_system_definitions

ปรับปรุง: 2012-04-30

ไม่กี่เดือนที่ผ่านมาฉันได้รับอีเมลจากคนที่ระบุว่าเขาไม่สามารถทำงานได้ ปรากฎว่าฉันได้ทำการแก้ไขและเปลี่ยนพายผลไม้ของตัวเองที่ฉันลืมไปแล้ว ดังนั้นฉันจึงให้การแก้ไขที่สำคัญสำหรับนักพายผลไม้ที่เพิ่งกลายเป็นส่วนหนึ่งของลำต้น ฉันยังสร้างบางเอกสารสนับสนุนเพิ่มเติม


1
ตัดสินจากเว็บไซต์ของพวกเขา - ฉันสงสัยว่า Cobbler มีการใช้ DHCP รวมอยู่ด้วย ฉันอาจติดตั้ง USB ถ้าฉันทำงานในเครือข่ายที่ จำกัด :)
Lester Cheung

ไม่ แต่สามารถช่วยคุณจัดการได้
monomyth

คำตอบ:


3

สิ่งที่เราทำคือติดตั้งไฟล์ ISO ที่เราสร้างบูตเคอร์เนลและเริ่มต้นจากนั้นและให้โหลดเริ่มต้นจากตำแหน่งกลาง ไฟล์ kickstart นี้ชี้ไปที่ที่เก็บพร้อมไฟล์ RPM ซึ่งอาจเป็นเซิร์ฟเวอร์พายผลไม้ของคุณ

ฉันไม่ได้มีประสบการณ์กับ Cobbler มาก (น่าเศร้า) แต่นี่อาจเป็นตัวเลือกสำหรับคุณ?


ฉันได้ทำการติดตั้งโดยใช้ CDROM (ภาพ iso ที่สร้างโดย Cobbler!) ตามที่คุณแนะนำและใช้งานได้ดี ตอนนี้ฉันมีการตั้งค่าในพื้นที่ที่เกือบจะแยกออกซึ่งฉันสามารถถอดปลั๊กออกจาก LAN เปิดใช้งาน DHCP ปรับใช้ผ่าน PXE ปิดใช้งาน DHCP และเสียบอีกครั้ง จากข้อเท็จจริงที่ว่านี่คือสภาพแวดล้อมการทดสอบ / การทดลองที่จะต้องทำในตอนนี้ ฉันได้ดูตัวเลือก "proxydhcp" อื่น ๆ ด้วย แต่ดูเหมือนว่าไม่มีใครมีรหัสเกินกว่าปี 2004 ... นั่นคือรหัสที่ไม่ตาย ขอบคุณสำหรับความคิดเห็น.
Niels Basjes

5

PXE ROM ต้องการคำสั่ง "เซิร์ฟเวอร์ถัดไป" จากเซิร์ฟเวอร์ DHCP เพื่อค้นหาและโหลด bootloader (ไม่ว่าจะเป็นด้วง pxelinux หรือ bootloader อื่น ๆ ) หากไม่ได้ระบุ "เซิร์ฟเวอร์ถัดไป" จะขึ้นอยู่กับ PXE ROM เพื่อตัดสินใจว่าจะทำอย่างไร คุณจะต้องดูการกำหนดค่าไบออสของการ์ดเครือข่ายและดูว่ามีตัวเลือกให้ระบุเซิร์ฟเวอร์ด้วยตนเองหรือไม่

ตามที่ระบุไว้โดยคำตอบข้างต้นการใช้ ISO แบบกำหนดเองหรือ USB Stick เพื่อบู๊ตเครื่องโดยมีข้อมูลทั้งหมดที่ให้ไว้ที่บรรทัดคำสั่งเคอร์เนลน่าจะเป็นวิธีที่ดีที่สุด หากคุณไม่สามารถเข้าถึงการกำหนดค่าเซิร์ฟเวอร์ DHCP


1

หากคุณเพียงแค่ต้องการเรียกใช้การทดสอบบางอย่างคุณสามารถมีเซิร์ฟเวอร์ DHCP หลายตัวในเครือข่ายเดียวกัน คุณสามารถสร้าง cobbler สร้างการกำหนดค่า dhcpd ที่จะบอกเซิร์ฟเวอร์เพื่อตอบสนองเมื่อ MAC เฉพาะกำลังทำการร้องขอ ARP และถ้าคุณเพียงแค่แสดงความคิดเห็น / ปิดการใช้งานช่วงใด ๆ บนเซิร์ฟเวอร์นั้น (และฉันกำลังพูดถึง isc-dhcpd ที่นี่) มันจะไม่ล่วงล้ำ คุณอาจได้รับกล่อง windows บางบ่น (ในการออกอากาศ) เกี่ยวกับเซิร์ฟเวอร์ dhcp นี้จะไม่มีสิทธิ์ถ้าคุณใช้โฆษณาและเช่นนั้น แต่นอกเหนือจากที่ฉันไม่คิดว่ามีอันตรายมาก

แต่วิธีที่ดีที่สุดคือการมี cobbler / dhcp และเซิร์ฟเวอร์ที่คุณพยายามกำหนดบน VLAN แยกจากส่วนที่เหลือของเครือข่ายของคุณ วิธีนี้คุณ จำกัด โดเมนการออกอากาศของคุณและไม่มีกล่องอื่น ๆ จะเห็นประกาศ dhcp ของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.