jetlag icon indicating copy to clipboard operation
jetlag copied to clipboard

Add a way to define user/password to log in to cluster nodes via IPMI

Open jmencak opened this issue 1 year ago • 0 comments

This is a feature request. When facing network issues, it is useful to log in to cluster nodes via IPMI to debug. This should ideally be done on two levels:

  1. Prior to installation by modifying the installation media to debug installation failures.
  2. Post-installation by creating MachineConfig manifests.

I believe the first could be achieved by using the quay.io/coreos/coreos-installer:release. Here is an example how to do this.

The latter could be done by users themselves by supplying a MachineConfig manifest. The following will work on SNO, for other clusters another label targetting all cluster nodes would have to be used.

apiVersion: machineconfiguration.openshift.io/v1
kind: MachineConfig
metadata:
  labels:
    machineconfiguration.openshift.io/role: master
  name: 40-password-core
spec:
  config:
    ignition:
      version: 3.2.0
    passwd:
      users:
      - name: core
        passwordHash: <password-hash-removed>

An aside: applying this manifest on recent OCP versions will not even reboot the cluster node.

I believe this could be done in one of two ways:

  1. By supplying ignition files to be embedded into the installation media and adding MachineConfig manifests from a manifests directory the way it is done by the bootstrap-in-place-poc.
  2. By letting users to configure a user/password combination.

The former approach is more flexible and will solve many other issues/requests users of this tooling have, the latter is probably more novice user friendly.

Perhaps we could start by copying the approach taken by bootstrap-in-place-poc and then add the user/password option as an abstraction on top of it.

Thoughts?

jmencak avatar Jun 08 '23 12:06 jmencak