创建 istio 目录
[root@centos-110 ~]# mkdir istio
[root@centos-110 ~]# cd istio
 
方案一:
# 去下面的地址下载压缩包 
$ tar -zvxf istio-1.0.0-linux.tar.gz
 
方案二:
# 使用官方的安装脚本安装
运行如下命令,自动下载并解压最新的发布包
 
[root@centos-110 istio]# curl -L https://git.io/getLatestIstio | sh -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:09 --:--:--     0
100  1456  100  1456    0     0     73      0  0:00:19  0:00:19 --:--:--   388
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   614    0   614    0     0     60      0 --:--:--  0:00:10 --:--:--   133
100 14.1M  100 14.1M    0     0   270k      0  0:00:53  0:00:53 --:--:--  464k
Downloaded into istio-1.0.0:
bin  install  istio.VERSION  LICENSE  README.md  samples  tools
Add /root/istio/istio-1.0.0/bin to your path; e.g copy paste in your shell and/or ~/.profile:
export PATH="$PATH:/root/istio/istio-1.0.0/bin"
[root@centos-110 istio]#
 
安装目录包含如下内容:
  • 在 install/ 目录中包含了 Kubernetes 安装所需的 .yaml 文件
  • samples/ 目录中是示例应用
  • istioctl 客户端文件保存在 bin/ 目录之中。istioctl 的功能是手工进行 Envoy Sidecar 的注入,以及对路由规则、策略的管理
  • istio.VERSION 配置文件
 
 
# 安装配置环境变量
编辑/etc/profile,添加istioctl 到PATH
[root@centos-110 istio-1.0.0]# vim /etc/profile
在profile文件底部,增加如下一行:
export PATH=$PATH:/root/istio/istio-1.0.0/bin
 
执行source命令,使修改马上生效
[root@centos-110 istio-1.0.0]# source /etc/profile
[root@centos-110 istio-1.0.0]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/istio/istio-1.0.0/bin
 
验证istioctl 安装成功
[root@centos-110 bin]# istioctl version
Version: 1.0.0
GitRevision: 3a136c90ec5e308f236e0d7ebb5c4c5e405217f4
User: root@71a9470ea93c
Hub: gcr.io/istio-release
GolangVersion: go1.10.1
BuildStatus: Clean
 
# 安装Istio的CRD(Custom Resource Definitions)
kubectl apply -f install/kubernetes/helm/istio/templates/crds.yaml
 
# 安装Istio - Sidecars之间不启用TLS认证
$ kubectl apply -f install/kubernetes/istio-demo.yaml
需要拉取镜像:
 
示例:拉取 gcr.io/istio-release/citadel:1.0.0 镜像
1.0.0: Pulling from istio-release/citadel
887bbdf2518e: Pull complete
549fcf855a71: Pull complete
1c1bf79cad30: Pull complete
Digest: sha256:01d182138511deba644e039ecccf87b048c3a88f12e8f0085c873ef7d1734dbf
[root@centos-110 ~]# docker tag registry.cn-hangzhou.aliyuncs.com/istio-release/citadel:1.0.0 gcr.io/istio-release/citadel:1.0.0
 
示例:拉取 gcr.io/istio-release/galley:1.0.0 镜像
[root@centos-110 ~]# docker tag registry.cn-hangzhou.aliyuncs.com/istio-release/galley:1.0.0 gcr.io/istio-release/galley:1.0.0
 
示例:拉取 gcr.io/istio-release/pilot:1.0.0 镜像
docker tag registry.cn-hangzhou.aliyuncs.com/istio-release/pilot:1.0.0 gcr.io/istio-release/pilot:1.0.0
 
示例:拉取 gcr.io/istio-release/sidecar_injector:1.0.0 镜像
docker pull registry.cn-hangzhou.aliyuncs.com/istio-release/sidecar_injector:1.0.0
docker tag registry.cn-hangzhou.aliyuncs.com/istio-release/sidecar_injector:1.0.0 gcr.io/istio-release/sidecar_injector:1.0.0
docker rmi registry.cn-hangzhou.aliyuncs.com/istio-release/sidecar_injector:1.0.0
 
拉取其他镜像的类似,只需要简单替换一下 image name 即可。
 
参考上面的docker 命令,获取如下所有镜像:
gcr.io/istio-release/citadel:1.0.0
gcr.io/istio-release/galley:1.0.0
gcr.io/istio-release/proxyv2:1.0.0
gcr.io/istio-release/grafana:1.0.0
gcr.io/istio-release/mixer:1.0.0
gcr.io/istio-release/servicegraph:1.0.0
gcr.io/istio-release/pilot:1.0.0
gcr.io/istio-release/sidecar_injector:1.0.0
 
下面这个镜像是sidecar 自动注入是需要使用的镜像:
gcr.io/istio-release/proxy_init:1.0.0
 
docker tag registry.cn-hangzhou.aliyuncs.com/istio-release/proxy_init:1.0.0 gcr.io/istio-release/proxy_init:1.0.0
 
验证安装结果
确认下列 Kubernetes 服务已经部署:istio-pilot、 istio-ingressgateway、istio-policy、istio-telemetry、prometheus 、istio-sidecar-injector(可选)。
kubectl get svc -n istio-system
 
确保所有相应的Kubernetes pod都已被部署且所有的容器都已启动并正在运行:istio-pilot-*、istio-ingressgateway-*、istio-egressgateway-*、istio-policy-*、istio-telemetry-*、istio-citadel-*、prometheus-*、istio-sidecar-injector-*(可选)。
kubectl get pods -o wide -n istio-system
 
从上面的输出可以看到,这里部署的主要是Istio控制面的服务,而数据面的网络代理要如何部署呢?
根据服务网格(Service Mesh)的架构可以得知,网络代理是随着应用程序以sidecar的方式部署的,在下面部署Bookinfo示例程序时会演示如何部署网络代理。
 
至此,Istio 已经安装完成了。:)
参考链接:
注入 Istio sidecar
Install with helm
控制 Ingress 流量
Bookinfo 应用
Istio及Bookinfo示例程序安装试用笔记

安装istio v1.0 详细过程和步骤的更多相关文章

  1. VmWare下安装Linux Centos6.0详细过程

    http://www.linuxidc.com/Linux/2012-12/76583.htm和http://mirrors.163.com/centos/6.5/isos/i386/这是有关VmWa ...

  2. 部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)

    部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序   在下载的Istio安装包的samples目录中包含了示例应用程序. ...

  3. Ubuntu学习总结-01 用VMware 8安装Ubuntu 12.04详细过程

    1 Ubuntu 下载地址 http://www.ubuntu.com/download/desktop 2 安装Ubuntu 转载用VMware 8安装Ubuntu 12.04详细过程 http:/ ...

  4. docker安装与配置gitlab详细过程

    docker安装与配置gitlab详细过程 1.打开网易镜像中心 https://c.163yun.com/hub#/m/home/ 2.搜索gitlab,获取下载地址.例如:docker pull  ...

  5. Webpack安装配置及打包详细过程

    引言 前端经过漫长的发展,涌现出了很多实践方法来处理复杂的工作流程,让开发变得更加简便,其中,模块化可以使复杂的程序细化成为各个小的文件,而webpack并不强制你使用某种模块化方案,而是通过兼容所有 ...

  6. 【转】用VMware 8安装Ubuntu 12.04详细过程(图解)

    图解演示环境版本: 本机系统: WIN7 虚拟机:VMware Workstation 8 (英文版) 安装目标:Ubuntu Desktop 12.04 LTS  (请点击这里)先下载好iso镜像文 ...

  7. Ubuntu 16.04 上安装 CUDA 9.0 详细教程

    https://blog.csdn.net/QLULIBIN/article/details/78714596 前言: 本篇文章是基于安装CUDA 9.0的经验写,CUDA9.0目前支持Ubuntu1 ...

  8. linux 安装 Elasticsearch6.4.0详细步骤以及问题解决方案

    1.jdk 安装 参考资料:https://www.cnblogs.com/shihaiming/p/5809553.html 2.elasticsearch 安装 下载:https://artifa ...

  9. CentOS7安装Oracle 11g R2 详细过程——零基础

    本人linux小白,因项目原因必须要在linux下使用oracle便开始了探索.安装过程中遇到了种种问题与原因,今天整理一下方便后面的可以少走弯路. *注明: 安装过程注意当前错作的用户,执行./ru ...

随机推荐

  1. python之squid实现免费 IP代理 (windows win7 单机 本机 本地 正向代理 区分 HTTPS)

    0.目录 1.思路2.windows安装3.相关命令行4.简单配置和初步使用5.问题:squid是否支持HTTPS6.问题:配置多个代理条目,相同ip不同port报错7.问题:根据代理请求区分HTTP ...

  2. [转]PyCharm安装及使用

    https://www.jianshu.com/p/042324342bf4 PyCharm 搭建环境 1.win10_X64,其他Win版本也可以. 2.PyCharm版本:Professional ...

  3. Cyclic Nacklace hdu3746 kmp 最小循环节

    题意:给出一段字符串  求最少在最右边补上多少个字符使得形成循环串(单个字符不是循环串) 自己乱搞居然搞出来了... 想法是:  如果nex[len]为0  那么答案显然是补len 否则  答案为循环 ...

  4. C/C++中如何获取数组的长度(宏&模板)

    C.C++中没有提供 直接获取数组长度的函数.对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方法是使 用  sizeof(array) ...

  5. 爬虫3 requests基础之下载图片用content(二进制内容)

    res = requests.get('http://soso3.gtimg.cn/sosopic/0/11129365531347748413/640') # print(res.content) ...

  6. appium-电脑连不上手机设备如何解决

    在自动化过程中,会遇到电脑无法连接到手机情况,首先在cmd命令输入adb devices查看是否报错,报错绝大可能是5037端口被占用了,因为adb默认绑定的是5037端口 1.查看占用端口的进程PI ...

  7. Splay的初步学习

    具体是啥,qwq 有时间再补吧,贴一下代码: #include<iostream> #include<cstdio> #include<cstring> #incl ...

  8. Java的运算符

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.下面介绍JAVA中的运算符: (1)算术运算符: 单目:+(取正) -(取负) ++(自增1) --(自减1) 双目:+ - * / % ...

  9. shell编程第一天

    shell编程基础 脚本:简单来说就是一条条的文字命令(一些指令的堆积)Shell属于内置的脚本 1.程序开发效率非常高,依赖于功能强大的命令可以迅速地完成开发任务(批处理) 2.语法简单,代码写起来 ...

  10. 2017-9-17-Windows Live Writer常用快捷键

    Window Live Writer常用的快捷键: 将当前文章发布到博客:CTRL+SHIFT+P 打开新文章: CTRL+N 将草稿保存到计算机上: CTRL+S 切换到"普通" ...