istio1.5.5的安装过程以及bookinfo例子和所需镜像

istio的demo(bookinfo)

下载 Istio,下载内容将包含:安装文件、示例和 istioctl 命令行工具。

到以下页面找istio-1.5.5-linux.tar.gz下载

http://www.jrnsoft.com/ziyuan.html

 

也可以到官网下载,但速度非常慢

curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.5.5 sh -

切换到 Istio 包所在目录下。例如:Istio 包名为 istio-1.5.1,则:

cd istio-1.5.1

将 istioctl 客户端路径增加到 path 环境变量中,macOS 或 Linux 系统的增加方式如下:

vi /etc/profile

export PATH=/root/istio-1.6.0/bin:$PATH

安装 demo 配置

istioctl manifest apply --set profile=demo

istio1.5.1依赖的image

istio/pilot:1.5.5
istio/proxyv2:1.5.5
grafana/grafana:6.5.2
quay.io/kiali/kiali:v1.15
prom/prometheus:v2.15.1
jaegertracing/all-in-one:1.16

 

直接使用docker pull下载速度太慢

已经使用docker save导出相关镜像tar包,保存在以下地址

http://www.jrnsoft.com/ziyuan.html

下载后使用docker load < xxxx.tar导入镜像

 

 

非自动注入执行启动bookinfo命令为

kubectl apply -f <(istioctl kube-inject -f  /root/istio-1.5.5/samples/bookinfo/platform/kube/bookinfo.yaml)

上面的命令会启动全部的四个服务(productpage\details\ratings\reviews),

其中也包括了 reviews 服务的三个版本(v1、v2 以及 v3)。

 

bookinfo需要的镜像

docker.io/istio/examples-bookinfo-ratings-v1:1.15.0
docker.io/istio/examples-bookinfo-details-v1:1.15.0
docker.io/istio/examples-bookinfo-productpage-v1:1.15.0
docker.io/istio/examples-bookinfo-reviews-v1:1.15.0
docker.io/istio/examples-bookinfo-reviews-v2:1.15.0
docker.io/istio/examples-bookinfo-reviews-v3:1.15.0

镜像大约700M,直接使用docker pull下载速度太慢

已经使用docker save导出相关镜像tar包,保存在以下地址

http://www.jrnsoft.com/ziyuan.html

下载后使用docker load < xxxx.tar导入镜像

确认集群是否支持 负载均衡

kubectl get svc istio-ingressgateway -n istio-system

如果 EXTERNAL-IP 有值(IP 地址或主机名),则说明您的环境具有可用于 Ingress 网关的外部负载均衡器。

由于使测试环境用的本地k8s集群肯定不支持,本次使用nodeport 方式访问网关

设置 istio-ingressgateway service 为 node port

修改 service type

kubectl patch service istio-ingressgateway -n istio-system -p '{"spec":{"type":"NodePort"}}'  

查看service

kubectl get svc istio-ingressgateway -n istio-system

NAME                   TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)      AGE

istio-ingressgateway   NodePort   10.110.171.111           

15020:32681/TCP,80:31380/TCP,443:31390/TCP,31400:31400/TCP,15029:30352/TCP,15030:3133

8/TCP,15031:31328/TCP,15032:30977/TCP,15443:31688/TCP   23m  

部署 istio gateway

部署:

kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml 

查看 gateway:

kubectl get gateway

NAME               AGE

bookinfo-gateway   46s

设置 INGRESS_PORT:

export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o  

jsonpath='{.spec.ports[?(@.name=="http2")].nodePort}')

确认 port

echo $INGRESS_PORT

31380

应用缺省目标规则

kubectl apply -f samples/bookinfo/networking/destination-rule-all-mtls.yaml 

 

测试

浏览器访问  http://实机ip:30045/productpage

istio1.5.5的安装过程以及bookinfo例子和所需镜像_第1张图片

你可能感兴趣的:(istio1.5.5的安装过程以及bookinfo例子和所需镜像)