add makefile and deploy script for descheduler

Signed-off-by: Garrybest <garrybest@foxmail.com>
This commit is contained in:
Garrybest 2022-03-05 10:01:23 +08:00
parent 0ef339011d
commit 3602ca5d8a
6 changed files with 61 additions and 3 deletions

1
.gitignore vendored
View File

@ -24,6 +24,7 @@
/karmada-controller-manager
/karmada-interpreter-webhook-example
/karmada-scheduler
/karmada-descheduler
/karmada-scheduler-estimator
/karmada-webhook
/kubectl-karmada

View File

@ -39,7 +39,7 @@ ifeq ($(VERSION), "")
endif
endif
all: karmada-aggregated-apiserver karmada-controller-manager karmada-scheduler karmadactl kubectl-karmada karmada-webhook karmada-agent karmada-scheduler-estimator karmada-interpreter-webhook-example
all: karmada-aggregated-apiserver karmada-controller-manager karmada-scheduler karmada-descheduler karmadactl kubectl-karmada karmada-webhook karmada-agent karmada-scheduler-estimator karmada-interpreter-webhook-example
karmada-aggregated-apiserver: $(SOURCES)
CGO_ENABLED=0 GOOS=$(GOOS) go build \
@ -59,6 +59,12 @@ karmada-scheduler: $(SOURCES)
-o karmada-scheduler \
cmd/scheduler/main.go
karmada-descheduler: $(SOURCES)
CGO_ENABLED=0 GOOS=$(GOOS) go build \
-ldflags $(LDFLAGS) \
-o karmada-descheduler \
cmd/descheduler/main.go
karmadactl: $(SOURCES)
CGO_ENABLED=0 GOOS=$(GOOS) go build \
-ldflags $(LDFLAGS) \
@ -96,7 +102,7 @@ karmada-interpreter-webhook-example: $(SOURCES)
examples/customresourceinterpreter/webhook/main.go
clean:
rm -rf karmada-aggregated-apiserver karmada-controller-manager karmada-scheduler karmadactl kubectl-karmada karmada-webhook karmada-agent karmada-scheduler-estimator karmada-interpreter-webhook-example
rm -rf karmada-aggregated-apiserver karmada-controller-manager karmada-scheduler karmada-descheduler karmadactl kubectl-karmada karmada-webhook karmada-agent karmada-scheduler-estimator karmada-interpreter-webhook-example
.PHONY: update
update:
@ -112,7 +118,7 @@ test:
go test --race --v ./cmd/...
go test --race --v ./examples/...
images: image-karmada-aggregated-apiserver image-karmada-controller-manager image-karmada-scheduler image-karmada-webhook image-karmada-agent image-karmada-scheduler-estimator image-karmada-interpreter-webhook-example
images: image-karmada-aggregated-apiserver image-karmada-controller-manager image-karmada-scheduler image-karmada-descheduler image-karmada-webhook image-karmada-agent image-karmada-scheduler-estimator image-karmada-interpreter-webhook-example
image-karmada-aggregated-apiserver: karmada-aggregated-apiserver
VERSION=$(VERSION) hack/docker.sh karmada-aggregated-apiserver
@ -123,6 +129,9 @@ image-karmada-controller-manager: karmada-controller-manager
image-karmada-scheduler: karmada-scheduler
VERSION=$(VERSION) hack/docker.sh karmada-scheduler
image-karmada-descheduler: karmada-descheduler
VERSION=$(VERSION) hack/docker.sh karmada-descheduler
image-karmada-webhook: karmada-webhook
VERSION=$(VERSION) hack/docker.sh karmada-webhook
@ -142,6 +151,7 @@ ifneq ($(REGISTRY_USER_NAME), "")
endif
docker push ${REGISTRY}/karmada-controller-manager:${VERSION}
docker push ${REGISTRY}/karmada-scheduler:${VERSION}
docker push ${REGISTRY}/karmada-descheduler:${VERSION}
docker push ${REGISTRY}/karmada-webhook:${VERSION}
docker push ${REGISTRY}/karmada-agent:${VERSION}
docker push ${REGISTRY}/karmada-scheduler-estimator:${VERSION}

View File

@ -0,0 +1,37 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: karmada-descheduler
namespace: karmada-system
labels:
app: karmada-descheduler
spec:
replicas: 2
selector:
matchLabels:
app: karmada-descheduler
template:
metadata:
labels:
app: karmada-descheduler
spec:
tolerations:
- key: node-role.kubernetes.io/master
operator: Exists
containers:
- name: karmada-descheduler
image: swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-descheduler:latest
imagePullPolicy: IfNotPresent
command:
- /bin/karmada-descheduler
- --karmada-kubeconfig=/etc/kubeconfig
- --bind-address=0.0.0.0
- --v=4
volumeMounts:
- name: kubeconfig
subPath: kubeconfig
mountPath: /etc/kubeconfig
volumes:
- name: kubeconfig
secret:
secretName: kubeconfig

View File

@ -0,0 +1,7 @@
FROM alpine:3.7
RUN apk add --no-cache ca-certificates
ADD karmada-descheduler /bin/
CMD ["/bin/karmada-descheduler"]

View File

@ -233,6 +233,8 @@ kubectl config use-context "${HOST_CLUSTER_NAME}"
kubectl apply -f "${REPO_ROOT}/artifacts/deploy/controller-manager.yaml"
# deploy scheduler on host cluster
kubectl apply -f "${REPO_ROOT}/artifacts/deploy/karmada-scheduler.yaml"
# deploy descheduler on host cluster
kubectl apply -f "${REPO_ROOT}/artifacts/deploy/karmada-descheduler.yaml"
# deploy webhook on host cluster
kubectl apply -f "${REPO_ROOT}/artifacts/deploy/karmada-webhook.yaml"

View File

@ -121,6 +121,7 @@ export VERSION="latest"
export REGISTRY="swr.ap-southeast-1.myhuaweicloud.com/karmada"
kind load docker-image "${REGISTRY}/karmada-controller-manager:${VERSION}" --name="${HOST_CLUSTER_NAME}"
kind load docker-image "${REGISTRY}/karmada-scheduler:${VERSION}" --name="${HOST_CLUSTER_NAME}"
kind load docker-image "${REGISTRY}/karmada-descheduler:${VERSION}" --name="${HOST_CLUSTER_NAME}"
kind load docker-image "${REGISTRY}/karmada-webhook:${VERSION}" --name="${HOST_CLUSTER_NAME}"
kind load docker-image "${REGISTRY}/karmada-scheduler-estimator:${VERSION}" --name="${HOST_CLUSTER_NAME}"
kind load docker-image "${REGISTRY}/karmada-aggregated-apiserver:${VERSION}" --name="${HOST_CLUSTER_NAME}"