Continental Innovates with Rancher and Kubernetes
RancherOS parses the Linux kernel boot cmdline to add any keys it understands to its configuration. This allows you to modify what cloud-init sources it will use on boot, to enable rancher.debug logging, or to almost any other configuration setting.
rancher.debug
There are two ways to set or modify persistent kernel parameters, in-place (editing the file and reboot) or during installation to disk.
Available as of v1.1
To edit the kernel boot parameters of an already installed RancherOS system, use the new sudo ros config syslinux editing command (uses vi).
sudo ros config syslinux
vi
To activate this setting, you will need to reboot.
For v1.0
For in-place editing, you will need to run a container with an editor and a mount to access the /boot/global.cfg file containing the kernel parameters.
/boot/global.cfg
$ sudo system-docker run --rm -it -v /:/host alpine vi /host/boot/global.cfg
If you want to set the extra kernel parameters when you are Installing RancherOS to Disk please use the --append parameter.
--append
$ sudo ros install -d /dev/sda --append "rancheros.autologin=tty1"
RancherOS v1.1.0 added a Syslinux boot menu, which allows you to temporarily edit the boot parameters, or to select “Debug logging”, “Autologin”, both “Debug logging & Autologin” and “Recovery Console”.
On desktop systems the Syslinux boot menu can be switched to graphical mode by adding UI vesamenu.c32 to a new line in global.cfg (use sudo ros config syslinux to edit the file).
UI vesamenu.c32
global.cfg
rancher.password=<passwd...> will set the password for rancher user. If you are not willing to use SSH keys, you can consider this parameter.
rancher.password=<passwd...>
rancher.recovery=true will start a single user root bash session as easily in the boot process, with no network, or persistent filesystem mounted. This can be used to fix disk problems, or to debug your system.
rancher.recovery=true
root
rancher.ssh.daemon=false (its enabled in the os-config) can be used to start your RancherOS with no sshd daemon. This can be used to further reduce the ports that your system is listening on.
rancher.ssh.daemon=false
rancher.debug=true will log everything to the console for debugging.
rancher.debug=true
rancher.autologin=<tty...> will automatically log in the specified console - common values are tty1, ttyS0 and ttyAMA0 - depending on your platform.
rancher.autologin=<tty...>
tty1
ttyS0
ttyAMA0
RancherOS v1.1.0 added detection of Hypervisor, and then will try to download the a service called <hypervisor>-vm-tools. This may cause boot speed issues, and so can be disabled by setting rancher.hypervisor_service=false.
<hypervisor>-vm-tools
rancher.hypervisor_service=false
Available as of v1.3
panic=10 will automatically reboot after a kernel panic, 10 means wait 10 seconds before reboot. This is a common kernel parameter, pointing out that it is because we set this parameter by default.
panic=10