summaryrefslogtreecommitdiffstats
path: root/docs/development/design
diff options
context:
space:
mode:
authorEddie Arrage <eddie.arrage@huawei.com>2018-04-11 02:44:51 +0000
committerEddie Arrage <eddie.arrage@huawei.com>2018-04-11 02:51:51 +0000
commit3ee962f1ac38f31d346f6af237fe9084c14d7860 (patch)
treed9dc7ba7dc171ec9ca02f51c67abc3649fc6b437 /docs/development/design
parent66cc1be27b7fbb27c01a726663e42608eb411672 (diff)
Modified validation script for tracing to support CI
- Changed default Jaeger ports to 16686 for use with basic kubernetes port-forward and CI scripts - Added CLI to validate script to disable istio service check by default. This requires at least a single http request to istio-ingress after Jaeger deployment. It can be enabled with 'python validate.py -s'. Port and IP address for Jaeger can optionally be specified with '-ip' and '-port' options - Modified tracing doc to add k8s port-forward example in addition to k8s expose Change-Id: I10fb4d3cccfa50370d44ed7446f67a49c538bba9 Signed-off-by: Eddie Arrage <eddie.arrage@huawei.com>
Diffstat (limited to 'docs/development/design')
-rw-r--r--docs/development/design/tracing.rst19
1 files changed, 13 insertions, 6 deletions
diff --git a/docs/development/design/tracing.rst b/docs/development/design/tracing.rst
index 79d686c..b83274c 100644
--- a/docs/development/design/tracing.rst
+++ b/docs/development/design/tracing.rst
@@ -13,20 +13,26 @@ following command::
kubectl apply -n istio-system -f https://raw.githubusercontent.com/jaegertracing/jaeger-kubernetes/master/all-in-one/jaeger-all-in-one-template.yml
The standard Jaeger REST port is at 16686. To make this service available outside of the
-Kubernetes cluster, use the following command::
+Kubernetes cluster via any node IP in the cluster, use the following command::
kubectl expose -n istio-system deployment jaeger-deployment --port=16686 --type=NodePort
-Kubernetes will expose the Jaeger service on another port, which can be found with::
+Kubernetes will expose the Jaeger service on another port from 30000-32767 and the assignment can
+be found with::
kubectl get svc -n istio-system
An example listing from the command above is shown below where the Jaeger service is exposed
-externally on port 30888::
+externally on port 30888 in this case::
istio-system jaeger-deployment NodePort 10.104.113.94 <none> 16686:30888/TCP
-Jaeger will be accessible using the host IP of the Kubernetes cluster and port provided.
+Jaeger will be accessible using the host IP of any node in Kubernetes cluster and port provided.
+With this method, the Jaeger UI will also be available from a remote host. If external access is
+required to Jaeger but restricted to cluster localhost(s), an alternate method is to use the
+**port-forward** command in the foreground, as shown below::
+
+ kubectl -n istio-system port-forward $(kubectl -n istio-system get pod -l app=jaeger -o jsonpath='{.items[0].metadata.name}') 16686:16686
********
Validate
@@ -40,5 +46,6 @@ It validates the installation with the following criteria:
#. Existence of Jaeger all-in-one deployment using Kubernetes
#. Jaeger service is accessible using IP address and port configured in installation steps
-#. Jaeger can retrieve default service listing for default Istio components
-#. TBD - consider installation of production setup with cassandra or elastic search
+#. Optionally, if Jaeger can retrieve service listing for default Istio components
+ (istio-ingress, istio-mixer). At least one HTTP request must be sent to istio-ingress
+ after initial Jaeger deployment for this validation to function.