kubeadm init cannot be achieved via config.ymal in version 1.13.3

2/27/2019

I am tring to configure highly available cluster with 3 master nodes.I follow https://kazuhisya.netlify.com/2018/02/08/how-to-install-k8s-on-el7/ tutorial.

kubeadm version.

kubeadm version: &version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.3", GitCommit:"721bfa751924da8d1680787490c54b9179b1fed0", GitTreeState:"clean", BuildDate:"2019-02-01T20:05:53Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

config file

apiVersion: kubeadm.k8s.io/v1alpha3
kind: MasterConfiguration
api:
  advertiseAddress: 10.1.1.20
etcd:
  endpoints:
  - https://${PEER_HOST1IP}:2379
  - https://${PEER_HOST2IP}:2379
  - https://${PEER_HOST3IP}:2379
  caFile: /etc/kubernetes/pki/etcd/ca.pem
  certFile: /etc/kubernetes/pki/etcd/client.pem
  keyFile: /etc/kubernetes/pki/etcd/client-key.pem
networking:
  podSubnet: 10.244.0.0/16
apiServerCertSANs:
- 10.1.1.20
apiServerExtraArgs:
  apiserver-count: "3"

when I try to run below command,kubeadm init fail with error.

command.

kubeadm init --config=config.yaml

error.

W0227 18:22:25.467977    6564 strict.go:47] unknown configuration schema.GroupVersionKind{Group:"kubeadm.k8s.io", Version:"v1alpha3", Kind:"MasterConfiguration"} for scheme definitions in "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme/scheme.go:31" and "k8s.io/kubernetes/cmd/kubeadm/app/componentconfigs/scheme.go:28"

I just need to init kubedeam by config.ymal file. I don't know what goes wron. Could not found proper answer.

Your help will be highly appreciated.

-- Kasun Palihakkara
docker
kubeadm
kubectl
kubelet
kubernetes

1 Answer

2/27/2019

From the Kubernetes docs:

Kubernetes 1.11 and later, the default configuration can be printed out using the kubeadm config print command. It is recommended that you migrate your old v1alpha3 configuration to v1beta1 using the kubeadm config migrate command, because v1alpha3 will be removed in Kubernetes 1.14.

From Kubernetes ver 1.13 onwards v1alpha3 has been deprecated. You need to change the apiVersion to v1beta1

kubeadm config migrate --old-config config.yaml
-- Manish Dash
Source: StackOverflow