dubbo-pilot Control Plane Deployment
dubbo-pilot Control Plane Deployment
1 Overall Goals
- Compile the control plane and build images
- Deploy using istioctl in a Kubernetes environment
- How to debug the control plane program
2 Basic Process
This example will demonstrate how to compile the dubbo-pilot control plane and how to deploy it using istioctl in a Kubernetes environment.
- Start the control plane locally, and debug dubbo-pilot.
- Use istioctl for starting and debugging in the k8s environment.
3 Detailed Steps
3.1 Environment Requirements
- Golang
- Docker
- Minikube/Kind
- Kubectl
- Dlv
3.2 Local Deployment
3.2.1 Compilation
- Compile the docker-builder
- Use docker-builder to automatically compile and build the image
Compile istioctl
Compile dubbo-pilot and push to private image repository
3.2.2 Local Deployment
Local start method:
3.3 Container Deployment
3.3.1 Image Building
Build remote debug image
- Download dlv
- Add dlv to Dockerfile in dubbo-go-pixiu/pilot/docker/Dockerfile.pilot:
- Copy dlv to the image mount directory:
- Build and push the debug image:
- You can also check the image build status locally:
3.3.2 Deployment
- Deploy using the newly built image:
- Check the deployment status:
- Enter the container for remote debugging:
- Start dlv:
- Expose ports:
- Remote debugging is now possible.