tectonic-installer icon indicating copy to clipboard operation
tectonic-installer copied to clipboard

tectonic_iscsi_enabled and tectonic_networking don't work on metal in 1.8.7

Open seanhig opened this issue 6 years ago • 4 comments

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"
}

seanhig avatar Mar 05 '18 19:03 seanhig

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.

seanhig avatar Mar 06 '18 18:03 seanhig

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 avatar Mar 27 '18 19:03 seanhig

@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.

kbrwn avatar Mar 28 '18 16:03 kbrwn

#2022 was PR from a long time ago directly around this before the tectonic_iscsi_enabled flag even existed

cehoffman avatar May 11 '18 04:05 cehoffman