karmada icon indicating copy to clipboard operation
karmada copied to clipboard

Feature: karmadactl init supports deployment through configuration files

Open tiansuo114 opened this issue 6 months ago • 16 comments

What type of PR is this? /kind feature

What this PR does / why we need it: Increased karmadactl's ability to init by reading configuration files From

user@virtual-machine:karmada/_output/bin/linux/amd64# karmadactl init --karmada-apiserver-image registry.k8s.io/kube-apiserver:v1.30.0 --karmada-kube-controller-manager-image registry.k8s.io/kube-controller-manager:v1.30.0 --etcd-image registry.k8s.io/etcd:3.5.13-0 --etcd-init-image docker.io/library/alpine:3.19.1 --karmada-aggregated-apiserver-image docker.io/karmada/karmada-aggregated-apiserver:v1.10.3 --karmada-controller-manager-image docker.io/karmada/karmada-controller-manager:v1.10.3 --karmada-scheduler-image docker.io/karmada/karmada-scheduler:v1.10.3 --karmada-webhook-image docker.io/karmada/karmada-webhook:v1.10.3 --crds /home/tiansuo/Downloads/crds.tar.gz ....

Turn into

user@virtual-machine:karmada/_output/bin/linux/amd64# karmadactl init --config config.yaml

Example of config.yaml

apiVersion: config.karmada.io/v1alpha1
kind: KarmadaInitConfig
metadata:
  name: karmada-init
spec:
  karmadaCrds: "https://github.com/karmada-io/karmada/releases/download/v1.10.3/crds.tar.gz"
  etcd:
    local:
      imageRepository: "registry.k8s.io/etcd"
      imageTag: "3.5.13-0"
      initImage:
        imageRepository: "docker.io/library/alpine"
        imageTag: "3.19.1"
  components:
    karmadaAPIServer:
      imageRepository: "registry.k8s.io/kube-apiserver"
      imageTag: "v1.30.0"
    karmadaAggregatedAPIServer:
      imageRepository: "docker.io/karmada/karmada-aggregated-apiserver"
      imageTag: "v1.10.3"
    kubeControllerManager:
      imageRepository: "registry.k8s.io/kube-controller-manager"
      imageTag: "v1.30.0"
    karmadaControllerManager:
      imageRepository: "docker.io/karmada/karmada-controller-manager"
      imageTag: "v1.10.3"
    karmadaScheduler:
      imageRepository: "docker.io/karmada/karmada-scheduler"
      imageTag: "v1.10.3"
    karmadaWebhook:
      imageRepository: "docker.io/karmada/karmada-webhook"
      imageTag: "v1.10.3"

Which issue(s) this PR fixes: Fixes #3464 This PR is related to the documentation PR: https://github.com/karmada-io/karmada/pull/5277 Special notes for your reviewer: @liangyuanpeng Does this PR introduce a user-facing change?:


tiansuo114 avatar Aug 12 '24 13:08 tiansuo114