...
K8STARS is a convenient solution to run TARS services in Kubernetes, and it has the following characteristics:
- Maintain the native development capability of TARS;
- Automatic registration and configuration deletion of name service for TARS;
- Support smooth migration of original TARS services to K8S and other container platforms;
- Non intrusive design, no coupling relationship with operating environment.
How K8STARS works?
Three interfaces are added in the tarsregistry, which are used for automatic registration, heartbeat reporting and node offline. For details, please refer to interface definition。
A 'tarscli' command-line tool is provided to allocate ports, generate configuration, report heartbeat and node offline.
Deployment
- Deployment tars basic service
curl https://raw.githubusercontent.com/TarsCloud/K8STARS/master/baseserver/install_all.sh | sh
Deployment service example
2. Deploy sample simpleserver
cd examples/simple && kubectl apply -f simpleserver.yaml
Example description:
- The image is created by the
examples/simple/dockerfile
file, and the basic image is created bycmd/tarscli/dockerfile
- start.sh:
tarscli genconf
in is used to generate the tars service startup configuration - server_ meta.yaml The file is used to configure the metadata of the service. For field information, please refer to
app/genconf/config.go
structureServerConf
. Endpoint defaults totcp -h ${local_ip} -p ${random_port}
, supports automatic filling of IP and random ports. -ased on Golang HelloWorld program TestApp.HelloGo See examples/README.md
3. Verify the deployment Login db_tars
, then execute select * from t_server_conf\G
The node information of simpleserver has been registered automatically.
Install Virtual Classroom BackEnd
...