From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id EF9E6706EB for ; Thu, 24 Jun 2021 15:35:36 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id E414DC2B1 for ; Thu, 24 Jun 2021 15:35:01 +0200 (CEST) Received: from kvmformation3.odiso.net (globalOdiso.M6Lille.odiso.net [89.248.211.242]) by firstgate.proxmox.com (Proxmox) with ESMTP id 1B3BAC26B for ; Thu, 24 Jun 2021 15:34:43 +0200 (CEST) Received: by kvmformation3.odiso.net (Postfix, from userid 0) id 61834DDD78; Thu, 24 Jun 2021 15:34:26 +0200 (CEST) From: Alexandre Derumier To: pve-devel@lists.proxmox.com Date: Thu, 24 Jun 2021 15:34:18 +0200 Message-Id: <20210624133425.3624704-1-aderumier@odiso.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 1.446 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% HEADER_FROM_DIFFERENT_DOMAINS 0.25 From and EnvelopeFrom 2nd level mail domains are different KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment KHOP_HELO_FCRDNS 0.399 Relay HELO differs from its IP's reverse DNS NO_DNS_FOR_FROM 0.001 Envelope sender has no MX or A DNS records T_SPF_HELO_TEMPERROR 0.01 SPF: test of HELO record failed (temperror) T_SPF_TEMPERROR 0.01 SPF: test of record failed (temperror) Subject: [pve-devel] [PATCH qemu-server 0/7] RFC: sdn: add ipam support X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jun 2021 13:35:37 -0000 Hi, This is an RFC to implement ipam support on qemu-server. This don't change the cloud-init current working. As I need to manage pending ip registration configuration, to follow the pending netX interfaces. I have added ip,ip6,gw,gw6 field to netX interfaces options. (same than LXC). (as current ipconfigX pending, is pending cloudinit generation) so the workflow is: --> update netX=...,ip=.... --> ip is registered as pending --> hotplug/coldplug succesful ---> pending ip replace current conf oldip ---->the ip set in cloudinit pending ipconfigX ------> cloudinit regeneration ---> ipconfigX is remove from pending As documentation said than ipconfigX is for cloudinit config, I think it could be ok. Some users could use the sdn features without cloudinit(allow some subnets only, and autogenerate firewall ipfilter). Also, for ipam, I need bridge && mac from the netX, and ip need to follow pending states of the nic. The main code is the same than the lxc serie, and can be shared in a common module https://lists.proxmox.com/pipermail/pve-devel/2021-May/048160.html (I don't have implemented yet snasphot rollback, vm restore, vm destroy,..) Alexandre Derumier (7): add ipam module add print_ipconfig add ip options to netdescr add vmconfig_update_net_ip on device hotplug add vmconfig_delete_net_ip on device unplug api2: add update ip support api2: add revert ip support PVE/API2/Qemu.pm | 21 ++++++ PVE/QemuServer.pm | 93 +++++++++++++++++++++++ PVE/QemuServer/Ipam.pm | 158 ++++++++++++++++++++++++++++++++++++++++ PVE/QemuServer/Makefile | 1 + 4 files changed, 273 insertions(+) create mode 100644 PVE/QemuServer/Ipam.pm -- 2.20.1