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

    Custom config / cloud-init

    Scheduled Pinned Locked Moved Management
    19 Posts 3 Posters 370 Views 3 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.
    • A Offline
      acebmxer @bvitnik
      last edited by

      @bvitnik thanks for that info. There is so much to learn with linux. Not that there is alot to learn with windows. I am still learning new stuff every day but still know just enough to get myself in trouble with Linux.

      1 Reply Last reply Reply Quote 0
      • P Online
        Pilow @bvitnik
        last edited by

        @bvitnik said in Custom config / cloud-init:

        https://docs.xcp-ng.org/guides/create-use-custom-xcpng-ubuntu-templates/

        I noticed in the documentation, they put "password:" for user password creation.

        what is working for me :

        plain_text_passwd: 'myverysecureplaintextpassword'
        

        more secure, use a SHA 512 encrypted password, but with :

        passwd: QChUQYy14yOv_encrypted_password_mgnEFL6TRPIsJ/4
        

        make it encrypted with

        # mkpasswd --method=SHA-512
        
        B 1 Reply Last reply Reply Quote 0
        • B Offline
          bvitnik @Pilow
          last edited by

          @Pilow password: as a global option and passwd: or plain_text_passwd: under users: key are two different things. The first one sets the password for the default user, ubuntu on Ubuntu if I recall correctly, while the others set password for the user specified in the users: key.

          Read the docs people 😁

          P 1 Reply Last reply Reply Quote 2
          • P Online
            Pilow @bvitnik
            last edited by

            @bvitnik indeed, RTFM

            i'm a newb on cloud-init, and should follow more this good advice !

            1 Reply Last reply Reply Quote 0
            • A Offline
              acebmxer
              last edited by

              So I have had some more time to play around with this, and I think I got it working except for one part.

              After I convert the vm to a template and go deploy new vm with newly created template. Even if i put in the network config as such.

              #cloud-config
              network:                                                                                                                                              
                 version: 2                                                                                                                                          
                 ethernets:
                  enX0:
                    dhcp4: true
                    dhcp6: false
                    set-name: "enX0"
              

              The new vm does not get IP address. When i log into new vm it does not have /etc/netplan/50-cloud-init.yaml with the above network config.

              If i manually create the file with the above config and reboot the vm gets an IP address and a different one then previous vm

              B 1 Reply Last reply Reply Quote 0
              • B Offline
                bvitnik @acebmxer
                last edited by bvitnik

                @acebmxer Did you do:

                cloud-init clean --logs --seed
                

                before converting the VM to template?

                Also, network configuration is not part of the cloud-config (aka user data). In XO, there is a separate field called "Network config" where it should be specified. See examples at the end of the guide I pasted earlier. network: key should also be removed (commented in the examples).

                A 2 Replies Last reply Reply Quote 1
                • A Offline
                  acebmxer @bvitnik
                  last edited by acebmxer

                  @bvitnik
                  This is creating new vm from Hub template. If i try the below network config the VM hangs on boot. Think previously it would eventually boot but have not networking as stated previously.

                  #cloud-config
                  # network:                                                                                                                                              
                     version: 2                                                                                                                                          
                     ethernets:
                      enX0:
                        dhcp4: true
                        dhcp6: false
                        set-name: "enX0"
                  

                  This is copy pasted from the link you provided about additional infomation to add to documentation. does not show network: commented out. When i use this with ips corrected to my network the vm boots fast but again still no networking. Even if i comment out network. Still no networking. I have to leave blank during vm creation. Can you past your working network config?

                  #cloud-config
                  network:
                    version: 2
                    ethernets:
                      eth0:
                        dhcp4: false
                        addresses:
                          - 10.0.2.6/27
                        gateway4: 10.0.2.1
                        nameservers:
                          addresses:
                            - 10.0.2.1
                            - 1.1.1.1
                  

                  EDIT -

                  This is a working config for new vm from Ubuntu Hub template. VM boots and gets IP address. Its not much different then my original. I dont know. Still learning this stuff.

                  network:
                    version: 2
                    ethernets:
                      enX0:      # or whatever your interface name is
                        dhcp4: true
                  

                  Edit -2 while the above works for dhcp the below does not work for static. VM does not get static ip

                  network:
                    version: 2
                    ethernets:
                      enX0:      # or whatever your interface name is
                        dhcp4: false
                        addresses: - 10.100.10.206/24
                        gateway4: 10.100.10.254
                        nameservers:
                            addresses:
                                 - 10.100.10.254
                                 - 1.1.1.1
                  
                  B 1 Reply Last reply Reply Quote 0
                  • A Offline
                    acebmxer @bvitnik
                    last edited by

                    @bvitnik said in Custom config / cloud-init:

                    @acebmxer Did you do:

                    cloud-init clean --logs --seed
                    

                    before converting the VM to template?

                    Also, network configuration is not part of the cloud-config (aka user data). In XO, there is a separate field called "Network config" where it should be specified. See examples at the end of the guide I pasted earlier. network: key should also be removed (commented in the examples).

                    besides getting it working on fresh vm from the ubuntu template from the Hub. I do have that command in script to prepare the vm to create a template from it. AI says this will cause the vm not to recreate the 50-cloud-init.yaml file. So how do I work around that also.

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      bvitnik @acebmxer
                      last edited by bvitnik

                      @acebmxer said in Custom config / cloud-init:

                      ...

                      network:
                        version: 2
                        ethernets:
                          enX0:      # or whatever your interface name is
                            dhcp4: false
                            addresses: - 10.100.10.206/24
                            gateway4: 10.100.10.254
                            nameservers:
                                addresses:
                                     - 10.100.10.254
                                     - 1.1.1.1
                      

                      Address should be on the next line:

                            addresses:
                            - 10.100.10.206/24
                      

                      Regarding 50-cloud-init.yaml, AI is lying 😁 .

                      A 1 Reply Last reply Reply Quote 0
                      • A Offline
                        acebmxer @bvitnik
                        last edited by

                        @bvitnik 👍 that worked.

                        B 1 Reply Last reply Reply Quote 1
                        • B Offline
                          bvitnik @acebmxer
                          last edited by

                          @acebmxer Great. These are some YAML basics. You should read more about it ☺ . Following AI instructions without understanding is not going to take you far.

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