/srv/irclogs.ubuntu.com/2020/09/09/#cloud-init.txt

meenahow are cloud sources documented?11:07
meenai was gonna complain in this pr that https://github.com/canonical/cloud-init/pull/522/files this is a little light on documentation, but, they all are https://github.com/canonical/cloud-init/blob/master/cloudinit/sources/DataSourceEc2.py11:08
abscHi, I have a problem with booting a CentOS 8 machine converted to cloudlinux with cloudinit.12:48
abscIt fails configuring the network cards12:49
abscTo note: the same settings with a plain CentOS 8, works just finne12:51
absc*fine12:51
meenaabsc: how, exactly, does it fail? do you have a log of a run?13:13
absc2020-09-09 12:57:43,608 - stages.py[ERROR]: Unable to render networking.  Network config is likely broken: No available network renderers found.  Searched through list: ['eni', 'sysconfig', 'netplan']13:14
abscIf you want the whole log, just PM me13:14
abscThis is the only error in the run13:14
abscmeena: would you prefer the whole log with, also, debugging enabled?13:16
meenayes. and also, if you pm it me, it's not gonna be useful for anyone else here. so please use a pastebin service13:23
meenain general, I'm just here to ask you leading questions, until you can either help yourself, or the people with the @ in front of their names wake up13:24
meenaabsc: unless your questions are BSD related, then I'm usually your girl13:24
abscOk, don't worry :D13:25
abschttps://pastebin.com/GC0naTY413:25
abscmeena: here we go the logs13:25
meenaWhere's /var/log/cloud-init-output.log ?13:27
abscJust a moment13:29
abscmeena: https://pastebin.com/6Pmvt7sg13:33
abscThe cloud-init-output.log13:33
meenaError, this is a private paste. If this is your private paste, please login to Pastebin first.13:34
abscI'm an idiot13:34
meenatechnology hard,13:35
abschttps://pastebin.com/BCqLC2Zn13:35
abscmeena: this should be correct13:35
meenathat's fun13:37
abscI think the output have too much noise, due to puppet being executed by cloud-init13:38
meenaso puppet is absolutely unconcerned about the network not being up13:38
meenabut the rhn Plugin isn't happy13:38
abscThe VM is derived from a template. Is it possible that the old ips are kept before being changed?13:39
abscBTE, NetworkManager is installed on the machine13:41
absc*BTW13:41
meenaabsc: can you find what the network config looks like that this VM receives, and post that?13:47
meenaalso, which version of cloud-init does your *not* CloudLinux VM have?13:48
abscThe NOT CloudLinux Vm use cloud-init 19.4.113:52
meenaso, pretty much the same13:54
abscmeena: https://pastebin.com/iU5n0jb213:55
abscYes, it's the same13:56
abscThe paste bin is what the VM have right now13:56
abscThe iPS are the ones used to build the template machine13:57
abscBut, the server ip's are in the same subnet13:57
abscAnd assigned to the same network interfaces13:58
meenawho or what is assigning the IPs?14:09
abscThe IPs are assigned by RHEV/Ovirt14:10
abscIn our casa, with the ENI protocol14:11
absc*case14:11
meenawhy does the template have an IP? shouldn't it cleanup itself before creating an image?14:14
abscTo be fair, we didn't bother removing those before making the template and the sealing doesn't remove it. We can try that, though.14:15
abscOtherwise, it worked anyway14:15
abscBut, let me tell my collegue to make an attempt14:15
abscmeena: We tried to remove all the IPs from the template before booting a cloned machine. It doesn't work15:41
abscAlso, the cloud-init log show the same things as the pastebin I sent you15:41
abscBTW, we are using the stock cloud-init configuration as coming from the CentOS 8 repositories.15:43
Odd_Blokeabsc: I (and perhaps others) missed the start of this conversation because of the Freenode downtime/netsplit which kicked me out of the channel until I logged in this morning; could you restate the problem you're having?16:12
Odd_Bloke(And re-paste things, perhaps: all those pastebin links are 404ing, I think.)16:12
abscOdd_Bloke: I'm going to give you a new paster bin16:15
abscOdd_bloke: https://pastebin.com/tiufNMwH16:17
abscHere is the cloud-init-output.log file16:17
abscTL;DR we use cloud-init to start and configure our hosting servers16:17
abscThe servers are in an Ovirt/RHEV environment16:18
abscThe OS is CentOS 8, converted to CloudLinux16:18
abscIf we boot a plain CentOS 8 machine, everything is fine16:19
abscCloud-init is able to properly configure the IP addresses we specify in the VM definition16:19
abscAnd assign it to eth0 and eth116:19
abscBut if we try to boot a CloudLinux OS machine (essentially, CentOS 8 + a custom kernel and some tooling)16:20
abscCloud-init fails with an error as you see in the pastebin16:20
abscComplaining that: 2020-09-09 12:35:04,855 - stages.py[ERROR]: Unable to render networking. Network config is likely broken: No available network renderers found. Searched through list: ['eni', 'sysconfig', 'netplan']16:21
abscWe tried varois things, but without luck16:21
abscOdd_Bloke: tel me if you need additional informations16:22
Odd_Blokeabsc: Could I get cloud-init.log too, please?16:22
abscOdd_Bloke: https://pastebin.com/HCfBuVvV16:36
abscHere is the whole log16:37
Odd_Blokeabsc: Are you expecting to render ENI or sysconfig within the instance?17:37
meenaOdd_Bloke: their template has ENI…stuff.17:39
Odd_Blokemeena: I don't know what a template is in this context. :)17:40
meenamachine template17:40
Odd_BlokeAs in an image?17:40
Odd_Bloke(A disk image, I mean.)17:41
Odd_Blokemeena: It's worth noting that the log implies that cloud-init fetched ENI from the metadata service; this is normal in OpenStack/ConfigDrive, but does not imply that the running system will be using ENI.17:42
meena16:10 <absc> The IPs are assigned by RHEV/Ovirt17:43
meena16:11 <absc> In our casa, with the ENI protocol17:43
Odd_BlokeRight, that's what I mean.17:43
Odd_BlokeRHEV/Ovirt is providing the network config in ENI format, but it does not necessarily mean that the system uses ENI.17:43
meenathey also have NetworkManager installed17:43
meenaaye17:43
Odd_Blokecloud-init will parse the provided ENI and then render the appropriate configuration for the system.17:43
Odd_BlokeThe problem here is that it can't detect which network renderer is appropriate.17:44
meenaOdd_Bloke: how do you tell that? and wouldn't it be nice if it was easier to tell that from the log?17:45
Odd_Bloke2020-09-09 16:33:01,851 - stages.py[ERROR]: Unable to render networking. Network config is likely broken: No available network renderers found. Searched through list: ['eni', 'sysconfig', 'netplan']17:46
Odd_BlokeDoesn't seem like a horrible log message to me.17:46
meenaoy17:47
Odd_BlokeNot sure that "Network config is likely broken" is right, at least not in this situation.17:47
Odd_BlokeIf I had to guess (wildly), I would say that /etc/network/interfaces has been removed (perhaps in an attempt to avoid the network config continuing to apply on launched instances?) which means that cloud-init doesn't detect ENI as an option on this system: https://github.com/canonical/cloud-init/blob/master/cloudinit/net/eni.py#L542-L55017:49
Odd_Blokeabsc: If you're expecting to render ENI in the system, then https://github.com/canonical/cloud-init/blob/master/cloudinit/net/eni.py#L542-L552 needs to return True.  If you're expecting sysconfig, then https://github.com/canonical/cloud-init/blob/master/cloudinit/net/sysconfig.py#L899-L903 needs to return True.17:50
Odd_Blokeabsc: Hopefully that will give you an idea of what you're doing to the template that is causing cloud-init to fail. :)17:53
rharperOdd_Bloke: absc: several thoughts;  1) the in-image network config does not provide any mac address; so there's no way it will ever configure interfaces;    2) this is on RHEL, and you need to have sysconfig support enabled;  cloud-init doesn't render to NetworkManager directly  3) for RHEL8 with NM (and the requires sysconfig package installed) NM will read rendered sysconfig files from cloud-init, however since (1) is bad (no mac address for your17:55
rharperinterfaces  even after fixing the image, you'll need to fix 1 as well;17:55
rharperabsc: for RHEL8  I highly suggest looking at the packages installed in the Centos8 Cloud image;17:55
rharperhttps://cloud.centos.org/centos/8/x86_64/images/17:56
Odd_Blokerharper: I thought this was already on Centos 8?17:57
rharperlikely not proper cloud image17:57
rharperotherwise sysconfig would be detected17:57
rharperI've booked those from Centos8 I just linked to and it works fine;  so something's not right w.r.t the packages17:57
Odd_BlokeYeah, I think they're building their own images for "CloudLinux"?17:57
rharperwasn't there some discussion of making a template?17:57
rharperyeah17:57
meenathe word template has become meaningless over the past couple hours17:59
meenabtw, minimal mentioned yesterday that cloud-utils provides tooling support for NoCloud, but if that's this thing: https://pypi.org/project/cloud-utils/ then that's not even almost true.18:02
smoser"the word template has become meaningless over the past couple hours"18:13
* smoser agrees. but i don't think that is new in the last couple hours.18:14
Odd_Blokemeena: It's the cloud-utils Ubuntu package whose upstream is https://github.com/canonical/cloud-utils/18:26
Odd_Bloke(As you can see, we don't even have a setup.py there, so I don't know how you would get it on other distros/OSes.)18:28
abscOdd_Bloke: Sorry, I was away for an emergency19:54
abscAs you (correctly) pointed out, we are talking about a pre-made image here19:57
abscIf I remember correctly, we started, with the base system, from a CentOS 8 cloud image19:59
abscAfter that, with puppet, we install and configure a bunch of things19:59
abscIn one of those steps, the operating system is converted from CentOS 8 to CloudLinux 820:00
absc(CloudLinux 8 being nothing more than a customised CentOS 8)20:00
abscProbably, from what all of you told me, I'm missing some packages. I need to read all the past conversation and do some checks tomorrow morning20:01
absc(Sorry guys, I'm on the other side of the world) :D20:01
Odd_Blokeabsc: No problem, let us know how it goes!  (And hopefully Freenode will let me read what you said during my night this time around. :p)20:10
abscThank you again!20:11
meenaOdd_Bloke, this thing seems awfully… bashy, https://github.com/canonical/cloud-utils/blob/master/bin/cloud-localds and Where's the remoteds equivalent20:42
Odd_Blokemeena: What would a remoteds equivalent do?20:49
meenai have literally no idea20:49
meenaprobably serve three files, lol20:50
Odd_BlokeAh, then you can get it on Ubuntu with `apt install nginx`. ;)20:50
Odd_BlokeOr it comes out of the box with `python3 -m http.server`, if you really want. :p20:51
meenaOdd_Bloke, I'm actually unable to install nginx. forbidden… for reasons21:18

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!