Istio 1.1部署实践
前提条件
- 正确安装配置Kubernetes集群
- CentOS Linux release 7.5.1804
安装
下载istio 1.1版本
[root@vm157 ~]# wget https://github.com/istio/istio/releases/download/1.1.1/istio-1.1.1-linux.tar.gz……2019-03-26 09:39:06 (483 KB/s) - ‘istio-1.1.1-linux.tar.gz’ saved [15736205/15736205]
Istio安装有多种方式,本文根据helm template生成istio部署的配置文件,其他部署方式请参考官方文档。
[root@vm157 ~]# cd istio-1.1.1/ [root@ruffy istio-1.1.1]# helm template ../install/kubernetes/helm/istio-init --name istio-init --namespace istio-system > istio-init.yaml [root@ruffy istio-1.1.1]# kubectl get crds | grep 'istio.io\|certmanager.k8s.io' | wc -l [root@ruffy istio-1.1.1]# InternalIp=10.20.1.175 [root@ruffy istio-1.1.1]# helm template install/kubernetes/helm/istio --namespace istio-system \ > --set global.mtls.enabled=true \ > --set global.controlPlaneSecurityEnabled=true \ > --set gateways.istio-ingressgateway.type=NodePort \ > --set grafana.enabled=true \ > --set servicegraph.enabled=true \ > --set servicegraph.ingress.enabled=true \ > --set servicegraph.ingress.hosts={servicegraph-istio-system.${InternalIp}.nip.io} \ > --set tracing.enabled=true \ > --set tracing.jaeger.ingress.enabled=true \ > --set tracing.jaeger.ingress.hosts={jaeger-query-istio-system.${InternalIp}.nip.io} \ > --set tracing.ingress.enabled=true \ > --set tracing.ingress.hosts={tracing-istio-system.${InternalIp}.nip.io} \ > --set kiali.enabled=true \ > --set kiali.ingress.enabled=true \ > --set kiali.ingress.hosts={kiali-istio-system.${InternalIp}.nip.io} \ > --set kiali.dashboard.grafanaURL=http://grafana-istio-system.${InternalIp}.nip.io \ > --set kiali.dashboard.jaegerURL=http://jaeger-query-istio-system.${InternalIp}.nip.io \ > --name istio > ruffy/istio-${InternalIp}.yaml[root@vm175 istio-1.1.1]# cd ruffy [root@vm175 ruffy]# ls istio-10.20.1.175.yaml istio-init.yaml namespace.yaml
根据配置模板部署Isito组件
[root@vm175 istio-1.1.1]# kubectl apply -f ruffy/namespace.yaml namespace/istio-system created [root@vm175 istio-1.1.1]# kubectl apply -f ruffy/istio-init.yaml configmap/istio-crd-10 created configmap/istio-crd-11 created serviceaccount/istio-init-service-account created clusterrole.rbac.authorization.k8s.io/istio-init-istio-system configured clusterrolebinding.rbac.authorization.k8s.io/istio-init-admin-role-binding-istio-system configured job.batch/istio-init-crd-10 created job.batch/istio-init-crd-11 created [root@vm175 istio-1.1.1]# kubectl apply -f ruffy/istio-10.20.1.175.yaml poddisruptionbudget.policy/istio-galley created poddisruptionbudget.policy/istio-ingressgateway created poddisruptionbudget.policy/istio-policy created poddisruptionbudget.policy/istio-telemetry created poddisruptionbudget.policy/istio-pilot created …… rule.config.istio.io/promhttp created rule.config.istio.io/promtcp created rule.config.istio.io/promtcpconnectionopen created rule.config.istio.io/promtcpconnectionclosed created handler.config.istio.io/kubernetesenv created rule.config.istio.io/kubeattrgenrulerule created rule.config.istio.io/tcpkubeattrgenrulerule created kubernetes.config.istio.io/attributes created destinationrule.networking.istio.io/istio-policy created destinationrule.networking.istio.io/istio-telemetry created
查看Isito部署状态
[root@vm175 istio-1.1.1]# kubectl -n istio-system get allNAME READY STATUS RESTARTS AGEpod/grafana-7b46bf6b7c-xr2lw 1/1 Running 0 2m pod/istio-citadel-5878d994cc-kfm7p 1/1 Running 0 2m pod/istio-cleanup-secrets-1.1.1-wlk7p 0/1 Completed 0 2m pod/istio-galley-6db4964df6-9lpsl 1/1 Running 0 2m pod/istio-grafana-post-install-1.1.1-44lv7 0/1 Completed 0 2m pod/istio-ingressgateway-cd5df7bc6-sgh5m 0/1 Running 0 2m pod/istio-init-crd-10-q5kvp 0/1 Completed 0 3m pod/istio-init-crd-11-kdd25 0/1 Completed 0 3m pod/istio-pilot-597dd58685-hsp72 1/2 Running 0 2m pod/istio-policy-67f66c8b5c-8kqwm 2/2 Running 5 2m pod/istio-security-post-install-1.1.1-gcjrm 0/1 Completed 0 2m pod/istio-sidecar-injector-59fc9d6f7d-j9prx 0/1 ContainerCreating 0 2m pod/istio-telemetry-c5bfc457f-qqzb5 2/2 Running 4 2m pod/istio-tracing-75dd89b8b4-2t2hl 0/1 ContainerCreating 0 2m pod/kiali-5d68f4c676-bdltq 1/1 Running 0 2m pod/prometheus-89bc5668c-7kp8b 0/1 Init:Error 1 2m pod/servicegraph-57bfbbd697-6tldj 0/1 Running 0 2m……NAME DESIRED SUCCESSFUL AGEjob.batch/istio-cleanup-secrets-1.1.1 1 1 2mjob.batch/istio-grafana-post-install-1.1.1 1 1 2mjob.batch/istio-init-crd-10 1 1 3mjob.batch/istio-init-crd-11 1 1 3mjob.batch/istio-security-post-install-1.1.1 1 1 2m
增加grafana和prometheus的ingress文件
Istio-grafana.yaml
[root@vm175 ruffy]# cat istio-grafana-ingress.yamlapiVersion: extensions/v1beta1kind: Ingressmetadata:name: grafananamespace: istio-systemlabels:app: grafanaannotations:spec:rules:
- host: granafa-istio.10.20.1.175.xip.io http: paths:
- path: / backend: serviceName: grafana servicePort: 3000
Isito-prometheus-ingress.yaml[root@vm175 ruffy]# cat istio-prometheus-ingress.yamlapiVersion: extensions/v1beta1kind: Ingressmetadata:name: istio-prometheusnamespace: istio-systemspec:rules:
- host: prometheus-istio.10.20.1.175.xip.io http: paths:
- path: /prometheus backend: serviceName: prometheus servicePort: 9090}}}
查看部署的组件访问路径{{{[root@vm175 ruffy]# kubectl -n istio-system get ingNAME HOSTS ADDRESS PORTS AGEgrafana granafa-istio.10.20.1.175.xip.io 80 5mistio-prometheus prometheus-istio.10.20.1.175.xip.io 80 5mistio-servicegraph servicegraph-istio-system.10.20.1.175.nip.io 80 56mistio-tracing tracing-istio-system.10.20.1.175.nip.io 80 56mkiali kiali-istio-system.10.20.1.175.nip.io 80 56m
访问kiali时,出现secret不存在的情况,需要通过kiali-secret.yaml文件创建secret,并且重启kiali服务。
Kiali-secret.yaml文件
[root@vm175 ruffy]# cat kiali-secret.yamlapiVersion: v1kind: Secretmetadata:name: kialinamespace: istio-systemlabels:app: kialitype: Opaquedata:username: "YWRtaW4="passphrase: "YWRtaW4="
访问Kiali
浏览器输入地址:http://kiali-istio-system.10.2 ... iali/
用户名/密码:admin/admin
访问servicegraph
浏览器输入地址:http://servicegraph-istio-syst ... .html
访问tracing
浏览器输入地址:http://servicegraph-istio-syst ... .html
访问granafa
浏览器输入地址:http://granafa-istio.10.20.1.1 ... d%3D1
至此 Istio1.1及其依赖组件搭建完毕。
转载于:https://www.cnblogs.com/lvcisco/p/10800353.html
Istio 1.1部署实践相关推荐
- 云端设计平台Coohom在生产环境中使用istio的经验与实践
介绍 自从istio-1.0.0在今年发布了正式版以后,Coohom项目在生产环境中也开启了使用istio来作为服务网格. 本文将会介绍与分享在Coohom项目在使用istio中的一些实践与经验. C ...
- 云原生服务网格Istio:原理、实践、架构与源码解析
华为云原生团队600多页的Istio实战精华总结,云原生服务网格Istio:原理.实践.架构与源码解析的电子书. 图书介绍 <云原生服务网格Istio:原理.实践.架构与源码解析>分为原理 ...
- 中通物流基于 KubeSphere 在生产环境的开发与部署实践
背景 中通物流是国内业务规模较大,第一方阵中发展较快的快递企业.2019年,中通各类系统产生的数据流以亿计,各类物理机和虚拟机成千上万,在线微服务更是数不胜数.如此庞大的管理,使得中通业务发展不可持续 ...
- TVM优化c++部署实践
TVM优化c++部署实践 使用TVM导入神经网络模型: 模型支持pytorch , tensorflow , onnx, caffe 等.平时pytorch用的多,这里给一种pytorch的导入方式. ...
- 容器化部署实践之Django应用部署(二)
上一篇文章有些同学感觉不够详细理解起来有些困难,我再来简单解释一下. 我们在开发的情况下: 浏览器请求→ python manage.py runserver(比如8000) → 到应用代码( ...
- 基于 Docker 和 GitLab 的前端自动化部署实践笔记
基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛 ...
- centos 安装mysql5.7_Zabbix 4.2.5 安装部署实践详解
[导读]云计算背景下,无论是大数据.物联网还是边缘计算,规模化后大量的设备需要保证正常运行,在人员一定的情况下,就需要提高运行维护效率.同时随着智能化被应用在人们生活的方方面面,关联性也越来越紧密,即 ...
- 网易云海外推流部署实践
谈到直播,实时性和流畅性一直是整个服务体系中的重中之重.本文是网易云通信视频技术开发工程师何荣光在LiveVideoStack Meet杭州站沙龙的分享,着重梳理网易云在海外推流方面的部署实践,帮助开 ...
- tftp 服务器 ip_360Stack裸金属服务器部署实践
女主宣言 裸金属特性是一种将物理设备作为资源提供给租户的云计算服务,租户通过该服务可申请.管理和配置相应的物理设备资源,本文将介绍360Stack裸金属服务器的部署实践. PS:丰富的一线技术.多元化 ...
最新文章
- 深入理解并行编程-分割和同步设计(一)
- 计蒜客 三值排序 (模拟)
- 域环境下用组策略禁止客户机更改IP
- lgg6 android 9,LG G6的18:9屏幕用起来到底是什么样
- MaxCompute使用常见问题总结
- python pyecharts map不显示_pyecharts 地图不显示问题
- 20151209小问题
- 论文Mathtype公式自动编号
- springMVC浏览器接受json报406错误的解决方法
- [android视频教程] 传智播客android开发视频教程
- 浅谈敏捷思想-05.精益画布电梯演讲
- arcgis裁剪后发现部分矢量缺失
- net.sf.json.JSONException: JSONObject[节点名称] not found解决方法
- itext修改pdf文字
- 2030年,程序员工资还能达到现在的水平吗?
- AdGuard推荐设置
- qscoj 11 喵哈哈村的括号序列
- linux开发板ftp,用ftp从linux上下载文件到开发板的方法
- oracle 中 in函数
- 这款 MySQL、Oracle、HDFS 数据同步工具,有点牛逼!