diff --git a/artifacts/deploy/karmada-scheduler-estimator.yaml b/artifacts/deploy/karmada-scheduler-estimator.yaml index bedf7a948149..46c1488f807c 100644 --- a/artifacts/deploy/karmada-scheduler-estimator.yaml +++ b/artifacts/deploy/karmada-scheduler-estimator.yaml @@ -2,7 +2,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: karmada-scheduler-estimator-{{member_cluster_name}} - namespace: karmada-system + namespace: {{namespace}} labels: cluster: {{member_cluster_name}} spec: @@ -55,7 +55,7 @@ spec: volumes: - name: karmada-certs secret: - secretName: karmada-cert-secret + secretName: {{grpc_auth_secret_name}} - name: member-kubeconfig secret: secretName: {{member_cluster_name}}-kubeconfig @@ -64,7 +64,7 @@ apiVersion: v1 kind: Service metadata: name: karmada-scheduler-estimator-{{member_cluster_name}} - namespace: karmada-system + namespace: {{namespace}} labels: cluster: {{member_cluster_name}} spec: diff --git a/hack/deploy-scheduler-estimator.sh b/hack/deploy-scheduler-estimator.sh index 70e0e12d74ea..a19e76f0d43e 100755 --- a/hack/deploy-scheduler-estimator.sh +++ b/hack/deploy-scheduler-estimator.sh @@ -20,11 +20,11 @@ set -o nounset REPO_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. function usage() { echo "This script will deploy karmada-scheduler-estimator of a cluster." - echo "Usage: hack/deploy-scheduler-estimator.sh " + echo "Usage: hack/deploy-scheduler-estimator.sh [ ]" echo "Example: hack/deploy-scheduler-estimator.sh ~/.kube/karmada.config karmada-host ~/.kube/members.config member1" } -if [[ $# -ne 4 ]]; then +if [[ $# -lt 4 ]]; then usage exit 1 fi @@ -61,14 +61,17 @@ then usage exit 1 fi -MEMBER_CLUSTER_NAME=$4 +MEMBER_CLUSTER_CONTEXT=$4 +MEMBER_CLUSTER_NAME=${5:-$4} +NAMESPACE=${6:-"karmada-system"} +GRPC_AUTH_SECRET_NAME=${7:-"karmada-cert-secret"} TEMP_PATH="$(mktemp -d)" MEMBER_CLUSTER_KUBECONFIG_NAME="$(basename "${MEMBER_CLUSTER_KUBECONFIG}")" # --context & --minify will generate minified kubeconfig file with required context # --flatten will embed certificate kubectl config view --kubeconfig "${MEMBER_CLUSTER_KUBECONFIG}" \ - --context "${MEMBER_CLUSTER_NAME}" --minify --flatten \ + --context "${MEMBER_CLUSTER_CONTEXT}" --minify --flatten \ > "${TEMP_PATH}/${MEMBER_CLUSTER_KUBECONFIG_NAME}" # check whether the kubeconfig secret has been created before @@ -77,13 +80,15 @@ if ! kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER_NAME}" \ create secret generic "${MEMBER_CLUSTER_NAME}-kubeconfig" \ "--from-file=${MEMBER_CLUSTER_NAME}-kubeconfig=${TEMP_PATH}/${MEMBER_CLUSTER_KUBECONFIG_NAME}" \ - -n "karmada-system" + -n ${NAMESPACE} fi rm -rf "${TEMP_PATH}" # deploy scheduler estimator TEMP_PATH=$(mktemp -d) cp "${REPO_ROOT}"/artifacts/deploy/karmada-scheduler-estimator.yaml "${TEMP_PATH}"/karmada-scheduler-estimator.yaml +sed -i'' -e "s/{{grpc_auth_secret_name}}/${GRPC_AUTH_SECRET_NAME}/g" "${TEMP_PATH}"/karmada-scheduler-estimator.yaml +sed -i'' -e "s/{{namespace}}/${NAMESPACE}/g" "${TEMP_PATH}"/karmada-scheduler-estimator.yaml sed -i'' -e "s/{{member_cluster_name}}/${MEMBER_CLUSTER_NAME}/g" "${TEMP_PATH}"/karmada-scheduler-estimator.yaml echo -e "Apply dynamic rendered deployment in ${TEMP_PATH}/karmada-scheduler-estimator.yaml\n" kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER_NAME}" apply -f "${TEMP_PATH}"/karmada-scheduler-estimator.yaml