git clone git@github.com:apache/skywalking-swck.git
Edit file operator/config/default/kustomization.yaml
file to change your preferences. If you prefer to your private docker image, a quick path to override OPERATOR_IMG
environment variable : export OPERATOR_IMG=<private registry>/controller:<tag>
Use make
to generate the final manifests and deploy:
make -C operator deploy
make -C operator install
curl https://raw.githubusercontent.com/apache/skywalking-swck/master/operator/config/samples/default.yaml | kubectl apply -f -
kubectl get oapserver
kubectl get ui
If you encounter any issue, you can check the log of the controller by pulling it from Kubernetes:
# get the pod name of your controller kubectl --namespace skywalking-swck-system get pods # pull the logs kubectl --namespace skywalking-swck-system logs -f [name_of_the_controller_pod]
If you want to custom the manifests templates to generate dedicated Kubernetes resources, please edit YAMLs in pkg/operator/manifests
. After saving your changes, issue make update-templates
to transfer them to binary assets. The last step is to rebuild operator
by make -C operator docker-build
.
The custom resources that the operator introduced are:
The JavaAgent
custom resource definition (CRD) declaratively defines a view to tracing the injection result.
The java-agent-injector creat JavaAgents once it injects agents into some workloads. Refer to Java Agent for more details.
The OAP
custom resource definition (CRD) declaratively defines a desired OAP setup to run in a Kubernetes cluster. It provides options to configure environment variables and how to connect a Storage
.
The UI
custom resource definition (CRD) declaratively defines a desired UI setup to run in a Kubernetes cluster. It provides options for how to connect an OAP
.
The Storage
custom resource definition (CRD) declaratively defines a desired storage setup to run in a Kubernetes cluster. The Storage
could be managed instances onboarded by the operator or an external service. The OAP
has options to select which Storage
it would connect.
Caveat:
Stroage
only supports theElasticsearch
.
The Satellite
custom resource definition (CRD) declaratively defines a desired Satellite setup to run in a Kubernetes cluster. It provides options for how to connect an OAP
.
The Fetcher
custom resource definition (CRD) declaratively defines a desired Fetcher setup to run in a Kubernetes cluster. It provides options to configure OpenTelemetry collector, which fetches metrics to the deployed OAP
.
There are some instant examples to represent the functions or features of the Operator.