kubekey icon indicating copy to clipboard operation
kubekey copied to clipboard

Hostname changes

Open lbrigman124 opened this issue 1 year ago • 1 comments

What is version of KubeKey has the issue?

v3.1.1

What is your os environment?

Rocky Linux 9

KubeKey config file

apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
  name: rockygsm-1
spec:
  hosts:
  - {name: hmdc-10 , address: 10.109.182.10, internalAddress: 10.109.182.10, user: user , password: abc1234 }
  - {name: hmdc-11 , address: 10.109.182.11, internalAddress: 10.109.182.11, user: user , password: abc1234 }
  - {name: hmdc-12 , address: 10.109.182.12, internalAddress: 10.109.182.12, user: user , password: abc1234 }
  roleGroups:
    etcd:
    - hmdc-10
    - hmdc-11
    - hmdc-12
    control-plane:
    - hmdc-10
    - hmdc-11
    - hmdc-12
    worker:
    - hmdc-10
    - hmdc-11
    - hmdc-12

A clear and concise description of what happend.

If the nodes are not actually named what is provided because the address is multi-homed but the provided address is the DNS name of the hosts for the provided IP. Then the hostname gets changed.

This is problematic in that the hostname is tied to Active Directories and other authentication processes.

Changing the hostname is in lot of cases a security violation and will prevent the use of the tool requiring a wholesale rewrite to use a different installer

Relevant log output

sudo -E /bin/bash -c "hostnamectl set-hostname hmdc-10 && sed -i '/^127.0.1.1/s/.*/127.0.1.1      hmdc-10/g' /etc/hosts"
sudo -E /bin/bash -c "hostnamectl set-hostname hmdc-11 && sed -i '/^127.0.1.1/s/.*/127.0.1.1      hmdc-11/g' /etc/hosts"
sudo -E /bin/bash -c "hostnamectl set-hostname hmdc-12 && sed -i '/^127.0.1.1/s/.*/127.0.1.1      hmdc-12/g' /etc/hosts"

Additional information

If the FQDN is given in the config file then the short hostname is changed to be the FQDN.

lbrigman124 avatar Dec 10 '24 16:12 lbrigman124

we will do it in kubekey 4.x: https://github.com/kubesphere/kubekey/blob/ccca0edd811c689d8ee9f43e61e2a79b639d9684/builtin/core/roles/init/init-os/tasks/main.yaml#L13-L19 if use kk create cluster --set set_hostname=false it will not change hostname.

redscholar avatar Mar 18 '25 04:03 redscholar