SlideShare a Scribd company logo
1 of 12
Download to read offline
www.immobilienscout24.de
Berlin | 08.05.2014 | Schlomo Schapiro
Systems Architect & Open Source Evangelist
http://creativecommons.org/licenses/by-sa/4.0
iPXE
The Versatile Network Boot Loader
@schlomoschapiro
schlomo.schapiro@immobilienscout24.de
Preboot eXecution Environment
RPL
Etherboot
gPXE
pxelinux
iPXE
NetBoot
RIS
Cobbler
FAI Kickstart
AutoYAST
http://en.wikipedia.org/wiki/Preboot_Execution_Environment
http://networkboot.org/
iPXE
◉ full PXE implementation
◉ boot from a web server via HTTP
◉ boot from network block devices
➨ iSCSI SAN
➨ Fibre Channel SAN via FCoE
➨ AoE SAN
◉ boot from VLAN, WLAN, WAN
◉ boot from an Infiniband network
◉ control the boot process with a scripting language
◉ user interaction with prompts and menus
◉ display images and splash screens
◉ replaces NIC boot ROM or chainload via PXE boot
ipxe.org
Michael Brown github.com/mcb30
Get or Build
◉ DEB: sudo apt-get install ipxe
◉ RPM: Build it yourself
➨ git clone https://github.com/ImmobilienScout24/ipxe
➨ cd ipxe/src
➨ make srpm or make rpm
◉ Customizing
➨ Uses C Header files
➨ Add customization in config/local/*.h
➨ Copy stuff from config/*.h
➨ Example: config/local/console.h
#undef KEYBOARD_MAP
#define KEYBOARD_MAP de
Usage - Loading
◉ 3 Flavours:
➨ UNDI: undionly.kpxe
➨ All Drivers: ipxe.dsk, ipxe.iso, ipxe.usb, ipxe.lkrn, ipxe.pxe
➨ Single Driver: XXXXXXXX.rom
◉ PXE chainloading
➨ dhcpd.conf:
filename "undionly.kpxe";
➨ dnsmasq.conf:
dhcp-boot=undionly.kpxe
Usage - Set Boot Action
◉ Provide Boot Source (dhcpd.conf), e.g. iSCSI LUN
option root-path "iscsi:iscsi.my.com::::iqn.1992-01.com.my.iscsi:target";
◉ Provide iPXE script (dhcpd.conf)
if exists user-class and option user-class = "iPXE" {
filename "http://my.web.server/real_boot_script.php";
} else {
filename "undionly.kpxe";
}
Usage - Advanced
◉ NIC flashing
➨ Replace PXE firmware on your NIC
➨ http://ipxe.org/howto/romburning
➨ Best with embedded boot script
➨ Great for creating low-cost AoE / FCoE / iSCSI HBA :-)
◉ Show login mask
◉ Menus
◉ Server interaction & information gathering:
chain http://my.com/collect?u=${uuid}&m=${mac}&a=${asset}
◉ Use your fantasy…
Testing
◉ QEMU:
qemu -bootp tftp://10.0.2.2//script.ipxe -tftp ~/tftp ipxe.usb
◉ VirtualBox:
➨ Boot VM from ipxe.iso
➨ Set TFTP filename to iPXE script:
VBoxManage modifyvm "ipxe test" --nattftpfile1 script.ipxe
➨ Set TFTP Prefix to directory of iPXE script:
VBoxManage modifyvm "ipxe test" --nattftpprefix1 ~/tftp
◉ iPXE script: ~/tftp/script.ipxe
Example: DHCP or Manual Configuration
#!ipxe
prompt --key 0x02 --timeout 10000 Press Ctrl-B for iPXE command line... && shell ||
dhcp && goto netboot ||
ifclose
echo -n Choose net0 or net1 or ...: ${} && read nic
set ${nic}/dns 8.8.8.8
set ${nic}/netmask 255.255.255.0
config ${nic}
ifopen ${nic}
goto netboot
:netboot
chain http://my.com/boot/main.ipxe || echo Error in iPXE chaining, try again 1
chain http://my.com/boot/main.ipxe || echo Error in iPXE chaining, giving up
https://www.youtube.com/watch?v=EmyysqDhMII
Development
◉ Upcoming Features:
➨ UEFI support
➨ UNDIONLY driver as fall-back solution
➨ Automated Testing published on ipxe.org
◉ Paid Support & Development
➨ Author in UK
➨ Available for contract work on iPXE
◉ Development & Community
➨ Mostly in C
➨ IRC and Mailing List
Q & A / See also
go.schapiro.org/slides
blog.schlomo.schapiro.org
yadt-project.org | visit us in hall 6, booth A07

More Related Content

More from Schlomo Schapiro

The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11
The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11
The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11Schlomo Schapiro
 
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...Schlomo Schapiro
 
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...Schlomo Schapiro
 
The Role of GitOps in IT Strategy - June 2021 - Schlomo Schapiro
The Role of GitOps in IT Strategy - June 2021 - Schlomo SchapiroThe Role of GitOps in IT Strategy - June 2021 - Schlomo Schapiro
The Role of GitOps in IT Strategy - June 2021 - Schlomo SchapiroSchlomo Schapiro
 
The GitOps Journey - GitOpsCon EU 2021 - Schlomo Schapiro
The GitOps Journey - GitOpsCon EU 2021 - Schlomo SchapiroThe GitOps Journey - GitOpsCon EU 2021 - Schlomo Schapiro
The GitOps Journey - GitOpsCon EU 2021 - Schlomo SchapiroSchlomo Schapiro
 
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroWant Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroSchlomo Schapiro
 
Automated Governance - Continous Lifecycle 2019 - Schlomo Schapiro
Automated Governance - Continous Lifecycle 2019 - Schlomo SchapiroAutomated Governance - Continous Lifecycle 2019 - Schlomo Schapiro
Automated Governance - Continous Lifecycle 2019 - Schlomo SchapiroSchlomo Schapiro
 
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo SchapiroCompliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo SchapiroSchlomo Schapiro
 
DevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
DevOps ist normal - DevOps Essentials 2019 - Schlomo SchapiroDevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
DevOps ist normal - DevOps Essentials 2019 - Schlomo SchapiroSchlomo Schapiro
 
The Devops Driving School - DevOps Gathering 2019 - Schlomo Schapiro
The Devops Driving School - DevOps Gathering 2019 - Schlomo SchapiroThe Devops Driving School - DevOps Gathering 2019 - Schlomo Schapiro
The Devops Driving School - DevOps Gathering 2019 - Schlomo SchapiroSchlomo Schapiro
 
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...Schlomo Schapiro
 
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...Schlomo Schapiro
 
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...Schlomo Schapiro
 
Kubernetes - Shifting the mindset from servers to containers - microxchg 201...
Kubernetes  - Shifting the mindset from servers to containers - microxchg 201...Kubernetes  - Shifting the mindset from servers to containers - microxchg 201...
Kubernetes - Shifting the mindset from servers to containers - microxchg 201...Schlomo Schapiro
 
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo Schapiro
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo SchapiroRoot for all - measuring DevOps adoption - microxchg 2018 - Schlomo Schapiro
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo SchapiroSchlomo Schapiro
 
WARNING is a waste of my time
WARNING is a waste of my timeWARNING is a waste of my time
WARNING is a waste of my timeSchlomo Schapiro
 
SE 2015 DevOps Risk Mitigation - Test Driven Infrastructure
SE 2015 DevOps Risk Mitigation - Test Driven InfrastructureSE 2015 DevOps Risk Mitigation - Test Driven Infrastructure
SE 2015 DevOps Risk Mitigation - Test Driven InfrastructureSchlomo Schapiro
 
EuroPython 2014 YAML Reader Lightning Talk
EuroPython 2014 YAML Reader Lightning TalkEuroPython 2014 YAML Reader Lightning Talk
EuroPython 2014 YAML Reader Lightning TalkSchlomo Schapiro
 
OSDC 2014 Test Driven Infrastructure
OSDC 2014 Test Driven InfrastructureOSDC 2014 Test Driven Infrastructure
OSDC 2014 Test Driven InfrastructureSchlomo Schapiro
 
PyCon 2013 - Distributed Monitoring Configuration
PyCon 2013 - Distributed Monitoring ConfigurationPyCon 2013 - Distributed Monitoring Configuration
PyCon 2013 - Distributed Monitoring ConfigurationSchlomo Schapiro
 

More from Schlomo Schapiro (20)

The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11
The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11
The GitOps Journey - Schlomo Schapiro - Berlin DevOps Meetup 2021-11
 
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...
The Role of GitOps in IT-Strategy - November 2021 - Schlomo Schapiro - Contin...
 
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...
Schlomo Schapiro - Why I like to use the proprietary Cloud services without f...
 
The Role of GitOps in IT Strategy - June 2021 - Schlomo Schapiro
The Role of GitOps in IT Strategy - June 2021 - Schlomo SchapiroThe Role of GitOps in IT Strategy - June 2021 - Schlomo Schapiro
The Role of GitOps in IT Strategy - June 2021 - Schlomo Schapiro
 
The GitOps Journey - GitOpsCon EU 2021 - Schlomo Schapiro
The GitOps Journey - GitOpsCon EU 2021 - Schlomo SchapiroThe GitOps Journey - GitOpsCon EU 2021 - Schlomo Schapiro
The GitOps Journey - GitOpsCon EU 2021 - Schlomo Schapiro
 
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroWant Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
 
Automated Governance - Continous Lifecycle 2019 - Schlomo Schapiro
Automated Governance - Continous Lifecycle 2019 - Schlomo SchapiroAutomated Governance - Continous Lifecycle 2019 - Schlomo Schapiro
Automated Governance - Continous Lifecycle 2019 - Schlomo Schapiro
 
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo SchapiroCompliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
 
DevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
DevOps ist normal - DevOps Essentials 2019 - Schlomo SchapiroDevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
DevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
 
The Devops Driving School - DevOps Gathering 2019 - Schlomo Schapiro
The Devops Driving School - DevOps Gathering 2019 - Schlomo SchapiroThe Devops Driving School - DevOps Gathering 2019 - Schlomo Schapiro
The Devops Driving School - DevOps Gathering 2019 - Schlomo Schapiro
 
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...
Open Source Contribution Policy at DB Systel - Schlomo Schapiro - AK Open Sou...
 
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...
Compliant by Default - Continuous Delivery at DB Systel - 16.10.2018 - Schlom...
 
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...
DevOps + Continuous Delivery + Cloud: The Three Drivers of Enterprise Agility...
 
Kubernetes - Shifting the mindset from servers to containers - microxchg 201...
Kubernetes  - Shifting the mindset from servers to containers - microxchg 201...Kubernetes  - Shifting the mindset from servers to containers - microxchg 201...
Kubernetes - Shifting the mindset from servers to containers - microxchg 201...
 
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo Schapiro
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo SchapiroRoot for all - measuring DevOps adoption - microxchg 2018 - Schlomo Schapiro
Root for all - measuring DevOps adoption - microxchg 2018 - Schlomo Schapiro
 
WARNING is a waste of my time
WARNING is a waste of my timeWARNING is a waste of my time
WARNING is a waste of my time
 
SE 2015 DevOps Risk Mitigation - Test Driven Infrastructure
SE 2015 DevOps Risk Mitigation - Test Driven InfrastructureSE 2015 DevOps Risk Mitigation - Test Driven Infrastructure
SE 2015 DevOps Risk Mitigation - Test Driven Infrastructure
 
EuroPython 2014 YAML Reader Lightning Talk
EuroPython 2014 YAML Reader Lightning TalkEuroPython 2014 YAML Reader Lightning Talk
EuroPython 2014 YAML Reader Lightning Talk
 
OSDC 2014 Test Driven Infrastructure
OSDC 2014 Test Driven InfrastructureOSDC 2014 Test Driven Infrastructure
OSDC 2014 Test Driven Infrastructure
 
PyCon 2013 - Distributed Monitoring Configuration
PyCon 2013 - Distributed Monitoring ConfigurationPyCon 2013 - Distributed Monitoring Configuration
PyCon 2013 - Distributed Monitoring Configuration
 

Recently uploaded

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

LinuxTag 2014 - iPXE - The Versatile Network Boot Loader

  • 1. www.immobilienscout24.de Berlin | 08.05.2014 | Schlomo Schapiro Systems Architect & Open Source Evangelist http://creativecommons.org/licenses/by-sa/4.0 iPXE The Versatile Network Boot Loader @schlomoschapiro schlomo.schapiro@immobilienscout24.de
  • 2. Preboot eXecution Environment RPL Etherboot gPXE pxelinux iPXE NetBoot RIS Cobbler FAI Kickstart AutoYAST http://en.wikipedia.org/wiki/Preboot_Execution_Environment http://networkboot.org/
  • 3. iPXE ◉ full PXE implementation ◉ boot from a web server via HTTP ◉ boot from network block devices ➨ iSCSI SAN ➨ Fibre Channel SAN via FCoE ➨ AoE SAN ◉ boot from VLAN, WLAN, WAN ◉ boot from an Infiniband network ◉ control the boot process with a scripting language ◉ user interaction with prompts and menus ◉ display images and splash screens ◉ replaces NIC boot ROM or chainload via PXE boot ipxe.org Michael Brown github.com/mcb30
  • 4. Get or Build ◉ DEB: sudo apt-get install ipxe ◉ RPM: Build it yourself ➨ git clone https://github.com/ImmobilienScout24/ipxe ➨ cd ipxe/src ➨ make srpm or make rpm ◉ Customizing ➨ Uses C Header files ➨ Add customization in config/local/*.h ➨ Copy stuff from config/*.h ➨ Example: config/local/console.h #undef KEYBOARD_MAP #define KEYBOARD_MAP de
  • 5. Usage - Loading ◉ 3 Flavours: ➨ UNDI: undionly.kpxe ➨ All Drivers: ipxe.dsk, ipxe.iso, ipxe.usb, ipxe.lkrn, ipxe.pxe ➨ Single Driver: XXXXXXXX.rom ◉ PXE chainloading ➨ dhcpd.conf: filename "undionly.kpxe"; ➨ dnsmasq.conf: dhcp-boot=undionly.kpxe
  • 6. Usage - Set Boot Action ◉ Provide Boot Source (dhcpd.conf), e.g. iSCSI LUN option root-path "iscsi:iscsi.my.com::::iqn.1992-01.com.my.iscsi:target"; ◉ Provide iPXE script (dhcpd.conf) if exists user-class and option user-class = "iPXE" { filename "http://my.web.server/real_boot_script.php"; } else { filename "undionly.kpxe"; }
  • 7. Usage - Advanced ◉ NIC flashing ➨ Replace PXE firmware on your NIC ➨ http://ipxe.org/howto/romburning ➨ Best with embedded boot script ➨ Great for creating low-cost AoE / FCoE / iSCSI HBA :-) ◉ Show login mask ◉ Menus ◉ Server interaction & information gathering: chain http://my.com/collect?u=${uuid}&m=${mac}&a=${asset} ◉ Use your fantasy…
  • 8. Testing ◉ QEMU: qemu -bootp tftp://10.0.2.2//script.ipxe -tftp ~/tftp ipxe.usb ◉ VirtualBox: ➨ Boot VM from ipxe.iso ➨ Set TFTP filename to iPXE script: VBoxManage modifyvm "ipxe test" --nattftpfile1 script.ipxe ➨ Set TFTP Prefix to directory of iPXE script: VBoxManage modifyvm "ipxe test" --nattftpprefix1 ~/tftp ◉ iPXE script: ~/tftp/script.ipxe
  • 9. Example: DHCP or Manual Configuration #!ipxe prompt --key 0x02 --timeout 10000 Press Ctrl-B for iPXE command line... && shell || dhcp && goto netboot || ifclose echo -n Choose net0 or net1 or ...: ${} && read nic set ${nic}/dns 8.8.8.8 set ${nic}/netmask 255.255.255.0 config ${nic} ifopen ${nic} goto netboot :netboot chain http://my.com/boot/main.ipxe || echo Error in iPXE chaining, try again 1 chain http://my.com/boot/main.ipxe || echo Error in iPXE chaining, giving up
  • 11. Development ◉ Upcoming Features: ➨ UEFI support ➨ UNDIONLY driver as fall-back solution ➨ Automated Testing published on ipxe.org ◉ Paid Support & Development ➨ Author in UK ➨ Available for contract work on iPXE ◉ Development & Community ➨ Mostly in C ➨ IRC and Mailing List
  • 12. Q & A / See also go.schapiro.org/slides blog.schlomo.schapiro.org yadt-project.org | visit us in hall 6, booth A07