3月20日,Istio 1.1版本正式发布,我们已在《全方位解读 | Istio v1.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]# lsistio-10.20.1.175.yaml  istio-init.yaml         namespace.yaml

根据配置模板部署Isito组件

[root@vm175 istio-1.1.1]# kubectl apply -f ruffy/namespace.yamlnamespace/istio-system created         [root@vm175 istio-1.1.1]# kubectl apply -f ruffy/istio-init.yamlconfigmap/istio-crd-10 createdconfigmap/istio-crd-11 createdserviceaccount/istio-init-service-account createdclusterrole.rbac.authorization.k8s.io/istio-init-istio-system configuredclusterrolebinding.rbac.authorization.k8s.io/istio-init-admin-role-binding-istio-system configuredjob.batch/istio-init-crd-10 createdjob.batch/istio-init-crd-11 created[root@vm175 istio-1.1.1]# kubectl apply -f ruffy/istio-10.20.1.175.yamlpoddisruptionbudget.policy/istio-galley createdpoddisruptionbudget.policy/istio-ingressgateway createdpoddisruptionbudget.policy/istio-policy createdpoddisruptionbudget.policy/istio-telemetry createdpoddisruptionbudget.policy/istio-pilot created……rule.config.istio.io/promhttp createdrule.config.istio.io/promtcp createdrule.config.istio.io/promtcpconnectionopen createdrule.config.istio.io/promtcpconnectionclosed createdhandler.config.istio.io/kubernetesenv createdrule.config.istio.io/kubeattrgenrulerule createdrule.config.istio.io/tcpkubeattrgenrulerule createdkubernetes.config.istio.io/attributes createddestinationrule.networking.istio.io/istio-policy createddestinationrule.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          2mpod/istio-citadel-5878d994cc-kfm7p            1/1       Running             0          2mpod/istio-cleanup-secrets-1.1.1-wlk7p         0/1       Completed           0          2mpod/istio-galley-6db4964df6-9lpsl             1/1       Running             0          2mpod/istio-grafana-post-install-1.1.1-44lv7    0/1       Completed           0          2mpod/istio-ingressgateway-cd5df7bc6-sgh5m      0/1       Running             0          2mpod/istio-init-crd-10-q5kvp                   0/1       Completed           0          3mpod/istio-init-crd-11-kdd25                   0/1       Completed           0          3mpod/istio-pilot-597dd58685-hsp72              1/2       Running             0          2mpod/istio-policy-67f66c8b5c-8kqwm             2/2       Running             5          2mpod/istio-security-post-install-1.1.1-gcjrm   0/1       Completed           0          2mpod/istio-sidecar-injector-59fc9d6f7d-j9prx   0/1       ContainerCreating   0          2mpod/istio-telemetry-c5bfc457f-qqzb5           2/2       Running             4          2mpod/istio-tracing-75dd89b8b4-2t2hl            0/1       ContainerCreating   0          2mpod/kiali-5d68f4c676-bdltq                    1/1       Running             0          2mpod/prometheus-89bc5668c-7kp8b                0/1       Init:Error          1          2mpod/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.iohttp:paths:- path: /backend:serviceName: grafanaservicePort: 3000Isito-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.iohttp:paths:- path: /prometheusbackend:serviceName: prometheusservicePort: 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.20.1.175.nip.io/kiali/

用户名/密码:admin/admin

访问servicegraph

浏览器输入地址:http://servicegraph-istio-system.10.20.1.175.nip.io/force/forcegraph.html

访问tracing

浏览器输入地址:http://servicegraph-istio-system.10.20.1.175.nip.io/force/forcegraph.html

访问granafa

浏览器输入地址:http://granafa-istio.10.20.1.175.xip.io/d/TSEY6jLmk/istio-galley-dashboard?refresh=5s&orgId=1

至此 Istio1.1及其依赖组件搭建完毕。

转载于:https://blog.51cto.com/11976981/2369739

Istio 1.1安装部署实践相关推荐

  1. centos 安装mysql5.7_Zabbix 4.2.5 安装部署实践详解

    [导读]云计算背景下,无论是大数据.物联网还是边缘计算,规模化后大量的设备需要保证正常运行,在人员一定的情况下,就需要提高运行维护效率.同时随着智能化被应用在人们生活的方方面面,关联性也越来越紧密,即 ...

  2. 时空大数据实践之GeoWave安装部署实践

    2019独角兽企业重金招聘Python工程师标准>>> 时空大数据实践之GeoWave安装部署实践 GeoWave是由国家地理空间情报局(NGA)与RadiantBlue和Booz ...

  3. Zabbix 4.2.5 安装部署实践详解

    一.安装 1.安装CentOS操作系统,并配置网络 2.安装Zabbix官方源 rpm -ivh http://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zab ...

  4. 【原创 HadoopSpark 动手实践 1】Hadoop2.7.3 安装部署实践

    目录: 第一部分:操作系统准备工作: 1. 安装部署CentOS7.3 1611 2. CentOS7软件安装(net-tools, wget, vim等) 3. 更新CentOS7的Yum源,更新软 ...

  5. Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)

    原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二) Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 ...

  6. k8s安装部署Istio

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 Istio简介 Istio 官方推荐使用 Helm 来安装,Istio 中的很多组件都可以选择安装或开启,因此 Helm chart 也是组合式的,下 ...

  7. Greenplum学习实践-【安装部署】-2、 5.10集群部署

    Greenplum学习实践-[安装部署]-2. 5.10集群部署 第 1 章** 环境说明 1.1 官方文档 Greenplum官方安装说明: https://gpdb.docs.pivotal.io ...

  8. 2021年最新 k8s安装部署步骤 kubernetes从入门到实践 K8S实战容器化迁移实战教程 K8S存储之Ceph分布式存储系统 K8S架构师实战指南

    2021年最新 k8s安装部署步骤 kubernetes从入门到实践 K8S实战容器化迁移实战教程 K8S存储之Ceph分布式存储系统 K8S架构师实战指南

  9. 升讯威微信营销系统开发实践:(4)源代码结构说明 与 安装部署说明( 完整开源于 Github)...

    GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction因为个人精力时间有限,不会再对现有代码进行更新维护,不过微信接口比较稳定,经测试至 ...

最新文章

  1. 使用maven工程实现Mybatis自动生成Mapper文件
  2. 中国联通通用服务器集中采购项目,中国联通启动通用服务器集采:预采购12.4万台...
  3. tf.nn.sparse_softmax_cross_entropy_with_logits()与tf.nn.softmax_cross_entropy_with_logits的差别
  4. JZOJ 5662. 【GDOI2018Day1模拟4.17】尺树寸泓
  5. c语言实验答案周信东第三章,桂林电子科技大学C语言程序设计习题答案周信东实验顺序结构与逻辑运算.pdf...
  6. leetcode32 --- longestValidParentheses
  7. python psutil替代_Python2.7 psutil模块
  8. 昨天晚上的总结--人跟人的区别在于想的多少吧
  9. nginx websocket wss 连接失败 failed_Nginx 配置WSS 解析与实战
  10. C语言小游戏之贪吃蛇
  11. IndexedDB封装
  12. Input Director使用一个键盘和鼠标即可控制多台Windows计算机
  13. oracle恢复删除的表
  14. 2021年危险化学品生产单位安全生产管理人员考试内容及危险化学品生产单位安全生产管理人员新版试题
  15. 微信开发者账号APPID过久不用被冻结解决方案
  16. win11恢复win10的右击菜单,自测可用
  17. android 远吗编译 刷机 小米,小米10/小米10 Pro系统源代码现已开源,能刷机才是为发烧而生...
  18. 三菱PLC控制步进驱动器脉冲定位相关(附代码接线图)
  19. EasyUi(完整版)
  20. ManualResetEvent,AutoResetEvent 学习

热门文章

  1. 基于多因子模型的中证500增强组合
  2. BufferKnife8.8.1和Android ButterKnife Zelezny的添加与使用
  3. 解决pcb搭线问题的过程
  4. 尚硅谷大厂面试题第二季(上)
  5. 公司展厅装修有哪些注意事项
  6. c语言中右键菜单怎么做,HTML5中原生的右键菜单创建方法
  7. 带你去看快手数据管治技术交流会-模型规范 | 彭文华
  8. Oracle分批提交DML
  9. 千万别再瞎学Python了(当心学废了),过来人的一些学习经验,能让你少走弯路
  10. PhysX3.4文档(14) -- Scene Queries