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:
Dalton Hubble
2016-04-14 12:53:07 -07:00
parent 22a8aa416e
commit 06d64cf998
5 changed files with 21 additions and 26 deletions

View File

@@ -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

View File

@@ -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) |

View File

@@ -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": "",

View File

@@ -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}",

View File

@@ -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": "",