XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Ignition and creating a SUSE MicroOS VM

    Scheduled Pinned Locked Moved Xen Orchestra
    8 Posts 4 Posters 1.7k Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P Offline
      parallax
      last edited by

      Hello fellow xcp-ng'ers,

      Is it possible to specify the requisite Ignition file to set up and configure a SUSE MicroOS VM in Xen Orchestra?

      I understand it's a lot of work to move from cloud-init to Ignition, so I'm not expecting that (however dreadful cloud-init is). I was just wondering if there was an easy workaround for now because there doesn't seem to be any other way to launch and configure MicroOS apart from using Ignition.

      1 Reply Last reply Reply Quote 0
      • olivierlambertO Online
        olivierlambert Vates 🪐 Co-Founder CEO
        last edited by

        We agree on the fact cloud-init is dradful 😄

        I have not investigated Ignition and how it works, could you do some search to provide a very quick recap on what's needed to make Ignition working?

        P 1 Reply Last reply Reply Quote 0
        • P Offline
          parallax @olivierlambert
          last edited by

          olivierlambert I don't have the technical know-how to understand at what point the Ignite file needs to be lit, or injected, or whatever term we want to use here I'm afraid. I do know how the dark side (qemu) wants it done though if that's a help?

          --qemu-commandline="-fw_cfg name=opt/com.coreos/config,file=/path/to/config.ign"

          I'd not come across Ignite files before so this has been an interesting read. In order to make things "simple," however, it seems they must first be made much more complicated, because although the Ignite file is in JSON you're expected to write it in YAML and then run it through Butane (themed naming, deep sigh) :

          https://docs.fedoraproject.org/en-US/fedora-coreos/producing-ign/

          Or something like :

          podman run -i --rm quay.io/coreos/fcct:release --pretty --strict < config.fcc > config.ign

          In the medium term is there a way to use a Template file to feed in the .ign file? I see there is a Packer add-in for XCP that has been linked to before, but the kind xcp-ng forum member who advertised their example files to get people started has since closed their Github site. 😞

          Ignite seems to be the direction of travel for SUSE anyway, and there are relatively few immutable container-oriented OSes so hence me looking at MicroOS for Docker containers anyway. (Talos looks good for k8s.)

          1 Reply Last reply Reply Quote 0
          • R Offline
            ravenet
            last edited by ravenet

            Provide combustion via an iso mounted. Idea behind combustion/ignition is a usb plugged in, or pass through a usb if you already created one.

            follow instructions on building the combustion file, drop in a folder named combustion. use whatever tool you want to move this folder into an iso, and label the iso itself combustion. Basically same steps as creating the combustion usb.

            https://en.opensuse.org/SDB:K3s_cluster_deployment_on_MicroOS

            P 1 Reply Last reply Reply Quote 1
            • P Offline
              parallax @ravenet
              last edited by

              ravenet Thanks very much for this and apologies for not replying sooner, I was on holiday with a blissful two weeks of no Internet. 😍

              I'll give this a go - so basically boot the iso in a VM with an Ignition file as you describe on a second iso attached to the VM?

              Is it possible that a template file could be built which would perform this function for SUSE Linux variants? Otherwise I am not sure how to trigger the building of new VMs as loads scale, eg for when hopefully xcp-ng is supported as a provider for Rancher.

              R J 2 Replies Last reply Reply Quote 0
              • R Offline
                ravenet @parallax
                last edited by

                parallax I'd assume so. You'd just have that combustion iso provided as a disk image with each to provide the initial setup. I've not looked at custom template creation in XO

                Otherwise you'd be looking at pxe and tftp, or better, use opensuse build services with kiwiNG to customize your own appliance with preconfigured settings etc.

                1 Reply Last reply Reply Quote 1
                • J Offline
                  jessepeterson @parallax
                  last edited by

                  parallax Were you able to get this working?

                  If not I might open a new thread for to ask for a way to expose what's needed for Ignition. My ask is for Fedora CoreOS, which has QEMU instructions (as you noted): https://docs.fedoraproject.org/en-US/fedora-coreos/provisioning-qemu/ (basically, using the -fw_cfg switch).

                  P 1 Reply Last reply Reply Quote 0
                  • P Offline
                    parallax @jessepeterson
                    last edited by

                    jessepeterson I did, using the disk mounting method, but the solution didn't really spark joy in me. For the last 18 months I've been on LXD and now Incus, which I found easier to use different distros on.

                    1 Reply Last reply Reply Quote 1
                    • First post
                      Last post