title | menu_order | search_type |
---|---|---|
Frequently asked questions |
95 |
Documentation |
A simple way to get Scope running in a Kubernetes setting is to
-
Clone the Scope repo:
git clone https://github.com/weaveworks/scope cd scope
-
Spin up a cluster wherever it suits you. Minikube is a simple option.
-
Run
kubectl apply -f example/k8s
to deploy Scope to your cluster.
-
Port-forward to access
weave-scope-app
:kubectl port-forward svc/weave-scope-app -n weave 4040:80
-
Point your browser to http://127.0.0.1:4040.
Can be done by using the probe.no-controls
option and set it to false for the scope agents. This can be done in the scope deployment manifest under the weave-scope-agent
's argument section with —probe.no-control=true
.
OSS Scope has no user concept, this is only available in Weave Cloud. To limit the access to the UI,
-
setup a reverse proxy with auth and block access to non admin users,
-
capture the calls with something like Chrome network console to get the endpoints to know which requests to authenticate in the proxy server.
-
you can use Basic HTTP Auth since Scope 1.10.0 - just use these command line arguments:
-app.basicAuth Enable basic authentication for app -app.basicAuth.password string Password for basic authentication (default "admin") -app.basicAuth.username string Username for basic authentication (default "admin")
- It required patches, @adivyoseph (on #scope) had done some work on this.
- #2110 says that scope's CI builds ARM32 (but not ARM64) for test-builds at least.
- @errordeveloper says: It should be easy to add arm64 in CI, You can try and enable builds in ci on a branch.. In theory, you just need to build for
GOARCH=arm64
.
OSS Scope reports aren't persistent and the probe keeps the last 15 seconds of metrics in memory.
Scope exposes the following endpoints that can be used by external monitoring services.
/api
- Scope status and configuration/api/probes
- basic status of Scope probes/api/report
- returns a full JSON report/api/topology
- information on all topologies/api/topology/[TOPOLOGY]
- information on all nodes belonging toTOPOLOGY
topology/api/topology/[TOPOLOGY]/[NODE_ID]
- information on specific nodeNODE_ID
in topologyTOPOLOGY
(currentlyNODE_ID
must be an internal Scope node ID obtained from the URL fieldselectedNodeId
when selecting that node in the UI - see #3122 for a proposal of a better solution)
You can use scope launch --app.http.address=127.0.0.1:9000
to run the
http server on another port (in this case 9000).