XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. Cyrille
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 16
    • Groups 2

    Cyrille

    @Cyrille

    Vates 🪐 DevOps Team
    12
    Reputation
    12
    Profile views
    16
    Posts
    0
    Followers
    0
    Following
    Joined
    Last Online

    Cyrille Unfollow Follow
    DevOps Team Vates 🪐

    Best posts made by Cyrille

    • RE: DevOps Megathread: what you need and how we can help!

      Xen Orchestra Cloud Controller Manager in development 🚀

      Hello everyone 👋

      We publish a development version of a Xen Orchestra Cloud Controller Manager!

      It support the controllers cloud-node and cloud-node-lifecycle and add labels to your Kubernetes nodes hosted on Xen Orchestra VMs.

      apiVersion: v1
      kind: Node
      metadata:
        labels:
          # Type generated base on CPU and RAM
          node.kubernetes.io/instance-type: 2VCPU-1GB
          # Xen Orchestra Pool ID of the node VM Host
          topology.kubernetes.io/region: 3679fe1a-d058-4055-b800-d30e1bd2af48
          # Xen Orchestra ID of the node VM Host
          topology.kubernetes.io/zone: 3d6764fe-dc88-42bf-9147-c87d54a73f21
          # Additional labels based on Xen Orchestra data (beta)
          topology.k8s.xenorchestra/host_id: 3d6764fe-dc88-42bf-9147-c87d54a73f21
          topology.k8s.xenorchestra/pool_id: 3679fe1a-d058-4055-b800-d30e1bd2af48
          vm.k8s.xenorchestra/name_label: cgn-microk8s-recipe---Control-Plane
          ...
        name: worker-1
      spec:
        ...
        # providerID - magic string:
        #   xeorchestra://{Pool ID}/{VM ID}
        providerID: xeorchestra://3679fe1a-d058-4055-b800-d30e1bd2af48/8f0d32f8-3ce5-487f-9793-431bab66c115
      

      For now, we have only tested the provider with Microk8s.

      What's next?

      We will test the CCM with other types of Kubernetes clusters and work on fixing known issues.
      Also a modification of the XOA Hub recipe will come to include the CCM.
      More label will be added (Pool Name, VM Name, etc.).

      Feedback is welcome!

      You can install and test the XO CCM, and provide feedback to help improve and speed up the release of the first stable version. This is greatly appreciated 🙂

      ➡ The XO CCM repository
      ➡ Installation doc

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: DevOps Megathread: what you need and how we can help!

      Hello there,

      We release a new version Terraform provider with improvements of the VM disk lifecycle!

      Now you can expand a VM disk with Terraform without data loss.

      Read the release note: https://github.com/vatesfr/terraform-provider-xenorchestra/releases/tag/v0.32.0

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: How to deploy the new k8s on latest XOA 5.106?

      These two bugs have been fixed in the latest release 🙂

      posted in Advanced features
      CyrilleC
      Cyrille
    • RE: DevOps Megathread: what you need and how we can help!

      Pulumi Xen Orchestra Provider - Release v2.0.0

      We released a new version of the Pulumi Xen Orchestra provider.

      You can fail more information about the release here : https://xcp-ng.org/forum/post/92858

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: Pulumi Xen Orchestra - News

      Release v2.0.0

      This release aims to ensure that the provider is up to date with the latest version of the pulumi-terraform-bridge. This will make it easier to follow new Pulumi versions.

      The underlying Terraform provider XenOrchestra is updated to version 0.31.1, which fixes:

      • Issues with blocked operations when creating VMs. #344
      • A problem where the destroy_cloud_config_vdi_after_boot setting was ignored when the VM wasn't running. #345

      As the major version number suggests, this release introduces changes that break compatibility with previous versions (mostly deprecated functions and resources that have been removed).

      Find the release in the Pulumi registry: https://www.pulumi.com/registry/packages/xenorchestra/

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.0.0

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: Pulumi Xen Orchestra - News

      Release v1.5.2

      The provider is now available on the Pulumi official Registry 😎

      https://www.pulumi.com/registry/packages/xenorchestra/

      We added example for Yaml in the documentation.

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.2

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: DevOps Megathread: what you need and how we can help!

      Hello,
      If you want to discuss the Pulumi Provider in detail, let discuss here: https://xcp-ng.org/forum/topic/10592/pulumi-xen-orchestra-news

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • Pulumi Xen Orchestra - News

      Hello there, we released a new Pulumi Xen Orchestra provider !

      It's worth noting that the work on this was started by some contributors from DESY, and that now we (Vates) commit to support and maintain it. This demonstrate the strength of joined work from both community and Vates on free and open source softwares 🤝

      So what is offered is to declare your infrastructure as code, in

      • C# / .NET
      • Go
      • Javascript or Typescript
      • Python
      • Yaml

      (pick the one you prefer 🎲 )

      And to deploy, maintain, and update it.

      https://github.com/vatesfr/pulumi-xenorchestra/

      https://www.pulumi.com/registry/packages/xenorchestra/


      Release v2.0.0

      This release aims to ensure that the provider is up to date with the latest version of the pulumi-terraform-bridge. This will make it easier to follow new Pulumi versions.

      The underlying Terraform provider XenOrchestra is updated to version 0.31.1, which fixes:

      • Issues with blocked operations when creating VMs. #344
      • A problem where the destroy_cloud_config_vdi_after_boot setting was ignored when the VM wasn't running. #345

      As the major version number suggests, this release introduces changes that break compatibility with previous versions (mostly deprecated functions and resources that have been removed).

      Find the release in the Pulumi registry: https://www.pulumi.com/registry/packages/xenorchestra/

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.0.0


      Release v1.5.2

      The provider is now available on the Pulumi official Registry 😎

      https://www.pulumi.com/registry/packages/xenorchestra/

      We added example for Yaml in the documentation.

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.2


      Release v1.5.0

      The Pulumi Xen Orchestra provider is now available with Dotnet SDK!

      • JavaScript/TypeScript: @vates/pulumi-xenorchestra
      • Python: pulumi-xenorchestra
      • Go: github.com/vatesfr/pulumi-xenorchestra/sdk
      • .NET: Pulumi.Xenorchestra

      What's Changed

      • Feat: Add dotnet support
      • Add docs for Dotnet SDK and unify examples

      The Pulumi schema doesn't support u64 (or i64), so we convert to a float64, which should get us at least 2^52 bits of precision while minimizing the breaking change (int -> float) for our users.

      List of properties to be updated from "integer" to "number"/float64:

      Resources

      • "xenorchestra:index/vm:Vm":
        • 🟡 inputs: "memoryMax" type changed from "integer" to "number"
        • 🟡 properties: "memoryMax" type changed from "integer" to "number"

      Types

      • 🟡 "xenorchestra:index/VmDisk:VmDisk": properties: "size" type changed from "integer" to "number"

      How to migrate Golang stack code

      Replace pulumi.Int(...) with pulumi.Float64(...)

      Other SDKs do not seem to be affected by the changes.

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.0


      What's next?

      Upgrade the Pulumi SDK and others libraries to the latest version and provider Java sdk.

      If you are using Pulumi Xen Orchestra, please share your experiences and needs with us 🙂

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: XO and terraform

      @wezke you are welcome. let us know if you find the explanation for the problem with the template 🙂

      posted in Infrastructure as Code
      CyrilleC
      Cyrille

    Latest posts made by Cyrille

    • RE: DevOps Megathread: what you need and how we can help!

      Xen Orchestra Cloud Controller Manager in development 🚀

      Hello everyone 👋

      We publish a development version of a Xen Orchestra Cloud Controller Manager!

      It support the controllers cloud-node and cloud-node-lifecycle and add labels to your Kubernetes nodes hosted on Xen Orchestra VMs.

      apiVersion: v1
      kind: Node
      metadata:
        labels:
          # Type generated base on CPU and RAM
          node.kubernetes.io/instance-type: 2VCPU-1GB
          # Xen Orchestra Pool ID of the node VM Host
          topology.kubernetes.io/region: 3679fe1a-d058-4055-b800-d30e1bd2af48
          # Xen Orchestra ID of the node VM Host
          topology.kubernetes.io/zone: 3d6764fe-dc88-42bf-9147-c87d54a73f21
          # Additional labels based on Xen Orchestra data (beta)
          topology.k8s.xenorchestra/host_id: 3d6764fe-dc88-42bf-9147-c87d54a73f21
          topology.k8s.xenorchestra/pool_id: 3679fe1a-d058-4055-b800-d30e1bd2af48
          vm.k8s.xenorchestra/name_label: cgn-microk8s-recipe---Control-Plane
          ...
        name: worker-1
      spec:
        ...
        # providerID - magic string:
        #   xeorchestra://{Pool ID}/{VM ID}
        providerID: xeorchestra://3679fe1a-d058-4055-b800-d30e1bd2af48/8f0d32f8-3ce5-487f-9793-431bab66c115
      

      For now, we have only tested the provider with Microk8s.

      What's next?

      We will test the CCM with other types of Kubernetes clusters and work on fixing known issues.
      Also a modification of the XOA Hub recipe will come to include the CCM.
      More label will be added (Pool Name, VM Name, etc.).

      Feedback is welcome!

      You can install and test the XO CCM, and provide feedback to help improve and speed up the release of the first stable version. This is greatly appreciated 🙂

      ➡ The XO CCM repository
      ➡ Installation doc

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: Pulumi Xen Orchestra - News

      @john.c You can already use Yaml with the Xen Orchestra Pulumi provider 🙂

      name: test-yaml
      description: A minimal Pulumi YAML program
      runtime: yaml
      config: { 'pulumi:tags': { value: { 'pulumi:template': yaml } } }
      variables:
        poolId:
          fn::invoke:
            function: xenorchestra:getXoaPool
            arguments:
              nameLabel: "Lab"
            return: id
        netId:
          fn::invoke:
            function: xenorchestra:getXoaNetwork
            arguments:
              nameLabel: "Lab"
              poolId: ${poolId}
            return: id
        localStorageId:
          fn::invoke:
            function: xenorchestra:getXoaStorageRepository
            arguments:
              nameLabel: "Local Storage"
            return: id
        templateId:
          fn::invoke:
            function: xenorchestra:getXoaTemplate
            arguments:
              nameLabel: "Debian 12 Cloud-init (Hub)"
              poolId: ${poolId}
            return: id
      resources:
        vm:
          type: xenorchestra:Vm
          properties:
            nameLabel: "Pulumi yaml test"
            nameDescription: "test with pulumi yaml provider"
            cpus: 1
            memoryMax: 1073733632
            template: ${templateId}
            tags:
              - pulumi
            cloudConfig: |
              #cloud-config
              ssh_authorized_keys:
                - ***
            disks:
              - nameLabel: "OS"
                size: 8294967296
                srId: ${localStorageId}
            networks:
              - networkId: ${netId}
            powerState: "Running"
      
      outputs:
        poolId: ${poolId}
        vmIp: ${vm.ipv4Addresses}
      

      Tell us if it ins't working

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: DevOps Megathread: what you need and how we can help!

      Hello there,

      We release a new version Terraform provider with improvements of the VM disk lifecycle!

      Now you can expand a VM disk with Terraform without data loss.

      Read the release note: https://github.com/vatesfr/terraform-provider-xenorchestra/releases/tag/v0.32.0

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: Automating VM configurations after mass VMware imports

      Hi,
      If you're familiar with Golang, I'm pretty sure the xenorchestra-go-sdk might be able to do what you want (except the network configuration within Windows, but for this you can use Ansible with Xen Orchestra Inventory plugin: read the blogpost.)

      The Powershell module is quite new, and we are working on improving it. Please let us know what you are expecting from it 🙂

      posted in XCP-ng
      CyrilleC
      Cyrille
    • RE: DevOps Megathread: what you need and how we can help!

      Pulumi Xen Orchestra Provider - Release v2.0.0

      We released a new version of the Pulumi Xen Orchestra provider.

      You can fail more information about the release here : https://xcp-ng.org/forum/post/92858

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: Pulumi Xen Orchestra - News

      Release v2.0.0

      This release aims to ensure that the provider is up to date with the latest version of the pulumi-terraform-bridge. This will make it easier to follow new Pulumi versions.

      The underlying Terraform provider XenOrchestra is updated to version 0.31.1, which fixes:

      • Issues with blocked operations when creating VMs. #344
      • A problem where the destroy_cloud_config_vdi_after_boot setting was ignored when the VM wasn't running. #345

      As the major version number suggests, this release introduces changes that break compatibility with previous versions (mostly deprecated functions and resources that have been removed).

      Find the release in the Pulumi registry: https://www.pulumi.com/registry/packages/xenorchestra/

      Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.0.0

      posted in Infrastructure as Code
      CyrilleC
      Cyrille
    • RE: How to deploy the new k8s on latest XOA 5.106?

      These two bugs have been fixed in the latest release 🙂

      posted in Advanced features
      CyrilleC
      Cyrille
    • RE: How to deploy the new k8s on latest XOA 5.106?

      @ferrao Yes it is. At the end the task disappears unless there is an error / failure.

      posted in Advanced features
      CyrilleC
      Cyrille
    • RE: How to deploy the new k8s on latest XOA 5.106?

      @ferrao open the VMs list (Home>VMs), click on "Filters" near the search bar, and then click "Save...", in the popup dialog enter a name for the filter and click "OK".

      Snapshot_2025-05-05_16-41-58.png

      This should be enough to workaround the 2nd bug that happened at the end (that prevent to save the tag that is added to the clusters VMs)

      posted in Advanced features
      CyrilleC
      Cyrille
    • RE: How to deploy the new k8s on latest XOA 5.106?

      @ferrao Thank you for the logs, with it I was able to reproduce the bug.

      It's at the end of the recipe, when the tag associated with the k8s cluster is saved in the user's custom filters. This has no effect on the cluster creation, as this is done at the end when everything else is done.

      To avoid this bug in future runs, you can save a custom filter from the search field in the VMs list.

      About the first error you encounter, it's related to the template used to create the VM, which seems not available at the VM creation... I'm working on this to understand why.

      posted in Advanced features
      CyrilleC
      Cyrille