-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
149 lines (112 loc) · 4.27 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
GO_CMD=go
GO_BUILD=$(GO_CMD) build
GO_CLEAN=$(GO_CMD) clean
GO_TEST=$(GO_CMD) test
TARGET_KUBELET=kubelet
TARGET_APISERVER=apiserver
TARGET_KUBECTL=kubectl
TARGET_SCHEDULER=scheduler
TARGET_CONTROLLERMANAGER = controllerManager
TARGET_DNS = dns
TARGET_KUBEPROXY = kubeProxy
TARGET_FLANNEL = flannel
TARGET_SERVERLESS = serverless
VAR ?= default_name
.DEFAULT_GOAL := default
GO_TEST_PATH='./test/yaml_test'
# as there is a dir named "test" too, so we need .PHONY to specify this target.
.PHONY:test
all: test master node
build: module apiserver kubectl kubelet scheduler controllerManager dns kubeProxy flannel
master: kubectl apiserver scheduler replicaSet dns dns flannel
node: kubelet kubeProxy flannel
default: build
test:
# service rabbitmq-server start
# /bin/bash -c 'etcd &'
# /bin/bash -c './build/apiserver &'
# testRS:
# service rabbitmq-server start
# /bin/bash -c 'etcd &'
# /bin/bash -c './build/apiserver &'
# testHPA:
# service rabbitmq-server start
# /bin/bash -c 'etcd &'
# /bin/bash -c './build/apiserver &'
# testServerless:
service rabbitmq-server start
/bin/bash -c 'etcd &'
/bin/bash -c './build/apiserver &'
/bin/bash -c './build/serverless &'
module:
$(GO_CMD) mod tidy
apiserver:
$(GO_BUILD) -o ./build/$(TARGET_APISERVER) ./cmd/apiserver/main.go
kubectl:
$(GO_BUILD) -o ./$(TARGET_KUBECTL) ./cmd/kubectl/main.go
scheduler:
$(GO_BUILD) -o ./build/$(TARGET_SCHEDULER) ./cmd/scheduler/main.go
kubelet:
$(GO_BUILD) -o ./build/$(TARGET_KUBELET) ./cmd/kubelet/main.go
controllerManager:
$(GO_BUILD) -o ./build/$(TARGET_CONTROLLERMANAGER) ./cmd/controllerManager/main.go
dns:
$(GO_BUILD) -o ./build/$(TARGET_DNS) ./cmd/Dns/main.go
kubeProxy:
$(GO_BUILD) -o ./build/$(TARGET_KUBEPROXY) ./cmd/kubeProxy/main.go
flannel:
$(GO_BUILD) -o ./build/$(TARGET_FLANNEL) ./cmd/flannel/main.go
serverless:
$(GO_BUILD) -o ./build/$(TARGET_SERVERLESS) ./cmd/serverless/main.go
clean:
rm -rf ./build
master_start:
sudo /bin/bash -c 'etcd -listen-client-urls="http://192.168.1.6:2379,http://localhost:2379" -advertise-client-urls="http://192.168.1.6:2379" &'
sudo /bin/bash -c './build/apiserver &'
sleep 5
sudo /bin/bash -c './build/scheduler &'
sudo /bin/bash -c './build/controllerManager &'
sudo /bin/bash -c './build/dns'
sudo /bin/bash -c './build/coredns &'
sudo /bin/bash -c './build/flannel &'
node_start:
echo "$(VAR)"
sudo /bin/bash -c './build/kubeProxy &'
sudo /bin/bash -c './build/kubelet $(VAR) &'
sudo /bin/bash -c './build/flannel &'
start_all:
sudo /bin/bash -c 'etcd -listen-client-urls="http://192.168.1.6:2379,http://localhost:2379" -advertise-client-urls="http://192.168.1.6:2379" &'
sudo /bin/bash -c './build/apiserver &'
sleep 5
sudo /bin/bash -c './build/scheduler &'
sudo /bin/bash -c './build/controllerManager &'
sudo /bin/bash -c './build/kubelet $(VAR) &'
sudo /bin/bash -c './build/kubeProxy &'
sudo /bin/bash -c './build/dns'
sudo /bin/bash -c './build/coredns &'
sudo /bin/bash -c './build/flannel &'
clean-env:
-sudo /bin/bash -c 'iptables -t nat -F'
-sudo /bin/bash -c 'iptables -t nat -X'
-sudo /bin/bash -c 'systemctl restart docker'
-sudo /bin/bash -c 'docker stop $$(docker ps -aq) && docker rm $$(docker ps -aq)'
-sudo /bin/bash -c 'etcdctl del "" --prefix'
kill-all:
-sudo /bin/bash -c 'ps -ef | grep etcd | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall etcd'
-sudo /bin/bash -c 'ps -ef | grep apiserver | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall apiserver'
-sudo /bin/bash -c 'ps -ef | grep scheduler | awk '{print $2}' | xargs kill -9 '
-sudo /bin/bash -c 'killall scheduler'
-sudo /bin/bash -c 'ps -ef | grep controllerManager | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall controllerManager'
-sudo /bin/bash -c 'ps -ef | grep kubelet | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall kubelet'
-sudo /bin/bash -c 'ps -ef | grep kubeProxy | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall kubeProxy'
-sudo /bin/bash -c 'ps -ef | grep dns | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall dns'
-sudo /bin/bash -c 'ps -ef | grep coredns | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall coredns'
-sudo /bin/bash -c 'ps -ef | grep flannel | awk '{print $2}' | xargs kill -9'
-sudo /bin/bash -c 'killall flannel'