-
Notifications
You must be signed in to change notification settings - Fork 11
How to use CLI Tool
Eunsang edited this page Sep 3, 2021
·
7 revisions
$ git clone https://github.com/cloud-barista/cb-ladybug.git
$ cd cb-ladybug
$ go build -o cbadm src/grpc-api/cbadm/cbadm.go
$ chmod +x cbadm
cbadm [command]
-
Available Commands:
- cluster This is a manageable command for cluster
- completion generate the autocompletion script for the specified shell
- healthy This is a healthy command for checking ladybug
- help Help about any command
- node This is a manageable command for node
- version This is a version command for cbadm
-
Flags:
- -c, --config string config file (default "./grpc_conf.yaml")
- -h, --help help for cbadm
- -i, --input string input format (json/yaml) (default "yaml")
- -o, --output string output format (json/yaml) (default "yaml")
-
Use "cbadm [command] --help" for more information about a command.
cbadm cluster create --config ${GRPC_CONFIG} -i json -o json -d \
'{
"namespace": "<Namespace Name>",
"ReqInfo": {
"name": "<Cluster Name>",
"config": {
"kubernetes": {
"networkCni": "<Network CNI addon>",
"podCidr": "<Pod CIDR>",
"serviceCidr": "<Service CIDR>",
"serviceDnsDomain": "<Service DNS Domain>"
}
},
"controlPlane": [
{
"connection": "<Connection info. Name>",
"count": <Node Count>,
"spec": "<CSP Machine Spec.>"
}
],
"worker": [
{
"connection": "<Connection info. Name>",
"count": <Node Count>,
"spec": "<CSP Machine Spec.>"
}
]
}
}'
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
-
Values
- Namespace Name : Cloud-Barista 네임스페이스 이름
- Network CNI addon : "kilo", "canal"
- Pod CIDR : K8s Pod CIDR (default) 10.244.0.0/16
- Service CIDR : K8s Service CIDR (default) 10.96.0.0/12
- Service DNS Domain : Service 기본 도메인 이름 (default) cluster.local
- Connection info. Name : Cloud-Barista Cloud Connection Info.
- Node Count : 생성할 노드 갯수 (ex.) 1,3,5, ...
- CSP Machine Sepc. : CSP별 VM 인스턴스 타입 (ex.) t2.medium, n1-standard-2, Standard_B2s, ..
-
Example
$ ./cbadm cluster create --config src/grpc-api/cbadm/grpc_conf.yaml -i json -o json -d \
'{
"namespace": "<Namespace Name>",
"ReqInfo": {
"name": "mcks-cluster",
"config": {
"kubernetes": {
"networkCni": "kilo",
"podCidr": "10.244.0.0/16",
"serviceCidr": "10.96.0.0/12",
"serviceDnsDomain": "cluster.local"
}
},
"controlPlane": [
{
"connection": "config-aws-ap-northeast-1",
"count": 1,
"spec": "t2.medium"
}
],
"worker": [
{
"connection": "config-gcp-asia-northeast3",
"count": 3,
"spec": "n1-standard-2"
}
]
}
}'
cbadm cluster get --config ${GRPC_CONFIG} -o json --ns ${NAMESPACE_NAME} --cluster ${CLUSTER_NAME}
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
- CLUSTER_NAME : MCKS 클러스터 이름
-
Example
$ ./cbadm cluster get --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster
cbadm cluster list --config ${GRPC_CONFIG} -o json --ns ${NAMESPACE_NAME}
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
-
Example
$ ./cbadm cluster list --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns
cbadm cluster delete --config ${GRPC_CONFIG} -o json --ns ${NAMESPACE_NAME} --cluster ${CLUSTER_NAME}
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
- CLUSTER_NAME : MCKS 클러스터 이름
-
Example
./cbadm cluster delete --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster
only worker node
cbadm node add --config ${GRPC_CONFIG} -i json -o json -d \
'{
"namespace": "<Namespace Name>",
"cluster": "<Cluster Name>",
"ReqInfo": {
"worker": [
{
"connection": "<Connection info. Name>",
"count": <Node Count>,
"spec": "<CSP Machine Sepc>"
}
]
}
}'
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
-
Values
- Namespace Name : Cloud-Barista 네임스페이스 이름
- Cluster Name : MCKS 클러스터 이름
- Connection info. Name : Cloud-Barista Cloud Connection Info.
- Node Count : 추가할 노드 갯수 (ex.) 1,3,5, ...
- CSP Machine Sepc. : CSP별 VM 인스턴스 타입 (ex.) t2.medium, n1-standard-2, Standard_B2s, ..
-
Example
$ ./cbadm node add --config src/grpc-api/cbadm/grpc_conf.yaml -i json -o json -d \
'{
"namespace": "mcks-demo-ns",
"cluster": "mcks-cluster",
"ReqInfo": {
"worker": [
{
"connection": "config-azure-koreacentral",
"count": 1,
"spec": "Standard_B2s"
}
]
}
}'
cbadm node get --config ${GRPC_CONFIG} -o json --ns ${NAMESPACE_NAME} --cluster ${CLUSTER_NAME} --node ${NODE_NAME}
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
- CLUSTER_NAME : MCKS 클러스터 이름
- NODE_NAME : 노드 이름
-
Example
$ ./cbadm node get --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster --node mcks-cluster-worker-1-asefv
cbadm node list --config ${GRPC_CONFIG} -o json --ns ${NAMESPACE_NAME} --cluster ${CLUSTER_NAME}
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
- CLUSTER_NAME : MCKS 클러스터 이름
-
Example
$ ./cbadm node list --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster
only worker node
cbadm node remove --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster --node mcks-cluster-worker-1-asefv
-
Parameters
- GRPC_CONFIG : gRPC 클라이언트 설정 파일
- NAMESPACE_NAME : Cloud-Barista 네임스페이스 이름
- CLUSTER_NAME : MCKS 클러스터 이름
- NODE_NAME : 노드 이름
-
Example
$ ./cbadm node remove --config src/grpc-api/cbadm/grpc_conf.yaml -o json --ns mcks-demo-ns --cluster mcks-cluster --node mcks-cluster-worker-1-asefv
-
Design
-
User Guide
-
Developer Guide
-
Test Reports