diff --git a/cmd/kubeadm/app/cmd/upgrade/testdata/diff_master_config.yaml b/cmd/kubeadm/app/cmd/upgrade/testdata/diff_master_config.yaml index 7bfbed6015a..b5e5611c0fe 100644 --- a/cmd/kubeadm/app/cmd/upgrade/testdata/diff_master_config.yaml +++ b/cmd/kubeadm/app/cmd/upgrade/testdata/diff_master_config.yaml @@ -1,3 +1,3 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 +apiVersion: kubeadm.k8s.io/v1alpha2 kind: MasterConfiguration kubernetesVersion: 1.11.0 diff --git a/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1.yaml b/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1.yaml deleted file mode 100644 index 196e4eca886..00000000000 --- a/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1.yaml +++ /dev/null @@ -1,150 +0,0 @@ -api: - advertiseAddress: 192.168.2.2 - bindPort: 6443 - controlPlaneEndpoint: "" -apiVersion: kubeadm.k8s.io/v1alpha1 -auditPolicy: - logDir: /var/log/kubernetes/audit - logMaxAge: 2 - path: "" -authorizationModes: -- Node -- RBAC -- Webhook -certificatesDir: /etc/kubernetes/pki -cloudProvider: "" -clusterName: kubernetes -criSocket: /var/run/dockershim.sock -etcd: - caFile: "" - certFile: "" - dataDir: /var/lib/etcd - endpoints: null - image: "" - keyFile: "" -imageRepository: k8s.gcr.io -kind: MasterConfiguration -kubeProxy: - config: - bindAddress: 0.0.0.0 - clientConnection: - acceptContentTypes: "" - burst: 10 - contentType: application/vnd.kubernetes.protobuf - kubeconfig: /var/lib/kube-proxy/kubeconfig.conf - qps: 5 - clusterCIDR: "" - configSyncPeriod: 15m0s - conntrack: - max: null - maxPerCore: 32768 - min: 131072 - tcpCloseWaitTimeout: 1h0m0s - tcpEstablishedTimeout: 24h0m0s - enableProfiling: false - featureGates: - ServiceNodeExclusion: true - SupportIPVSProxyMode: true - healthzBindAddress: 0.0.0.0:10256 - hostnameOverride: "" - iptables: - masqueradeAll: false - masqueradeBit: 14 - minSyncPeriod: 0s - syncPeriod: 30s - ipvs: - excludeCIDRs: null - minSyncPeriod: 0s - scheduler: "" - syncPeriod: 30s - metricsBindAddress: 127.0.0.1:10249 - mode: "" - nodePortAddresses: null - oomScoreAdj: -999 - portRange: "" - resourceContainer: /kube-proxy - udpIdleTimeout: 250ms -kubeletConfiguration: - baseConfig: - address: 0.0.0.0 - authentication: - anonymous: - enabled: false - webhook: - cacheTTL: 2m0s - enabled: true - x509: - clientCAFile: /etc/kubernetes/pki/ca.crt - authorization: - mode: Webhook - webhook: - cacheAuthorizedTTL: 5m0s - cacheUnauthorizedTTL: 30s - cgroupDriver: cgroupfs - cgroupsPerQOS: true - clusterDNS: - - 10.96.0.10 - clusterDomain: cluster.local - configMapAndSecretChangeDetectionStrategy: Watch - containerLogMaxFiles: 5 - containerLogMaxSize: 10Mi - contentType: application/vnd.kubernetes.protobuf - cpuCFSQuota: true - cpuManagerPolicy: none - cpuManagerReconcilePeriod: 10s - enableControllerAttachDetach: true - enableDebuggingHandlers: true - enforceNodeAllocatable: - - pods - eventBurst: 10 - eventRecordQPS: 5 - evictionHard: - imagefs.available: 15% - memory.available: 100Mi - nodefs.available: 10% - nodefs.inodesFree: 5% - evictionPressureTransitionPeriod: 5m0s - failSwapOn: true - fileCheckFrequency: 20s - hairpinMode: promiscuous-bridge - healthzBindAddress: 127.0.0.1 - healthzPort: 10248 - httpCheckFrequency: 20s - imageGCHighThresholdPercent: 85 - imageGCLowThresholdPercent: 80 - imageMinimumGCAge: 2m0s - iptablesDropBit: 15 - iptablesMasqueradeBit: 14 - kubeAPIBurst: 10 - kubeAPIQPS: 5 - makeIPTablesUtilChains: true - maxOpenFiles: 1000000 - maxPods: 110 - nodeStatusUpdateFrequency: 10s - oomScoreAdj: -999 - podPidsLimit: -1 - port: 10250 - registryBurst: 10 - registryPullQPS: 5 - resolvConf: /etc/resolv.conf - runtimeRequestTimeout: 2m0s - serializeImagePulls: true - staticPodPath: /etc/kubernetes/manifests - streamingConnectionIdleTimeout: 4h0m0s - syncFrequency: 1m0s - volumeStatsAggPeriod: 1m0s -kubernetesVersion: v1.10.2 -networking: - dnsDomain: cluster.local - podSubnet: "" - serviceSubnet: 10.96.0.0/12 -nodeName: master-1 -privilegedPods: false -token: s73ybu.6tw6wnqgp5z0wb77 -tokenGroups: -- system:bootstrappers:kubeadm:default-node-token -tokenTTL: 24h0m0s -tokenUsages: -- signing -- authentication -unifiedControlPlaneImage: "" diff --git a/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1_without_TypeMeta.yaml b/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1_without_TypeMeta.yaml deleted file mode 100644 index c68a01aaf78..00000000000 --- a/cmd/kubeadm/app/util/config/testdata/conversion/master/v1alpha1_without_TypeMeta.yaml +++ /dev/null @@ -1,147 +0,0 @@ -# This file don't have TypeMeta set. kubeadm should then unmarshal it as a apiVersion=kubeadm.k8s.io/v1alpha1 and kind=MasterConfiguration -api: - advertiseAddress: 192.168.2.2 - bindPort: 6443 - controlPlaneEndpoint: "" -auditPolicy: - logDir: /var/log/kubernetes/audit - logMaxAge: 2 - path: "" -authorizationModes: -- Node -- RBAC -- Webhook -certificatesDir: /etc/kubernetes/pki -cloudProvider: "" -clusterName: kubernetes -criSocket: /var/run/dockershim.sock -etcd: - caFile: "" - certFile: "" - dataDir: /var/lib/etcd - endpoints: null - image: "" - keyFile: "" -imageRepository: k8s.gcr.io -kubeProxy: - config: - bindAddress: 0.0.0.0 - clientConnection: - acceptContentTypes: "" - burst: 10 - contentType: application/vnd.kubernetes.protobuf - kubeconfig: /var/lib/kube-proxy/kubeconfig.conf - qps: 5 - clusterCIDR: "" - configSyncPeriod: 15m0s - conntrack: - max: null - maxPerCore: 32768 - min: 131072 - tcpCloseWaitTimeout: 1h0m0s - tcpEstablishedTimeout: 24h0m0s - enableProfiling: false - featureGates: "SupportIPVSProxyMode=true,ServiceNodeExclusion=true" - healthzBindAddress: 0.0.0.0:10256 - hostnameOverride: "" - iptables: - masqueradeAll: false - masqueradeBit: 14 - minSyncPeriod: 0s - syncPeriod: 30s - ipvs: - excludeCIDRs: null - minSyncPeriod: 0s - scheduler: "" - syncPeriod: 30s - metricsBindAddress: 127.0.0.1:10249 - mode: "" - nodePortAddresses: null - oomScoreAdj: -999 - portRange: "" - resourceContainer: /kube-proxy - udpIdleTimeout: 250ms -kubeletConfiguration: - baseConfig: - address: 0.0.0.0 - authentication: - anonymous: - enabled: false - webhook: - cacheTTL: 2m0s - enabled: true - x509: - clientCAFile: /etc/kubernetes/pki/ca.crt - authorization: - mode: Webhook - webhook: - cacheAuthorizedTTL: 5m0s - cacheUnauthorizedTTL: 30s - cgroupDriver: cgroupfs - cgroupsPerQOS: true - clusterDNS: - - 10.96.0.10 - clusterDomain: cluster.local - configMapAndSecretChangeDetectionStrategy: Watch - containerLogMaxFiles: 5 - containerLogMaxSize: 10Mi - contentType: application/vnd.kubernetes.protobuf - cpuCFSQuota: true - cpuManagerPolicy: none - cpuManagerReconcilePeriod: 10s - enableControllerAttachDetach: true - enableDebuggingHandlers: true - enforceNodeAllocatable: - - pods - eventBurst: 10 - eventRecordQPS: 5 - evictionHard: - imagefs.available: 15% - memory.available: 100Mi - nodefs.available: 10% - nodefs.inodesFree: 5% - evictionPressureTransitionPeriod: 5m0s - failSwapOn: true - fileCheckFrequency: 20s - hairpinMode: promiscuous-bridge - healthzBindAddress: 127.0.0.1 - healthzPort: 10248 - httpCheckFrequency: 20s - imageGCHighThresholdPercent: 85 - imageGCLowThresholdPercent: 80 - imageMinimumGCAge: 2m0s - iptablesDropBit: 15 - iptablesMasqueradeBit: 14 - kubeAPIBurst: 10 - kubeAPIQPS: 5 - makeIPTablesUtilChains: true - maxOpenFiles: 1000000 - maxPods: 110 - nodeStatusUpdateFrequency: 10s - oomScoreAdj: -999 - podPidsLimit: -1 - port: 10250 - registryBurst: 10 - registryPullQPS: 5 - resolvConf: /etc/resolv.conf - runtimeRequestTimeout: 2m0s - serializeImagePulls: true - staticPodPath: /etc/kubernetes/manifests - streamingConnectionIdleTimeout: 4h0m0s - syncFrequency: 1m0s - volumeStatsAggPeriod: 1m0s -kubernetesVersion: v1.10.2 -networking: - dnsDomain: cluster.local - podSubnet: "" - serviceSubnet: 10.96.0.0/12 -nodeName: master-1 -privilegedPods: false -token: s73ybu.6tw6wnqgp5z0wb77 -tokenGroups: -- system:bootstrappers:kubeadm:default-node-token -tokenTTL: 24h0m0s -tokenUsages: -- signing -- authentication -unifiedControlPlaneImage: "" diff --git a/cmd/kubeadm/app/util/config/testdata/conversion/node/v1alpha1.yaml b/cmd/kubeadm/app/util/config/testdata/conversion/node/v1alpha1.yaml deleted file mode 100644 index a85b233b6d3..00000000000 --- a/cmd/kubeadm/app/util/config/testdata/conversion/node/v1alpha1.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: NodeConfiguration -caCertPath: /etc/kubernetes/pki/ca.crt -clusterName: kubernetes -criSocket: /var/run/dockershim.sock -discoveryFile: "" -discoveryTimeout: 5m0s -discoveryToken: abcdef.0123456789abcdef -discoveryTokenAPIServers: -- kube-apiserver:6443 -discoveryTokenUnsafeSkipCAVerification: true -nodeName: master-1 -tlsBootstrapToken: abcdef.0123456789abcdef -token: abcdef.0123456789abcdef diff --git a/cmd/kubeadm/app/util/config/testdata/defaulting/master/incomplete.yaml b/cmd/kubeadm/app/util/config/testdata/defaulting/master/incomplete.yaml index e2d6be82bbc..b6f52265344 100644 --- a/cmd/kubeadm/app/util/config/testdata/defaulting/master/incomplete.yaml +++ b/cmd/kubeadm/app/util/config/testdata/defaulting/master/incomplete.yaml @@ -1,15 +1,17 @@ -# This file _should_ set TypeMeta, but at some point earlier we supported deserializing MasterConfigurations without TypeMeta, so we need to support that as long as we -# support the v1alpha1 API. In the meantime kubeadm will treat this as v1alpha1 automatically when unmarshalling. +apiVersion: kubeadm.k8s.io/v1alpha2 +kind: MasterConfiguration api: advertiseAddress: 192.168.2.2 bindPort: 6443 +bootstrapTokens: +- token: s73ybu.6tw6wnqgp5z0wb77 certificatesDir: /var/lib/kubernetes/pki clusterName: kubernetes -criSocket: /var/run/criruntime.sock imageRepository: my-company.com kubernetesVersion: v1.10.2 networking: dnsDomain: cluster.global serviceSubnet: 10.196.0.0/12 -nodeName: master-1 -token: s73ybu.6tw6wnqgp5z0wb77 +nodeRegistration: + criSocket: /var/run/criruntime.sock + name: master-1 diff --git a/cmd/kubeadm/app/util/config/testdata/defaulting/node/incomplete.yaml b/cmd/kubeadm/app/util/config/testdata/defaulting/node/incomplete.yaml index adb46dd5f79..7db448fe807 100644 --- a/cmd/kubeadm/app/util/config/testdata/defaulting/node/incomplete.yaml +++ b/cmd/kubeadm/app/util/config/testdata/defaulting/node/incomplete.yaml @@ -1,7 +1,8 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 +apiVersion: kubeadm.k8s.io/v1alpha2 kind: NodeConfiguration discoveryTokenAPIServers: - kube-apiserver:6443 discoveryTokenUnsafeSkipCAVerification: true -nodeName: thegopher +nodeRegistration: + name: thegopher token: abcdef.0123456789abcdef diff --git a/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/after.yaml b/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/after.yaml deleted file mode 100644 index a08a94a5402..00000000000 --- a/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/after.yaml +++ /dev/null @@ -1,73 +0,0 @@ -api: - advertiseAddress: 172.31.93.180 - bindPort: 6443 - controlPlaneEndpoint: "" -apiVersion: kubeadm.k8s.io/v1alpha1 -auditPolicy: - logDir: "" - path: "" -authorizationModes: -- Node -- RBAC -certificatesDir: /etc/kubernetes/pki -cloudProvider: aws -etcd: - caFile: "" - certFile: "" - dataDir: /var/lib/etcd - endpoints: null - image: "" - keyFile: "" -imageRepository: gcr.io/google_containers -kind: MasterConfiguration -kubeProxy: - config: - bindAddress: 0.0.0.0 - clientConnection: - acceptContentTypes: "" - burst: 10 - contentType: application/vnd.kubernetes.protobuf - kubeconfig: /var/lib/kube-proxy/kubeconfig.conf - qps: 5 - clusterCIDR: 192.168.0.0/16 - configSyncPeriod: 15m0s - conntrack: - max: null - maxPerCore: 32768 - min: 131072 - tcpCloseWaitTimeout: 1h0m0s - tcpEstablishedTimeout: 24h0m0s - enableProfiling: false - featureGates: - ServiceNodeExclusion: true - SupportIPVSProxyMode: true - healthzBindAddress: 0.0.0.0:10256 - hostnameOverride: "" - iptables: - masqueradeAll: false - masqueradeBit: 14 - minSyncPeriod: 0s - syncPeriod: 30s - ipvs: - excludeCIDRs: null - minSyncPeriod: 0s - scheduler: "" - syncPeriod: 30s - metricsBindAddress: 127.0.0.1:10249 - mode: "" - nodePortAddresses: null - oomScoreAdj: -999 - portRange: "" - resourceContainer: /kube-proxy - udpIdleTimeout: 0s -kubeletConfiguration: {} -kubernetesVersion: v1.9.6 -networking: - dnsDomain: cluster.local - podSubnet: 192.168.0.0/16 - serviceSubnet: 10.96.0.0/12 -nodeName: ip-172-31-93-180.ec2.internal -privilegedPods: false -token: 8d69af.cd3e1c58f6228dfc -tokenTTL: 24h0m0s -unifiedControlPlaneImage: "" diff --git a/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/before.yaml b/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/before.yaml deleted file mode 100644 index 986f0167515..00000000000 --- a/cmd/kubeadm/app/util/config/testdata/v1alpha1_upgrade/before.yaml +++ /dev/null @@ -1,64 +0,0 @@ -# This MasterConfiguration object is wrong in two ways: it hasn't TypeMeta set, and .kubeProxy.config.featureGates is a string as it was in v1.9 -# In v1.10 however, it changed in an inbackwards-compatible way to a map[string]string, so we have to workaround that to unmarshal this object -api: - advertiseAddress: 172.31.93.180 - bindPort: 6443 -authorizationModes: -- Node -- RBAC -certificatesDir: /etc/kubernetes/pki -cloudProvider: aws -etcd: - caFile: "" - certFile: "" - dataDir: /var/lib/etcd - endpoints: null - image: "" - keyFile: "" -imageRepository: gcr.io/google_containers -kubeProxy: - config: - bindAddress: 0.0.0.0 - clientConnection: - acceptContentTypes: "" - burst: 10 - contentType: application/vnd.kubernetes.protobuf - kubeconfig: /var/lib/kube-proxy/kubeconfig.conf - qps: 5 - clusterCIDR: 192.168.0.0/16 - configSyncPeriod: 15m0s - conntrack: - max: null - maxPerCore: 32768 - min: 131072 - tcpCloseWaitTimeout: 1h0m0s - tcpEstablishedTimeout: 24h0m0s - enableProfiling: false - featureGates: "SupportIPVSProxyMode=true,ServiceNodeExclusion=true" - healthzBindAddress: 0.0.0.0:10256 - hostnameOverride: "" - iptables: - masqueradeAll: false - masqueradeBit: 14 - minSyncPeriod: 0s - syncPeriod: 30s - ipvs: - minSyncPeriod: 0s - scheduler: "" - syncPeriod: 30s - metricsBindAddress: 127.0.0.1:10249 - mode: "" - oomScoreAdj: -999 - portRange: "" - resourceContainer: /kube-proxy - udpTimeoutMilliseconds: 250ms -kubeletConfiguration: {} -kubernetesVersion: v1.9.6 -networking: - dnsDomain: cluster.local - podSubnet: 192.168.0.0/16 - serviceSubnet: 10.96.0.0/12 -nodeName: ip-172-31-93-180.ec2.internal -token: 8d69af.cd3e1c58f6228dfc -tokenTTL: 24h0m0s -unifiedControlPlaneImage: "" diff --git a/cmd/kubeadm/app/util/config/testdata/validation/invalid_mastercfg.yaml b/cmd/kubeadm/app/util/config/testdata/validation/invalid_mastercfg.yaml index 4935ea7213b..bc8482a5ca1 100644 --- a/cmd/kubeadm/app/util/config/testdata/validation/invalid_mastercfg.yaml +++ b/cmd/kubeadm/app/util/config/testdata/validation/invalid_mastercfg.yaml @@ -1,12 +1,16 @@ +apiVersion: kubeadm.k8s.io/v1alpha2 +kind: MasterConfiguration api: bindPort: 0 +bootstrapTokens: +- token: s7bu.6tw6wn certificatesDir: relativepath clusterName: kubernetes -criSocket: relativepath imageRepository: my-company.com kubernetesVersion: v1.10.2 networking: dnsDomain: cluster.GLOBAL serviceSubnet: 10.196.1000.0/100 -nodeName: MASTER -token: s7bu.6tw6wn +nodeRegistration: + criSocket: relativepath + name: MASTER diff --git a/cmd/kubeadm/app/util/config/testdata/validation/invalid_nodecfg.yaml b/cmd/kubeadm/app/util/config/testdata/validation/invalid_nodecfg.yaml index a1d863485e5..997c19ccbeb 100644 --- a/cmd/kubeadm/app/util/config/testdata/validation/invalid_nodecfg.yaml +++ b/cmd/kubeadm/app/util/config/testdata/validation/invalid_nodecfg.yaml @@ -1,11 +1,12 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 +apiVersion: kubeadm.k8s.io/v1alpha2 kind: NodeConfiguration caCertPath: relativepath -criSocket: relativepath discoveryFile: relativepath discoveryTimeout: not-a-time discoveryTokenAPIServers: - INVALID_URL discoveryTokenUnsafeSkipCAVerification: false -nodeName: NODE-1 +nodeRegistration: + criSocket: relativepath + name: NODE-1 token: invalidtoken