Warewulf Versions Save

Warewulf is a stateless and diskless container operating system provisioning system for large clusters of bare metal and/or virtual systems.

v4.4.0rc1

1 year ago

First release candidate of the 4.3.0 branch.

Changes

New features

  • Changed internal interacation between the on disk YAML format and the in memory format. This enables the command line options to be autogenerated from the datastructures. Also this keeps the options for profiles and node set/add commands in strict sync.
  • Added node edit/export/import where the edit command exposes the YAML config for the given nodes in an editor. Nodes can also be added with this command. The export command simply drops the YAML config for the given nodes. With the import command nodes can be imported as YAML or as a CSV file. The CSV file must havr a header in where the first field must always be the nodename, the rest of the fields are the same as the long commandline options. Network device must have the form net.$NETNAME.$NETOPTION, which would e.g. be net.default.ipaddr
  • The default value (like kernel args) are no read in from the configuration file default.conf. If this file couldn't be read built in default values will be used.
  • Template files for NetworkManager are now present in the wwinit overlay. A interface must have the type ethernet or infiniband that these will be brought up by NetworkManager
  • Listings of container via wwctl container list will now show the creation,modification date and the size.
  • Initial cut of the warewulf API. See https://github.com/hpcng/warewulf/pull/471

Bug fixes

  • For the connections of wwctl ssh the primary interface will be used
  • Fixed kernel version in wwctl container show
  • remove the container image and not only the rootfs dir on delete
  • include and exclude handling for container were fixed

v4.3.0

2 years ago

The Warewulf development team is happy to release Warewulf version 4.3.0!

Changes

  • The kernel is now part of the container by default which means the entire kernel and user space stack can be built, maintained, and distributed within a single container. It is still possible to override a specific kernel using the --kerneloverride option to nodes and profiles.
  • Network interfaces are no longer named as the "device name", but rather have a free from string as the network name with the initial name being "default".
  • Creating of '/etc/exports' can now be disabled, so that wwctl configure -a wont overwrite a existing '/etc/exports'.
  • All configurations files for the host (/etc/exports, /etc/dhcpd.conf, /etc/hosts) are now populated from the host overlay. Also other configuration files like prometheus.yml.ww or slurm.conf.ww which depend on the cluster nodes can be placed there.
  • New template functions now exist: {{ abort }}, {{ IncludeBlock }} and {{ no_backup }} are now supported.
  • Nodes can now have multiple system and runtime overlays, as a comma separated list.
  • Simple ipv6 support is now enabled. In warewulf.conf the option ipaddr6/Ipv6net must be set to enable ipv6.
  • Multiple files can now be created from a single template overlay file with the {{ file FILENAME }} command in the template. The command is expanded to the magic template command {{ /* file FILENAME */}} which is picked up by wwctl and everything which comes after this magic comment will be written to the file FILENAME. This mechanism is leveraged in the configuration files for the network, see ifcfg.xml.ww and ifcgf.ww.
  • Networks can now have arbitrary keys value pairs in the profiles and on the node, so that things like bridges and mtu sizes can be set
  • The yaml format for nodes has now sub-keys for ipmi and kernel, old nodes.conf files have to be changed accordingly
  • uids and gids of a container now get synced at import time, so that at least users with the same name have the same uid. This is not necessarily needed for warewulf, but services like munge.
  • Refactoring of the Warewulf daemon to support better concurrency and building overlays on the fly.

If you have any problems please join our Slack channel and/or submit an issue here: https://github.com/hpcng/warewulf/issues

This is also release has also breaking changes for the configuration files, as the format for the network devices in the nodes.conf has changed, Also warewulf.conf has a new way to configure the nfs exports on the master node and separate sections for the ipmi and kernel configs.

note: From this release on, the main branch will only get bug fixes until the next release. Development will happen in the develop branch.

v4.3.0rc6

2 years ago

This is hopefully the last release candidate before the 4.3.0 release which is scheduled for next week (June 15th, 2022).

In this RC is a substantial fix for making server side overlay building thread safe (thanks @kcdodd!) and some other small cleanups and additions to get into the 4.3.0 main release.

v4.3.0rc5

2 years ago

Minor fixes that I missed in RC4.

v4.3.0rc4

2 years ago
  • Updated container recipes
  • Updated overlay templates
  • Cleaned iPXE output

Fixes for: #346

Refactors

  • Combine server response handling, reduce code duplication
  • Simplify stage cases, backward compatible uri
  • Implement image creation as functions instead of shell scripts
  • Combine daemonLogf and wwlog to single logging output
  • Switch to named wwlog functions instead of constants

Fixes

  • Fix hidden errors occurring in shell pipes
  • Fix kernel search path for Ubuntu
  • Fix http response when template rendering fails
  • Fix template newline insertion, update dhcp and hosts tmpl

Updates

  • Add hwaddr and interface to dhcp
  • Add control over image compression to client
  • Update IPXE template to handle non-compressed files
  • Update DHCP template to set network interfaces and server IP assignment
  • Update DHCP/hosts templates to choose a host-name self-consistently

v4.3.0rc3

2 years ago
  • host overlays are now enabled in standard config
  • provision network is now called 'primary` and not 'default'

v4.3.0rc2

2 years ago
  • Includes bug fixes for wwctl node|profile list
  • backward compatibility for nodes.conf
  • added file:// uri for importing archived containers

v4.3.0rc1

2 years ago

First release candidate of the 4.3.0 branch. From this release on, the main branch will only get bug fixes until the next release. Development will happen in the develop branch. This is also release has also breaking changes for the configuration files, as the format for the network devices in the nodes.conf has changed, Also warewulf.conf has a new way to configure the nfs exports on the master node and separate sections for the ipmi and kernel configs.

Changes

  • Provision interface is not tied to 'eth0' any more. The provision interface must be named 'default' now. The file `nodes.yaml' must be changed accordingly.
  • Creating of '/etc/exports' can now be disabled, so that wwctl configure -a wont overwrite a existing '/etc/exports'.
  • All configurations files for the host (/etc/exports, /etc/dhcpd.conf, /etc/hosts) are now populated from the (OVERLAYDIR/host/etc/{exports|dhcpd|hosts}.ww . Also other configuration files like prometheus.yml.ww or slurm.conf.ww which depend on the cluster nodes can be placed. Also the new templated functions {{ abort }}, {{ IncludeBlock }} abd {{ no_backup }} are allowed now.
  • nodes and profiles can now have multiple system and runtime overlays, as a comma separated list. The overlays of the profile and the nodes are combined.
  • simple ipv6 support is now enabled. In warewulf.conf the option ipaddr6/Ipv6net must be set to enable ipv6. If enabled on of these options is set a node will get a derived ipv6 in the scheme ipv6net:ipaddr4. This address can also be overwritten for every node
  • Multiple files can now created from a single template.ww file with the {{ file FILENAME }} command in the template. The command is expanded to the magic template command {{ /* file FILENAME */}} which is picked up by wwctl and everything which comes after this magic comment will be written to the file FILENAME. This mechanism is leveraged in the configuration files for the network, see ifcfg.xml.ww and ifcgf.ww.
  • Networks can now have arbitrary keys value pairs in the profiles and on the node, so that things like bridges and mtu sizes can be set
  • The yaml format for nodes has now sub-keys for ipmi and kernel, old nodes.conf files have to to be changed accordingly
  • uids and gids of a container now get synced at import time, so that at least users with the same name have the same uid. This is not necessarily needed for warewulf, but services like munge.

v4.2.0

2 years ago

We are pleased to announce the official release of Warewulf version 4.2.0!

Please see the attached release tarball.

Update 2021-12-22: RPMs have been rebuilt due to CVE-2021-44717

v4.2.0rc1

2 years ago

This is a pre-release of Warewulf 4.2.0. Please test!