安装istio的Bookinfo,在kubeadm安装的kubernetes单节点集群上

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/c5113620/article/details/82765686

安装集群看这个
使用kubeadm安装单节点kubernetes集群,在vmware虚拟机centos7

下载istio

curl -L https://git.io/getLatestIstio | sh -
cd istio-1.0.2
把当前目录下bin,加入path  , centos    .bashrc
export PATH="$PATH:/root/istio-1.0.2/bin"

安装istio到kuberbetes集群内

安装istio定义的资源,就是kuberbetes可以定义一些资源,类似数据类型
kubectl apply -f install/kubernetes/helm/istio/templates/crds.yaml

kubeadm安装的kubernetes是有TLS authentication
kubectl apply -f install/kubernetes/istio-demo-auth.yaml

查看是否安装正常

kubectl get svc -n istio-system  注意有istio-sidecar-injector,就是自动注入sidecar,在选择安装bookinfo时,with automatic sidecar injection
kubectl get pods -n istio-system  确保status是,running或者Completed,安装kubernetes时,开启docker proxy代理,这是要docker pull image

安装bookinfo

kubectl label namespace default istio-injection=enabled

kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml

确认安装好

kubectl get services
kubectl get pods      确保status是,running

安装ingress gateway

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

判断设置访问地址,我是电脑上vmware虚拟机内安装

 does [not] have an external load balancer
 
 export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].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

测试,访问

curl -o /dev/null -s -w "%{http_code}\n" http://${GATEWAY_URL}/productpage
200

浏览器访问

打印地址
echo  ${GATEWAY_URL}
替换得到地址     http://${GATEWAY_URL}/productpage
只访问http://${GATEWAY_URL},会提示404不存在,一定要试试全路径

猜你喜欢

转载自blog.csdn.net/c5113620/article/details/82765686