west saharut

This commit is contained in:
KLxHunter 2023-07-18 11:26:27 +07:00
parent 3aa65b5e2d
commit 07cc3f2ef8
12 changed files with 506 additions and 2 deletions

View File

@ -1,3 +1,3 @@
# k3s
docker-compose up -d
west saharut
docker-compose exec vm1 bash -c "docker-compose up -d" && docker-compose exec vm2 bash -c "docker-compose up -d" && docker-compose exec vm3 bash -c "docker-compose up -d" && cp services1/output/kubeconfig.yaml ~/.kube/clusters/autodoor.yaml && source ~/.zshrc

48
docker-compose.yml Normal file
View File

@ -0,0 +1,48 @@
version : '3'
services:
vm1:
image: earth4242/dockervm:3.0
container_name: vm1
privileged: true
stdin_open: true # docker run -i
tty: true # docker run -t
working_dir: /root/services
ports:
- 6443:6443
networks:
k3s:
ipv4_address: 192.168.221.11
volumes:
- ./services1:/root/services
vm2:
image: earth4242/dockervm:3.0
container_name: vm2
privileged: true
stdin_open: true # docker run -i
tty: true # docker run -t
working_dir: /root/services
networks:
k3s:
ipv4_address: 192.168.221.12
volumes:
- ./services2:/root/services
vm3:
image: earth4242/dockervm:3.0
container_name: vm3
privileged: true
stdin_open: true # docker run -i
tty: true # docker run -t
working_dir: /root/services
networks:
k3s:
ipv4_address: 192.168.221.13
volumes:
- ./services3:/root/services
networks:
k3s:
external: true

7
services1/.env Normal file
View File

@ -0,0 +1,7 @@
REGISTRY=192.168.221.14:5000
K3S_VERSION=v1.26.5-k3s1
K3S_TOKEN=vv
K3S_MASTER=192.168.221.11
K3S_MASTER2=192.168.221.12
RANCHER_PAUSE_IMAGE=rancher/mirrored-pause:3.6
K3S_ETCD=192.168.221.14

View File

@ -0,0 +1,103 @@
version: '3'
services:
etcd-1:
container_name: etcd-1
image: quay.io/coreos/etcd:v3.5.9
entrypoint: /usr/local/bin/etcd
# volumes:
# - ./etcd-data:/etcd-data
command:
- '--name=etcd-1'
- '--initial-advertise-peer-urls=http://etcd-1:2380'
- '--listen-peer-urls=http://0.0.0.0:2380'
- '--listen-client-urls=http://0.0.0.0:2379'
- '--advertise-client-urls=http://0.0.0.0:2379'
- '--heartbeat-interval=250'
- '--election-timeout=1250'
- '--data-dir=/etcd-data'
- '--initial-cluster=etcd-1=http://etcd-1:2380'
ports:
- 2379:2379
- 2380:2380
restart: always
master1:
image: "rancher/k3s:${K3S_VERSION:-latest}"
container_name: master1
command: server --node-name=master1 --node-external-ip="${K3S_MASTER}" --cluster-init --advertise-address ${K3S_MASTER} --tls-san ${K3S_MASTER} --tls-san ${K3S_MASTER2} --disable-cloud-controller --disable traefik --disable metrics-server --disable servicelb --node-label "node-type=master" --node-label "node-name=master1" --node-label "k8s=egate"
# --disable coredns
tmpfs:
- /run
- /var/run
ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
privileged: true
restart: always
environment:
- K3S_TOKEN=${K3S_TOKEN:?err}
- K3S_KUBECONFIG_OUTPUT=/output/kubeconfig.yaml
- K3S_KUBECONFIG_MODE=666
- K3S_DATASTORE_ENDPOINT=http://${K3S_MASTER}:2379
volumes:
- ./output:/output
# - ../registry/registries.yaml:/etc/rancher/k3s/registries.yaml
ports:
- 6443:6443
- 80:80 # Ingress controller port 80
- 443:443 # Ingress controller port 443
networks:
vv:
ipv4_address: 172.25.0.34
worker1:
image: "rancher/k3s:${K3S_VERSION:-latest}"
container_name: worker1
command: agent --node-name=worker1 --node-external-ip="${K3S_MASTER}" --node-label "node-type=worker" --node-label "node-name=worker1" --node-label "k8s=egate"
tmpfs:
- /run
- /var/run
ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
privileged: true
restart: always
environment:
- K3S_URL=https://${K3S_MASTER}:6443
- K3S_TOKEN=${K3S_TOKEN:?err}
# volumes:
# - ../registry/registries.yaml:/etc/rancher/k3s/registries.yaml
networks:
vv:
ipv4_address: 172.25.0.35
nginx:
image: "nginx"
container_name: nginx
restart: always
ports:
- 3001:3001
- 3002:3002
- 3003:3003
- 3004:3004
- 3005:3005
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
networks:
vv:
ipv4_address: 172.25.0.20
networks:
vv:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.25.0.0/24
gateway: 172.25.0.1

View File

@ -0,0 +1,64 @@
upstream gos {
server 172.25.0.34:30001;
server 172.25.0.35:30001;
}
upstream goscore {
server 172.25.0.34:30002;
server 172.25.0.35:30002;
}
upstream prebooking {
server 172.25.0.34:30003;
server 172.25.0.35:30003;
}
upstream prebookingcore {
server 172.25.0.34:30004;
server 172.25.0.35:30004;
}
upstream streamer {
server 172.25.0.34:30005;
server 172.25.0.35:30005;
}
server {
listen 3001;
location / {
proxy_pass http://gos;
}
}
server {
listen 3002;
location / {
proxy_pass http://goscore;
}
}
server {
listen 3003;
location / {
proxy_pass http://prebooking;
}
}
server {
listen 3004;
location / {
proxy_pass http://prebookingcore;
}
}
server {
listen 3005;
location / {
proxy_pass http://streamer;
}
}

View File

@ -0,0 +1,19 @@
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdGMyVnkKZG1WeUxXTmhRREUyT0RrMk5USXhNRGd3SGhjTk1qTXdOekU0TURNME9ESTRXaGNOTXpNd056RTFNRE0wT0RJNApXakFqTVNFd0h3WURWUVFEREJock0zTXRjMlZ5ZG1WeUxXTmhRREUyT0RrMk5USXhNRGd3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFRMGFMakhoNXZqcUlsU2syYk5icWVNUkljazNnUFZiSW80Zk4yVS9MVzIKcjdOcENOMHNrQ3lvb3dxdVFNalZtU3F5NU1oSkl2bG16STJPcVNJcmFkTDVvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVWNQYk91ckl2emJkZkxWK25aWVQ2CnRVV001dTR3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnZGcxQWhmT0x2UmpaMWhMQTJoRXh3Z2kvSkU4Tnh1VTgKcXJldldGc2lQcjRDSVFEM0Q2bjlmNE5BbEhRMzc5TzZtanRXWXlzcnluQkowMDNlSFBXaVZBUlhuZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://127.0.0.1:6443
name: default
contexts:
- context:
cluster: default
user: default
name: default
current-context: default
kind: Config
preferences: {}
users:
- name: default
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJrakNDQVRlZ0F3SUJBZ0lJWTVOOVpJWlhnV1l3Q2dZSUtvWkl6ajBFQXdJd0l6RWhNQjhHQTFVRUF3d1kKYXpOekxXTnNhV1Z1ZEMxallVQXhOamc1TmpVeU1UQTRNQjRYRFRJek1EY3hPREF6TkRneU9Gb1hEVEkwTURjeApOekF6TkRneU9Gb3dNREVYTUJVR0ExVUVDaE1PYzNsemRHVnRPbTFoYzNSbGNuTXhGVEFUQmdOVkJBTVRESE41CmMzUmxiVHBoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJLd1pDQ2RidWFkSHhhQnQKSUp2SUdwWGMrcG5YVUx6bjZxM0MzWWtycjhVbjBkcmNmVzVjZDhhS3VFb0R6d1A4ajgrSGNyd2p5aitvS0l5ZApBekNZSzcralNEQkdNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBakFmCkJnTlZIU01FR0RBV2dCUUxZdEhLSnFRaXdvTXNub0ErVzZ1dElWUUZUVEFLQmdncWhrak9QUVFEQWdOSkFEQkcKQWlFQS9xSFNKRDJHY2QzTHZpak5VaGdub2xibmtPN3FOSGpVY1A4ZWZIalltTVlDSVFDTWx2S0RIRmRlYmducApMdVlsbDBFdzZnVzVmb1RvWGlPRjVxekJERDVTN1E9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCi0tLS0tQkVHSU4gQ0VSVElGSUNBVEUtLS0tLQpNSUlCZHpDQ0FSMmdBd0lCQWdJQkFEQUtCZ2dxaGtqT1BRUURBakFqTVNFd0h3WURWUVFEREJock0zTXRZMnhwClpXNTBMV05oUURFMk9EazJOVEl4TURnd0hoY05Nak13TnpFNE1ETTBPREk0V2hjTk16TXdOekUxTURNME9ESTQKV2pBak1TRXdId1lEVlFRRERCaHJNM010WTJ4cFpXNTBMV05oUURFMk9EazJOVEl4TURnd1dUQVRCZ2NxaGtqTwpQUUlCQmdncWhrak9QUU1CQndOQ0FBU3NUZldqLzVrWXI0bVhoRGdQSVNsOGQ3aGtQaHVlcDgwMEwrOUszVHBSCm4zeGlmTS90RFpER0xGS2JMRnJCR0Y3dndCYWEvS0VDSGR4cVVBZmNncm5ZbzBJd1FEQU9CZ05WSFE4QkFmOEUKQkFNQ0FxUXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QWRCZ05WSFE0RUZnUVVDMkxSeWlha0lzS0RMSjZBUGx1cgpyU0ZVQlUwd0NnWUlLb1pJemowRUF3SURTQUF3UlFJZ082VEY4UHV2US9GeUtTNFVTemNtVXppa0JjYXovMEJHCjhWRFcxTFdHU0pzQ0lRREl4Ti85bGFJMXhUVklxeVlSa1RTS3Y4Q3NNaG5vSmZhNWhHUDJWN2tibnc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
client-key-data: LS0tLS1CRUdJTiBFQyBQUklWQVRFIEtFWS0tLS0tCk1IY0NBUUVFSUJkTVo2cm5ZSmkzbU9wMHhNSTNwcjg1UTltcXRWNklVQVVQa2xqVjljZTJvQW9HQ0NxR1NNNDkKQXdFSG9VUURRZ0FFckJrSUoxdTVwMGZGb0cwZ204Z2FsZHo2bWRkUXZPZnFyY0xkaVN1dnhTZlIydHg5Ymx4Mwp4b3E0U2dQUEEveVB6NGR5dkNQS1A2Z29qSjBETUpncnZ3PT0KLS0tLS1FTkQgRUMgUFJJVkFURSBLRVktLS0tLQo=

7
services2/.env Normal file
View File

@ -0,0 +1,7 @@
REGISTRY=192.168.221.14:5000
K3S_VERSION=v1.26.5-k3s1
K3S_TOKEN=vv
K3S_MASTER=192.168.221.11
K3S_MASTER2=192.168.221.12
RANCHER_PAUSE_IMAGE=rancher/mirrored-pause:3.6
K3S_ETCD=192.168.221.14

View File

@ -0,0 +1,77 @@
version: '3'
services:
master2:
image: "rancher/k3s:${K3S_VERSION:-latest}"
container_name: master2
command: server --node-name=master2 --node-external-ip="${K3S_MASTER2}" --advertise-address ${K3S_MASTER} --tls-san ${K3S_MASTER} --tls-san ${K3S_MASTER2} --disable-cloud-controller --disable traefik --disable metrics-server --disable servicelb --node-label "node-type=master" --node-label "node-name=master2" --node-label "k8s=egate"
tmpfs:
- /run
- /var/run
ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
privileged: true
restart: always
environment:
- K3S_URL=https://${K3S_MASTER}:6443
- K3S_TOKEN=${K3S_TOKEN:?err}
- K3S_DATASTORE_ENDPOINT=http://${K3S_MASTER}:2379
ports:
- 6443:6443
# volumes:
# - ../registry/registries.yaml:/etc/rancher/k3s/registries.yaml
networks:
vv:
ipv4_address: 172.25.0.36
worker2:
image: "rancher/k3s:${K3S_VERSION:-latest}"
container_name: worker2
command: agent --node-name=worker2 --node-external-ip="${K3S_MASTER2}" --node-label "node-type=worker" --node-label "node-name=worker2" --node-label "k8s=egate"
tmpfs:
- /run
- /var/run
ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
privileged: true
restart: always
environment:
- K3S_URL=https://${K3S_MASTER}:6443
- K3S_TOKEN=${K3S_TOKEN:?err}
# volumes:
# - ../registry/registries.yaml:/etc/rancher/k3s/registries.yaml
networks:
vv:
ipv4_address: 172.25.0.37
nginx:
image: "nginx"
container_name: nginx
restart: always
ports:
- 3001:3001
- 3002:3002
- 3003:3003
- 3004:3004
- 3005:3005
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
networks:
vv:
ipv4_address: 172.25.0.20
networks:
vv:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.25.0.0/24
gateway: 172.25.0.1

View File

@ -0,0 +1,64 @@
upstream gos {
server 172.25.0.36:30001;
server 172.25.0.37:30001;
}
upstream goscore {
server 172.25.0.36:30002;
server 172.25.0.37:30002;
}
upstream prebooking {
server 172.25.0.36:30003;
server 172.25.0.37:30003;
}
upstream prebookingcore {
server 172.25.0.36:30004;
server 172.25.0.37:30004;
}
upstream streamer {
server 172.25.0.36:30005;
server 172.25.0.37:30005;
}
server {
listen 3001;
location / {
proxy_pass http://gos;
}
}
server {
listen 3002;
location / {
proxy_pass http://goscore;
}
}
server {
listen 3003;
location / {
proxy_pass http://prebooking;
}
}
server {
listen 3004;
location / {
proxy_pass http://prebookingcore;
}
}
server {
listen 3005;
location / {
proxy_pass http://streamer;
}
}

5
services3/.env Normal file
View File

@ -0,0 +1,5 @@
REGISTRY=192.168.221.14:5000
K3S_VERSION=v1.26.5-k3s1
K3S_TOKEN=vv
K3S_MASTER=192.168.221.12
K3S_WORKER=192.168.221.13

View File

@ -0,0 +1,51 @@
version: '3'
services:
worker3:
image: "rancher/k3s:${K3S_VERSION:-latest}"
container_name: worker3
command: agent --node-name=worker3 --node-external-ip ${K3S_WORKER} --node-label "node-type=worker" --node-label "node-name=worker3" --node-label "k8s=egate"
tmpfs:
- /run
- /var/run
ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
privileged: true
restart: always
environment:
- K3S_URL=https://${K3S_MASTER}:6443
- K3S_TOKEN=${K3S_TOKEN:?err}
# volumes:
# - ../registry/registries.yaml:/etc/rancher/k3s/registries.yaml
networks:
vv:
ipv4_address: 172.25.0.38
nginx:
image: "nginx"
container_name: nginx
restart: always
ports:
- 3001:3001
- 3002:3002
- 3003:3003
- 3004:3004
- 3005:3005
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
networks:
vv:
ipv4_address: 172.25.0.20
networks:
vv:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.25.0.0/24
gateway: 172.25.0.1

View File

@ -0,0 +1,59 @@
upstream gos {
server 172.25.0.38:30001;
}
upstream goscore {
server 172.25.0.38:30002;
}
upstream prebooking {
server 172.25.0.38:30003;
}
upstream prebookingcore {
server 172.25.0.38:30004;
}
upstream streamer {
server 172.25.0.38:30005;
}
server {
listen 3001;
location / {
proxy_pass http://gos;
}
}
server {
listen 3002;
location / {
proxy_pass http://goscore;
}
}
server {
listen 3003;
location / {
proxy_pass http://prebooking;
}
}
server {
listen 3004;
location / {
proxy_pass http://prebookingcore;
}
}
server {
listen 3005;
location / {
proxy_pass http://streamer;
}
}