从零开始安装istio与skywalking
版本
istio 安装1.8.2版本
skywalking安装8.1.0版本
K8S集群使用rancher安装1.19版本
istio安装
1.下载istio包到k8s的任意一台master机器上
curl -L https://istio.io/downloadIstio | sh -
2. 进入istio目录,设置环境变量,后续我们的istio安装,都在该目录下进行操作
cd istio-1.8.2
export PATH=$PWD/bin:$PATH
3.安装istio,同时设置skywalking-oap地址
输入如下命令istioctl install \ --set profile=demo \ --set meshConfig.enableEnvoyAccessLogService=true \ --set meshConfig.defaultConfig.envoyAccessLogService.address=skywalking-oap.istio-system:11800
等待出现如下回显即可完成✔ Istio core installed ✔ Istiod installed ✔ Egress gateways installed ✔ Ingress gateways installed ✔ Installation complete
4.安装kiali。安装成功后,记得把kiali通过ingress暴露出来,我是使用的traefik来暴露的
kubectl apply -f samples/addons
kubectl rollout status deployment/kiali -n istio-system
skywalking安装
git clone https://github.com/apache/skywalking-kubernetes.git
cd skywalking-kubernetes/chart
helm repo add elastic https://helm.elastic.co
helm dep up skywalking
helm install 8.1.0 skywalking -n istio-system \
--set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh \
--set fullnameOverride=skywalking \
--set oap.envoy.als.enabled=true \
--set ui.image.tag=8.1.0 \
--set oap.image.tag=8.1.0-es6 \
--set oap.storageType=elasticsearch
上述命令会安装一个skywalking和一个elasticsearch 6.8.6版本
安装完后,暴露skywalking-ui到外部,让用户可以通过页面访问
安装测试程序
通过以下命令进行安装,安装完成后,可以自己设置一下,通过loadalance暴露到外网访问,loadbalance的IP可以通过metallb搞一个
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
kubectl apply -f samples/bookinfo/networking/destination-rule-all.yaml
部署效果
浏览器进入bookinfo测试程序
进入kiali检查出现的流量分布情况
skywalking的界面