User Tools

Site Tools


k8s:linux_vm:set_up_flatcar-linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
k8s:linux_vm:set_up_flatcar-linux [2023/10/19 15:00] admink8s:linux_vm:set_up_flatcar-linux [2023/11/14 22:43] (current) admin
Line 22: Line 22:
  
 Upload a version of flatcar_production_vmware_ova_image.vmdk to one of the VM hosts. Instead of [current](https://stable.release.flatcar-linux.net/amd64-usr/current/) it might be better to upload Upload a version of flatcar_production_vmware_ova_image.vmdk to one of the VM hosts. Instead of [current](https://stable.release.flatcar-linux.net/amd64-usr/current/) it might be better to upload
-a [previous stable release](https://stable.release.flatcar-linux.net/amd64-usr/) and check that updating works. For example [3033.2.0](https://stable.release.flatcar-linux.net/amd64-usr/3033.2.0/)+a [previous stable release](https://stable.release.flatcar-linux.net/amd64-usr/) and check that updating works. For example [3510.2.8](https://stable.release.flatcar-linux.net/amd64-usr/3510.2.8/)
 Remove any disks. Add the `flatcar_production_vmware_ova_image.vmdk` as the first disk (system, sda) and add a second thin provisionen 230 GB disk (container ephemeral, sdb). Remove any disks. Add the `flatcar_production_vmware_ova_image.vmdk` as the first disk (system, sda) and add a second thin provisionen 230 GB disk (container ephemeral, sdb).
  
Line 42: Line 42:
 ```yaml ```yaml
 variant: flatcar variant: flatcar
-version: 1.1.0 +version: 1.0.0 
-ignition+passwd
-  passwd: +  users: 
-    users: +  - name: core 
-    - name: core +    ssh_authorized_keys: 
-      ssh_authorized_keys: +      - ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFBjtMTXcKtVlorGkFwpCs1XmHakFwk3ggShgmHZyJaAhjR81bAFFZVGURBIXUnmi4DpcAV1GaNDNdw0DJvPqRo= Omar Yubikey 5 nano 
-        - ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFBjtMTXcKtVlorGkFwpCs1XmHakFwk3ggShgmHZyJaAhjR81bAFFZVGURBIXUnmi4DpcAV1GaNDNdw0DJvPqRo= Omar Yubikey 5 nano +      - ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAe26li9Rzcf+iBRftzE3WDddlDI8+HpCm+GFdep5tcWC6Q2Hzbi1GSqFTBSvpKAJRbyq49OkA3gd16ugmzImDU= Omar Yubikey 5 NFC 
-        - ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAe26li9Rzcf+iBRftzE3WDddlDI8+HpCm+GFdep5tcWC6Q2Hzbi1GSqFTBSvpKAJRbyq49OkA3gd16ugmzImDU= Omar Yubikey 5 NFC +kernel_arguments: 
-  kernel_arguments: +  should_not_exist: 
-    should_not_exist: +  - flatcar.autologin 
-    - flatcar.autologin +storage: 
-  storage: +  filesystems: 
-    filesystems: +    - device: /dev/sdb 
-      name: oem +      format: xfs 
-        mount: +      wipe_filesystem: true 
-         device: /dev/disk/by-label/OEM +      label: cont-ephemer 
-         format: btrfs +  files: 
-         label: OEM +    - path: /etc/hostname 
-      - name: cont-ephemer +      mode: 0644 
-        mount: +      contents: 
-         device: /dev/sdb +        inline: acdh-clusterx 
-         format: xfs +      overwrite: true 
-         wipe_filesystem: true +    # change IP and MAC addresses for other nodes! 
-         label: cont-ephemer +    - path: /etc/systemd/network/10-ens1.network 
-    files: +      contents: 
-      - path: /grub.cfg +        inline: |      
-        filesystem: oem +          [Match] 
-        mode: 0644 +          MACAddress=<MAC address from vCenter kubernetes_public> 
-        contents: +           
-         inline: | +          [Network] 
-           set oem_id="vmware" # or something else like +          Address=10.3.6.xx/24 
-           set linux_append="" +          Gateway=10.3.6.1 
-      - path: /etc/hostname +          DNS=192.168.1.1 
-        filesystem: root +          Domains=servants.priv 
-        mode: 0644 +#          NTP=192.168.1.250 
-        contents: +    - path: /etc/systemd/network/10-ens2.network 
-         inline: acdh-cluster3 +      contents: 
-             # change IP and MAC addresses for other nodes! +        inline: |          
-      - path: /etc/systemd/network/10-ens1.network +          [Match] 
-        contents: +          MACAddress=MAC address from vCenter kubernetes_internal> 
-          inline: |      +           
-            [Match] +          [Network] 
-            MACAddress=<MAC address from vCenter kubernetes_public> +          Address=10.6.16.xx/24 
-             +    - path: /etc/flatcar/update.conf 
-            [Network] +      contents
-            Address=10.3.6.xx/24 +        inline: | 
-            Gateway=10.3.6.1 +          REBOOT_STRATEGY="reboot" 
-            DNS=192.168.1.250 +          LOCKSMITHD_REBOOT_WINDOW_START="Thu 04:00" 
-            Domains=servants.priv +          LOCKSMITHD_REBOOT_WINDOW_LENGTH="1h" 
-            NTP=192.168.1.250 +      overwrite: true 
-      - path: /etc/systemd/network/10-ens2.network +systemd: 
-        contents: +  units: 
-          inline: |          +    - name: update-engine.service 
-            [Match] +      enabled: true 
-            MACAddress=MAC address from vCenter kubernetes_internal> +    - name: locksmithd.service 
-             +      enabled: true 
-            [Network] +    - name: systemd-timesyncd.service 
-            Address=10.6.16.xx/24 +      enabled: true 
-      - path: /etc/flatcar/update.conf +    - name: var-lib-rancher.mount 
-        content+      enabled: true 
-          inline: | +      contents: | 
-            REBOOT_STRATEGY="reboot" +        [Unit] 
-            LOCKSMITHD_REBOOT_WINDOW_START="Thu 04:00" +        Description=Mount ephemeral to /var/lib/rancher 
-            LOCKSMITHD_REBOOT_WINDOW_LENGTH="1h" +        Before=local-fs.target 
-  systemd: +        [Mount] 
-    units: +        What=/dev/disk/by-label/cont-ephemer 
-      # Ensure docker starts automatically instead of being socket-activated +        Where=/var/lib/rancher 
-      - name: docker.socket +        Type=xfs 
-        enable: false +        [Install] 
-      - name: update-engine.service +        WantedBy=local-fs.target
-        enable: true +
-      - name: locksmithd.service +
-        enable: true +
-      - name: systemd-timesyncd.service +
-        enable: true   +
-      # Mount a separate disk for all docker data +
-      - name: var-lib-docker.mount +
-      # Mount a separate disk for all docker data +
-      - name: var-lib-rancher.mount +
-        enable: true +
-        contents: | +
-          [Unit] +
-          Description=Mount ephemeral to /var/lib/rancher +
-          Before=local-fs.target +
-          [Mount] +
-          What=/dev/disk/by-label/cont-ephemer +
-          Where=/var/lib/rancher +
-          Type=xfs +
-          [Install] +
-          WantedBy=local-fs.target  +
-      - name: docker.service +
-        enable: false+
 ``` ```
  
Line 167: Line 145:
 qemu-img create -f qcow2 -F qcow2 -b flatcar_production_qemu_image.img flatcar-linux1.qcow2 qemu-img create -f qcow2 -F qcow2 -b flatcar_production_qemu_image.img flatcar-linux1.qcow2
 chown libvirt-qemu:kvm flatcar_production_qemu_image.img flatcar-linux1.qcow2 chown libvirt-qemu:kvm flatcar_production_qemu_image.img flatcar-linux1.qcow2
 +```
 +Create the configuration (use the YAML from above)
 +```bash
 +cat acdh-clusterx.yaml | podman run --rm -i quay.io/coreos/butane:latest > /var/lib/libvirt/qemu/nvram/flatcar-linuxX-provision-ign_VARS.fd
 +sudo chown libvirt-qemu:kvm /var/lib/libvirt/qemu/nvram/flatcar-linuxX-provision-ign_VARS.fd
 +```
 +Create the virutal machine, 2 disks, the qcow2 and a rancher partition of about 20GB  
 +At the end add the following XML
 +```xml
 +  <qemu:commandline xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
 +    <qemu:arg value='-fw_cfg'/>
 +    <qemu:arg value='name=opt/org.flatcar-linux/config,file=/var/lib/libvirt/qemu/nvram/flatcar-linuxX-provision-ign_VARS.fd'/>
 +  </qemu:commandline>
 ``` ```
k8s/linux_vm/set_up_flatcar-linux.1697720432.txt.gz · Last modified: by admin