Istio1.1.8部署
istio安装
整体步骤:
完成必要的 Kubernetes 平台设置
检查对 Pod 和服务的要求。
安装之前的下载和准备
Istio 会被安装到自己的 istio-system
命名空间,并且能够对所有其他命名空间的服务进行管理。
1. 进入 Istio release 页面,下载对应目标操作系统的安装文件。在 macOS 或者 Linux 系统中,还可以运行下面的命令,进行下载和自动解压缩:
$ curl -L https://git.io/getLatestIstio | ISTIO_VERSION=1.1.8 sh -
进入 Istio 包目录。例如,假设这个包是 istio-1.1.8
:
$ cd istio-1.1.8
安装目录中包含:
在
install/
目录中包含了 Kubernetes 安装所需的.yaml
文件samples/
目录中是示例应用istioctl
客户端文件保存在bin/
目录之中。istioctl
的功能是手工进行 Envoy Sidecar 的注入。istio.VERSION
配置文件
把 istioctl
客户端加入 环境变量,如果是 macOS 或者 Linux,可以这样实现:
$ cp -ar bin/istioctl /usr/local/bin/
$ source /etc/profile
$ istioctl version
version.BuildInfo{Version:"1.1.8", GitRevision:"145b18a441045d6fad33d7916380d8642c7bf21d", User:"root", Host:"11387264-87af-11e9-b00d-0a580a2c0205", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", Build
Status:"Clean", GitTag:"1.1.7-14-g145b18a"}
Helm Chart Release 仓库
要使用 Istio Release Helm Chart 仓库,请通过以下方式添加 Istio Release 仓库:
$ helm repo add istio.io https://storage.googleapis.com/istio-release/releases/1.1.8/charts/
方案 :在 Helm 和 Tiller 的环境中使用 helm install
命令进行安装
这个方案使用 Helm 和 Tiller 来对 Istio 的生命周期进行管理。
1. 如果没有为 Tiller 创建 Service account,就创建一个:
$ kubectl apply -f install/kubernetes/helm/helm-service-account.yaml
使用 Service account 在集群上安装 Tiller:
$ helm init --service-account tiller
安装 istio-init
chart,来启动 Istio CRD 的安装过程:
$ helm install install/kubernetes/helm/istio-init --name istio-init --namespace istio-system
使用如下命令以确保全部 53 个 Istio CRD 被提交到 Kubernetes api-server:
如果你启用了 cert-manager,那么 CRD 的数目为58个。
$ kubectl get crds | grep 'istio.io\|certmanager.k8s.io' | wc -l
53
选择一个 配置文件,接着部署与你选择的配置文件相对应的 Istio 的核心组件,我们建议在生成环境部署中使用 default 配置文件:
helm install install/kubernetes/helm/istio --name istio --namespace istio-system \
--values install/kubernetes/helm/istio/values-istio-demo.yaml
你可以添加一个或多个 --set <key>=<value>
来进一步自定义 helm 命令的 安装选项 。
生产上的一个自定义values
确认安装情况
查询配置文件中的组件表, 验证 Helm 是否已经部署了与所选配置文件相对应的 Kubernetes services 服务:
$ kubectl get svc -n istio-system
确保部署了相应的 Kubernetes pod 并且 STATUS
是 Running
的:
$ kubectl get pods -n istio-system
卸载
如果你使用
helm template
命令安装的 Istio,使用如下命令卸载 :
$ helm template install/kubernetes/helm/istio --name istio --namespace istio-system \
--values install/kubernetes/helm/istio/values-istio-demo.yaml | kubectl delete -f -
$ kubectl delete namespace istio-system
如果你使用的Helm 和 Tiller 安装的 Istio,使用如下命令卸载:
$ helm delete --purge istio
$ helm delete --purge istio-init
删除 CRD 和 Istio 配置
Istio 的设计中,其自定义资源以 CRD 的形式存在于 Kubernetes 环境之中。CRD 中包含了运维过程中产生的运行时配置。正因如此,我们建议运维人员应该显式的对其进行删除,从而避免意外操作。
CRD 的删除,意味着删掉所有的用户配置。
istio-init
Chart 包含了 istio-init/files
目录中的所有原始 CRD。下载该 Chart 之后,可以简单的使用 kubectl
删除 CRD。要永久删除 Istio 的 CRD 以及所有 Istio 配置,请运行如下命令:
$ kubectl delete -f install/kubernetes/helm/istio-init/files
Istio1.1.8部署的更多相关文章
- 基于 K8S 集群安装部署 istio-1.2.4
使用云平台可以为组织提供丰富的好处.然而,不可否认的是,采用云可能会给 DevOps 团队带来压力.开发人员必须使用微服务以满足应用的可移植性,同时运营商管理了极其庞大的混合和多云部署.Istio 允 ...
- Istio(二):在Kubernetes(k8s)集群上安装部署istio1.14
目录 一.模块概览 二.系统环境 三.安装istio 3.1 使用 Istioctl 安装 3.2 使用 Istio Operator 安装 3.3 生产部署情况如何? 3.4 平台安装指南 四.Ge ...
- k8s(openshift) 部署istio1.1
准备工作: openshift 默认不允许UID为0的容器运行,要先授权scc以便安装istio # oc adm policy add-scc-to-user anyuid -z istio-ing ...
- 部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)
部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序 在下载的Istio安装包的samples目录中包含了示例应用程序. ...
- istio1.0.2配置
项目的组件相对比较复杂,原有的一些选项是靠 ConfigMap 以及 istioctl 分别调整的,现在通过重新设计的Helm Chart,安装选项用values.yml或者 helm 命令行的方式来 ...
- helm 部署
Helm 基本概念 Helm 可以理解为 Kubernetes 的包管理工具,可以方便地发现.共享和使用为Kubernetes构建的应用,它包含几个基本概念 Chart:一个 Helm 包,其中包含了 ...
- Istio 1.1部署实践
前提条件 正确安装配置Kubernetes集群 CentOS Linux release 7.5.1804 安装 下载istio 1.1版本 [root@vm157 ~]# wget https:// ...
- istio部署-helm
参考 istio/istio istio/Kubernetes Customizable Install with Helm Istio安装参数介绍 1. Istio Chart 目录结构 PATH: ...
- istio部署-快速入门
参考 istio/istio Quick Start Evaluation Install fleeto/sleep fleeto/flaskapp 本文为 istio 快速入门部署,一般用于演示环境 ...
随机推荐
- [转]TrueType(TTF)字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪)
原文入口: TTF字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪) 对于TrueType(TTF)字体格式的介绍可以看: https://www.cnblogs.com/slysky/p/1131 ...
- Maven 常用工具类整理
目录 1.Apache Commons 1.1.字符串处理 1.2.集合操作 1.3.IO操作 1.4.编解码操作 2.Google Guava 2.1.多场景使用 2.2.guava-retryin ...
- MySQL慢查询参数
开启mysql慢查询日志 修改/etc/mysql/my.cnf配置文件,添加: [mysqld]slow_query_log = onslow_query_log_file = /var/lib/m ...
- allure与junit结合生成漂亮的demo
1.allure安装 环境配置可参考https://blog.csdn.net/huggh/article/details/90905845,且博客中也分享了官网的案例https://github.c ...
- jquery与angular的交互
HTML: <table class="table table-striped" ng-app="myApp"> <tr> <th ...
- Centos7之阿里Arthas部署
阿里Arthas Arthas(阿尔萨斯)是Alibaba开源的一个Java诊断工具,无需做任何配置,就可以直观的获取各种维度的性能数据,方便开发者进行问题的定位和诊断. 应用场景 动态跟踪Java代 ...
- Emiya 家今天的饭
\(dp_{i,j,k}\)表示前\(i\)种烹饪方法,假设最多的是食材\(j\),食材\(j\)比其他食材多\(k\)次出现 其中\(i \in [1,n],j \in [1,m],k \in [- ...
- python 判断一个对象是可迭代对象
那么,如何判断一个对象是可迭代对象呢?方法是通过collections模块的Iterable类型判断: >>> from collections import Iterable &g ...
- python 通过Sybase ASE ODBC Driver访问sybase数据库,无需配置DSN【自己整理的】
Python语言对于开发工程师或者测试工程师来说,应该是最高效的开发语言之一.但python访问sybase数据库的资料相对少见.而且sybase字符集为GB1803时,python访问sybase库 ...
- Maven聚合项目的创建
1.项目结构如下 步骤如下: 点击Finish 这里父项目需要加入如下的构建依赖: <dependencyManagement> <dependencies> <depe ...