tectonic-installer
tectonic-installer copied to clipboard
tectonic_iscsi_enabled and tectonic_networking don't work on metal in 1.8.7
What keywords did you search in tectonic-installer issues before filing this one?
iscsi, tectonic_networking, canal
I found duplicates, but they were closed as resolved... and I don't think they are resolved.
Is this a BUG REPORT or FEATURE REQUEST?
Bug
Versions
1.8.7-tectonic.2
Tectonic version (release or commit hash):
Current latest release: https://github.com/coreos/tectonic-installer/releases/tag/1.8.7-tectonic.2
Terraform version (terraform version
):
Terraform v0.10.7
I'm running the terraform bundled into the install
Platform (aws|azure|openstack|metal|vmware):
metal
What happened?
I've done numerous installs attempting to use the documented terraform variables:
tectonic_networking: "canal" tectonic_iscsi_enabled: true (or "true").
But they are completely ignored by the current install process.
tectonic_networking was fixed on master (1.8.4?), but never picked up in 1.8.7: see #2697
I've tested the master branch install, and the tectonic_networking variable works again, but this fix never made it into 1.8.7. I've verified by manually changing the default value in config.tf, and only then will "Canal" and network policy install on platforms/metal 1.8.7.
What you expected to happen?
I expect the variables to work as advertised. I've tried numerous approaches, using both "true" and : true.
How to reproduce it (as minimally and precisely as possible)?
Perform a metal install of 1.8.6-tectonic.2 and specify the options... in my experience they don't work.
Anything else we need to know?
Nope, should be a simple fix unless it is pebkac.
References
see #2697 for tectonic_networking see #2753 for the iSCSI issue.
Funny they are both closed.
Other Info
I've attached the relevant bits of my TF file used when it doesn't work:
(maybe there is some obscure way these need to be defined?)
{
...
"tectonic_iscsi_enabled": true,
"tectonic_networking": "canal"
}
Even with the tectonic_iscsi_enabled flag manually overridden in the terraform platform configuration, ISCSI is not fully enabled. While the iscsid daemon does start when the flag is set to true, the kubelet.service unit file does not contain the necessary flags to enable POD mounting of iSCSI volumes:
The following is missing and must be added manually:
Environment="RKT_RUN_ARGS=--volume iscsiadm,kind=host,source=/usr/sbin/iscsiadm \
--mount volume=iscsiadm,target=/usr/sbin/iscsiadm \
Once this is added, PODS can directly mount iSCSI volumes... but it is not provisioned as part of the tectonic_iscsi_enabled flag... which seems odd.
Updated to 1.8.9-tectonic.1 and it broke my iSCSI... and I had to re-add the above mentioned settings to the kubelet.service.
22 days is a long time to ignore this bug. Any devs left working at Tectonic? Perhaps the Redhat merger revealed that CoreOS and Tectonic will be canibalized in the name of OpenShift such that these bugs are no longer anyone's concern?
That would be tragic, but not unexpected. However, if Tectonic has a future, and I hope it does, it would be nice if this simple annoyance could be fixed. It is likely a very simple fix to the underused metal platform.
@seanhig Apologies for the long delay. I agree that this is should be pretty easy fix. I will create an internal issue for review by the tectonic-installer team.
#2022 was PR from a long time ago directly around this before the tectonic_iscsi_enabled
flag even existed