command
module
Version:
v0.0.0-...-10c222e
Opens a new window with list of versions in this module.
Published: Dec 18, 2019
License: Apache-2.0
Opens a new window with license information.
Imports: 22
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
# Aladdin
1. <<Introduction>>
2. <<Getting Started>>
3. <<Platform Version in Aladdin>>
4. <<:boom: Wiki for Aladdin>>
5. <<License>>
### Introduction
Aladdin provide Network Visualization & Kubernetes Monitoring for micro services
#### Infrasturcture Overview
image::https://github.com/soda-infra/aladdin/blob/master/images/aladdin-Infrastructure.png[Aladdin-infrastructure, width=880]
#### Kubernetes Overview
image::https://github.com/soda-infra/aladdin/blob/master/images/aladdin-kubernetes.png[Aladdin-kubernetes, width=880]
### Description
Aladdin is a project that modified and improved the Kiali project. It covers various metrics as well as network metrics used in Kiali.
Aladdin works with Istio, Node Exporter, Kube-state-metrics, cAdvisor to visualize service mesh topology, infrastructure, kubernetes cluster.
### Getting Started
#### Install helm
curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get > install-helm.sh
chmod u+x install-helm.sh
./install-helm.sh
kubectl -n kube-system create serviceaccount tiller
kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller
helm init --service-account tiller
#### Download istio
git clone https://github.com/soda-infra/istio
cd istio
git checkout release-1.2
#### Install istio-init
helm install install/kubernetes/helm/istio-init --name istio-init --namespace istio-system
#### Verify istio-init (아래 명령 결과가 23이 나오면 완료)
kubectl get crds | grep 'istio.io\|certmanager.k8s.io' | wc -l
#### Create kiali secret (username: admin, password: admin)
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
metadata:
name: kiali
namespace: istio-system
labels:
app: kiali
type: Opaque
data:
username: YWRtaW4=
passphrase: YWRtaW4=
EOF
#### Install istio
helm install install/kubernetes/helm/istio \
--name istio \
--namespace istio-system \
--set tracing.enabled=true \
--set global.mtls.enabled=true \
--set grafana.enabled=true \
--set kiali.enabled=true \
--set servicegraph.enabled=true
#### Install aladdin-requirements
git clone https://github.com/soda-infra/aladdin-requirements
helm install aladdin-requirements --name aladdin-requirements
#### Loading istio example
kubectl label namespace default istio-injection=enabled
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].nodePort}')
export SECURE_INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="https")].nodePort}')
export INGRESS_HOST=$(kubectl get po -l istio=ingressgateway -n istio-system -o jsonpath='{.items[0].status.hostIP}')
export GATEWAY_URL=$INGRESS_HOST:$INGRESS_PORT
kubectl apply -f samples/bookinfo/networking/destination-rule-all-mtls.yaml
#### Verify
curl -s http://${GATEWAY_URL}/productpage | grep -o "<title>.*</title>"
#### Check kiali port (kiali 포트로 접속)
kubectl get svc -A
#### Make traffic
cat >> ~/makeTraffic.sh <<EOF
for ((i=1;i<=10000000;i++)); do
curl -v --header "Connection: keep-alive" "http://127.0.0.1:31380/productpage";
sleep 5;
done
EOF
sudo chmod +x makeTraffic.sh
### Platform Version in Aladdin
* Kubernetes - v1.15.0
* Istio - v1.2.0
* Kiali - v1.1.0 (see kiali tag)
* Kiali-ui - v1.2.0
### :boom: Wiki for Aladdin
한글화되어있는 link:https://github.com/soda-infra/aladdin/wiki[Aladdin wiki문서]입니다.
### Default ID/PW for Aladdin
> ID : admin
>
> PW : admin
### License
Apache License 2.0
Documentation
¶
Kiali
Kiali project, observability for the Istio service mesh
Schemes: http, https
BasePath: /api
Version: _
Consumes:
- application/json
Produces:
- application/json
swagger:meta
Source Files
¶
Directories
¶
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Graph package provides support for the graph handlers such as supported path variables and query params, as well as types for graph processing.
|
Graph package provides support for the graph handlers such as supported path variables and query params, as well as types for graph processing. |
|
|
config/cytoscape
Package cytoscape provides conversion from our graph to the CystoscapeJS configuration json model.
|
Package cytoscape provides conversion from our graph to the CystoscapeJS configuration json model. |
telemetry/istio
Package istio provides the Istio implementation of graph/TelemetryProvider.
|
Package istio provides the Istio implementation of graph/TelemetryProvider. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
internalmetrics
Package internalmetrics provides functionality to collect Prometheus metrics.
|
Package internalmetrics provides functionality to collect Prometheus metrics. |
|
|
|
|
|
|
status is a simple package for offering up various status information from Kiali.
|
status is a simple package for offering up various status information from Kiali. |
tests
|
|
|
|
|
|
|
|
|
|
Click to show internal directories.
Click to hide internal directories.