Adjust k8s
This commit is contained in:
@@ -10,32 +10,24 @@ import (
|
||||
|
||||
func Help_Cluster() {
|
||||
fmt.Println(`
|
||||
Cluster commands: oc-k8s <action> cluster [env_folder] [release]
|
||||
create - Create a new kind cluster named 'opencloud'
|
||||
delete - Delete the kind cluster named 'opencloud'
|
||||
Cluster commands: oc-k8s <action> cluster [options]
|
||||
create - Create a new kind cluster
|
||||
delete - Delete the kind cluster
|
||||
help - Show this help message
|
||||
|
||||
Usage:
|
||||
oc-k8s create cluster [env_folder] [release]
|
||||
env_folder - Helm config folder (required, default: .)
|
||||
release - Release values name (required, default: dev)
|
||||
oc-k8s delete cluster [env_folder] [release]
|
||||
env_folder - Helm config folder (required, default: .)
|
||||
release - Release values name (required, default: dev)
|
||||
Usage:
|
||||
oc-k8s create cluster -f [env_folder] -r [release]
|
||||
env_folder - Helm config folder (default: .)
|
||||
release - Release values name (default: dev)
|
||||
oc-k8s delete cluster -f [env_folder] -r [release]
|
||||
env_folder - Helm config folder (default: .)
|
||||
release - Release values name (default: dev)
|
||||
oc-k8s help cluster `)
|
||||
}
|
||||
|
||||
func Delete_Cluster(args ...string) error {
|
||||
folder := "."
|
||||
env := "dev"
|
||||
if len(args) > 0 {
|
||||
folder = args[0]
|
||||
}
|
||||
if len(args) > 1 {
|
||||
env = args[1]
|
||||
}
|
||||
func Delete_Cluster(folder string, release string) error {
|
||||
clusterName := "opencloud"
|
||||
if b, err := os.ReadFile(folder + "/" + env + "-values.yaml"); err == nil {
|
||||
if b, err := os.ReadFile(folder + "/" + release + "-values.yaml"); err == nil {
|
||||
clusterName, _ = utils.Extract(string(b), "clusterName")
|
||||
}
|
||||
utils.Exec("kind delete cluster --name " + clusterName)
|
||||
@@ -43,43 +35,48 @@ func Delete_Cluster(args ...string) error {
|
||||
return utils.Exec("chmod 600 ~/.kube/config")
|
||||
}
|
||||
|
||||
func Create_Cluster(args ...string) error {
|
||||
folder := "."
|
||||
env := "dev"
|
||||
if len(args) > 0 {
|
||||
folder = args[0]
|
||||
}
|
||||
if len(args) > 1 {
|
||||
env = args[1]
|
||||
}
|
||||
clusterName := "opencloud"
|
||||
if b, err := os.ReadFile(folder + "/" + env + "-values.yaml"); err == nil {
|
||||
clusterName, _ = utils.Extract(string(b), "clusterName")
|
||||
}
|
||||
utils.Exec("kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/v1.9.0/deploy/longhorn.yaml ")
|
||||
func Install_Cluster() error {
|
||||
utils.Exec("yes | sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
|
||||
utils.Exec("chmod 700 /home/mr/.kube")
|
||||
return utils.Exec("chmod 600 ~/.kube/config")
|
||||
}
|
||||
|
||||
kindConfig := `
|
||||
kind: Cluster
|
||||
func Create_Cluster(folder string, release string) error {
|
||||
clusterName := "opencloud"
|
||||
scheme := "http"
|
||||
port := "80"
|
||||
if b, err := os.ReadFile(folder + "/" + release + "-values.yaml"); err == nil {
|
||||
clusterName, _ = utils.Extract(string(b), "clusterName")
|
||||
scheme, _ = utils.Extract(string(b), "scheme")
|
||||
port, _ = utils.Extract(string(b), "hostPort")
|
||||
}
|
||||
utils.Exec("sudo fuser -k -TERM " + port + "/tcp")
|
||||
utils.Exec("yes | sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
|
||||
|
||||
containerPort := "30950"
|
||||
if scheme == "https" {
|
||||
containerPort = "30951"
|
||||
}
|
||||
kindConfig := `kind: Cluster
|
||||
apiVersion: kind.x-k8s.io/v1alpha4
|
||||
name: ` + clusterName + `
|
||||
nodes:
|
||||
- role: control-plane
|
||||
kubeadmConfigPatches:
|
||||
- |
|
||||
kind: InitConfiguration
|
||||
nodeRegistration:
|
||||
kubeletExtraArgs:
|
||||
node-labels: "ingress-ready=true"
|
||||
extraPortMappings:
|
||||
- containerPort: 30950
|
||||
hostPort: 80
|
||||
protocol: TCP
|
||||
- containerPort: 30951
|
||||
hostPort: 443
|
||||
protocol: TCP
|
||||
- role: control-plane
|
||||
kubeadmConfigPatches:
|
||||
- |
|
||||
kind: InitConfiguration
|
||||
nodeRegistration:
|
||||
kubeletExtraArgs:
|
||||
node-labels: "ingress-ready=true"
|
||||
extraPortMappings:
|
||||
- containerPort: ` + containerPort + `
|
||||
hostPort: ` + port + `
|
||||
protocol: TCP
|
||||
|
||||
containerdConfigPatches:
|
||||
- |-
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
|
||||
endpoint = ["http://dev-docker-registry-ui-registry-server.opencloud.svc.cluster.local:5000"]
|
||||
- |-
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
|
||||
endpoint = ["http://dev-docker-registry-ui-registry-server.opencloud.svc.cluster.local:5000"]
|
||||
`
|
||||
|
||||
cmd := exec.Command("kind", "create", "cluster", "--name", clusterName, "--config=-")
|
||||
@@ -88,6 +85,7 @@ containerdConfigPatches:
|
||||
cmd.Stderr = os.Stderr
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
fmt.Println(err)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -105,11 +103,11 @@ containerdConfigPatches:
|
||||
return err
|
||||
}
|
||||
|
||||
if err := utils.Exec("kubectl config use-context kind-opencloud"); err != nil {
|
||||
if err := utils.Exec("kubectl config use-context kind-" + clusterName); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := utils.Exec("docker start opencloud-control-plane"); err != nil {
|
||||
if err := utils.Exec("docker start " + clusterName + "-control-plane"); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
|
||||
Reference in New Issue
Block a user