mirror of
https://github.com/outbackdingo/matchbox.git
synced 2026-01-27 18:19:36 +00:00
Documentation,examples: Update GRUB netboot docs
* Bump pxe, pxe-disk, and grub examples from CoreOS Alpha 962.0.0 to 983.0.0
This commit is contained in:
@@ -9,15 +9,9 @@ For local development, install the dependencies for libvirt with UEFI.
|
||||
|
||||
* [UEFI with QEMU](https://fedoraproject.org/wiki/Using_UEFI_with_QEMU)
|
||||
|
||||
## Application Container
|
||||
## Containers
|
||||
|
||||
Run the `bootcfg` ACI with rkt according to the [development docs](develop.md). Examples contains a [grub.yaml](../../examples/grub.yaml) config with a default machine group for GRUB net booting.
|
||||
|
||||
## Client VM
|
||||
|
||||
Create a VM with an e1000 or virtio network device.
|
||||
|
||||
sudo virt-install --name uefi-test --pxe --boot=uefi,network --disk pool=default,size=4 --network=bridge=metal0,model=e1000 --memory=1024 --vcpus=1 --os-type=linux --noautoconsole
|
||||
Run `bootcfg` with rkt according to [Getting Started with rkt](../getting-started-with-rkt), but mount the [grub](../../examples/groups/grub) group example.
|
||||
|
||||
## Network
|
||||
|
||||
@@ -25,21 +19,22 @@ On Fedora, add the `metal0` interface to the trusted zone in your firewall confi
|
||||
|
||||
sudo firewall-cmd --add-interface=metal0 --zone=trusted
|
||||
|
||||
Add a `grub.efi` to `tftpboot` before building the dnsmasq ACI.
|
||||
Run the `coreos.com/dnsmasq` ACI with rkt.
|
||||
|
||||
cd contrib/dnsmasq
|
||||
./get-tftp-files
|
||||
sudo ./build-aci
|
||||
sudo rkt run coreos.com/dnsmasq:v0.2.0 --net=metal0:IP=172.15.0.3 -- -d -q --dhcp-range=172.15.0.50,172.15.0.99 --enable-tftp --tftp-root=/var/lib/tftpboot --dhcp-match=set:efi-bc,option:client-arch,7 --dhcp-boot=tag:efi-bc,grub.efi --dhcp-userclass=set:grub,GRUB2 --dhcp-boot=tag:grub,"(http;bootcfg.foo:8080)/grub","172.15.0.2" --log-queries --log-dhcp --dhcp-userclass=set:ipxe,iPXE --dhcp-boot=tag:pxe,undionly.kpxe --dhcp-boot=tag:ipxe,http://bootcfg.foo:8080/boot.ipxe --address=/bootcfg.foo/172.15.0.2
|
||||
|
||||
Build dnsmasq ACI with `acbuild` and run with rkt.
|
||||
## Client VM
|
||||
|
||||
sudo rkt --insecure-options=image run dnsmasq.aci --net=metal0:IP=172.15.0.3 -- -d -q --dhcp-range=172.15.0.50,172.15.0.99 --enable-tftp --tftp-root=/var/lib/tftpboot --dhcp-match=set:efi-bc,option:client-arch,7 --dhcp-boot=tag:efi-bc,grub.efi --dhcp-userclass=set:grub,GRUB2 --dhcp-boot=tag:grub,"(http;bootcfg.foo:8080)/grub","172.15.0.2" --log-queries --log-dhcp --dhcp-userclass=set:ipxe,iPXE --dhcp-boot=tag:pxe,undionly.kpxe --dhcp-boot=tag:ipxe,http://bootcfg.foo:8080/boot.ipxe --address=/bootcfg.foo/172.15.0.2
|
||||
Create a VM with an e1000 or virtio network device.
|
||||
|
||||
### Docker
|
||||
sudo virt-install --name uefi-test --pxe --boot=uefi,network --disk pool=default,size=4 --network=bridge=metal0,model=e1000 --memory=1024 --vcpus=1 --os-type=linux --noautoconsole
|
||||
|
||||
The coreos/dnsmasq Docker image bundles a `grub.efi`.
|
||||
## Docker
|
||||
|
||||
sudo virt-install --name uefi-test --pxe --boot=uefi,network --disk pool=default,size=4 --network=bridge=docker0,model=e1000 --memory=1024 --vcpus=1 --os-type=linux --noautoconsole
|
||||
If you use Docker, run `bootcfg` according to [Getting Started with Docker](../getting-started-with-docker), but mount the [grub](../../examples/groups/grub) group example. The start the `coreos/dnsmasq` Docker image, which bundles a `grub.efi`.
|
||||
|
||||
sudo docker run --rm --cap-add=NET_ADMIN quay.io/coreos/dnsmasq -d -q --dhcp-range=172.17.0.43,172.17.0.99 --enable-tftp --tftp-root=/var/lib/tftpboot --dhcp-match=set:efi-bc,option:client-arch,7 --dhcp-boot=tag:efi-bc,grub.efi --dhcp-userclass=set:grub,GRUB2 --dhcp-boot=tag:grub,"(http;bootcfg.foo:8080)/grub","172.17.0.2" --log-queries --log-dhcp --dhcp-option=3,172.17.0.1 --dhcp-userclass=set:ipxe,iPXE --dhcp-boot=tag:pxe,undionly.kpxe --dhcp-boot=tag:ipxe,http://bootcfg.foo:8080/boot.ipxe --address=/bootcfg.foo/172.17.0.2
|
||||
|
||||
Create a VM to verify the machine netboots.
|
||||
|
||||
sudo virt-install --name uefi-test --pxe --boot=uefi,network --disk pool=default,size=4 --network=bridge=docker0,model=e1000 --memory=1024 --vcpus=1 --os-type=linux --noautoconsole
|
||||
@@ -5,9 +5,9 @@ These examples network boot and provision VMs into CoreOS clusters using `bootcf
|
||||
|
||||
| Name | Description | CoreOS Version | FS | Reference |
|
||||
|------------|-------------|----------------|----|-----------|
|
||||
| pxe | CoreOS via iPXE | alpha/962.0.0 | RAM | [reference](https://coreos.com/os/docs/latest/booting-with-ipxe.html) |
|
||||
| grub | CoreOS via GRUB2 Netboot | beta/899.6.0 | RAM | NA |
|
||||
| pxe-disk | CoreOS via iPXE, with a root filesystem | alpha/962.0.0 | Disk | [reference](https://coreos.com/os/docs/latest/booting-with-ipxe.html) |
|
||||
| pxe | CoreOS via iPXE | alpha/983.0.0 | RAM | [reference](https://coreos.com/os/docs/latest/booting-with-ipxe.html) |
|
||||
| grub | CoreOS via GRUB2 Netboot | alpha/983.0.0 | RAM | NA |
|
||||
| pxe-disk | CoreOS via iPXE, with a root filesystem | alpha/983.0.0 | Disk | [reference](https://coreos.com/os/docs/latest/booting-with-ipxe.html) |
|
||||
| etcd, etcd-docker | Cluster with 3 etcd nodes, 2 proxies | alpha/983.0.0 | RAM | [reference](https://coreos.com/os/docs/latest/cluster-architectures.html) |
|
||||
| etcd-install | Install a 3-node etcd cluster to disk | alpha/983.0.0 | Disk | [reference](https://coreos.com/os/docs/latest/installing-to-disk.html) |
|
||||
| k8s, k8s-docker | Kubernetes cluster with 1 master and 2 workers, TLS-authentication | alpha/983.0.0 | Disk | [reference](https://github.com/coreos/coreos-kubernetes) |
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"id": "grub",
|
||||
"name": "CoreOS via GRUB2",
|
||||
"boot": {
|
||||
"kernel": "(http;bootcfg.foo:8080)/assets/coreos/899.6.0/coreos_production_pxe.vmlinuz",
|
||||
"initrd": ["(http;bootcfg.foo:8080)/assets/coreos/899.6.0/coreos_production_pxe_image.cpio.gz"],
|
||||
"kernel": "(http;bootcfg.foo:8080)/assets/coreos/983.0.0/coreos_production_pxe.vmlinuz",
|
||||
"initrd": ["(http;bootcfg.foo:8080)/assets/coreos/983.0.0/coreos_production_pxe_image.cpio.gz"],
|
||||
"cmdline": {
|
||||
"coreos.config.url": "http://bootcfg.foo:8080/ignition",
|
||||
"coreos.autologin": "",
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"id": "pxe-disk",
|
||||
"name": "CoreOS with SSH",
|
||||
"boot": {
|
||||
"kernel": "/assets/coreos/962.0.0/coreos_production_pxe.vmlinuz",
|
||||
"initrd": ["/assets/coreos/962.0.0/coreos_production_pxe_image.cpio.gz"],
|
||||
"kernel": "/assets/coreos/983.0.0/coreos_production_pxe.vmlinuz",
|
||||
"initrd": ["/assets/coreos/983.0.0/coreos_production_pxe_image.cpio.gz"],
|
||||
"cmdline": {
|
||||
"root": "/dev/sda1",
|
||||
"coreos.config.url": "http://bootcfg.foo:8080/ignition?uuid=${uuid}&mac=${net0/mac:hexhyp}",
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
"name": "CoreOS with SSH",
|
||||
"ignition_id": "ssh.yaml",
|
||||
"boot": {
|
||||
"kernel": "/assets/coreos/962.0.0/coreos_production_pxe.vmlinuz",
|
||||
"kernel": "/assets/coreos/983.0.0/coreos_production_pxe.vmlinuz",
|
||||
"initrd": [
|
||||
"/assets/coreos/962.0.0/coreos_production_pxe_image.cpio.gz"
|
||||
"/assets/coreos/983.0.0/coreos_production_pxe_image.cpio.gz"
|
||||
],
|
||||
"cmdline": {
|
||||
"coreos.autologin": "",
|
||||
|
||||
Reference in New Issue
Block a user