【Istio实际操作篇】Istio入门,10分钟快速安装
@[TOC](文章目录)
## 前言
上一篇讲了什么是Istio的理论篇,这次我们就来实际操作。
想看上一篇理论篇的看这里(看完绝对有所收获):
[\[Istio是什么?\] 还不知道你就out了,一文40分钟快速理解_小叶的技术Logs的博客-CSDN博客](https://blog.csdn.net/qq_48450494/article/details/124347864)
## 本文说明 `请大家务必查看`
本文有两个版本,**详细版、简洁版**。
前者适合新手,后者适合老手**(方便大家查找,从而过滤掉某些步骤,节约时间成本)** 所以大家按需查看哟。
| 详细版 | 简洁版 |
| ------ | ------ |
**简洁版**:包含所有步骤,以及命令的执行过程(适合新手)
**简洁版**:只包含命令(适合有一定熟练度的人)<br><br>
## 环境准备
---
| 系统 | Vcpu | Memory | 集群|
| :-----: | :--: | :----: | -------- |
| centos7 | 2 | 8 | kubernetes |
## 详细版<br>
### 入门:搭建步骤
#### Istio软件包下载
**安装最新软件包**
```bash
$ curl -L https://istio.io/downloadIstio | sh - # 安装最新软件包
```
这一条命令如果下载不下来,可以直接访问下载地址:[Istio下载](https://github.com/istio/istio/releases/)
挑选对应的istio版本、下载对应的压缩文件,如图所示:
`注意:Istio1.13.3版本,要求kubernetes最低集群版是1.19`
![在这里插入图片描述](https://img-blog.csdnimg.cn/37af7e311e3d49719b3f2002baeaa497.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5Y-255qE5oqA5pyvTG9ncw==,size_20,color_FFFFFF,t_70,g_se,x_16)
**解压软件包:**
```bash
[root@master istio]# ll
total 22704
-rw-r--r-- 1 root root 23245765 Apr 23 10:39 istio-1.12.3-linux-amd64.tar.gz
[root@master istio]# tar -vzxf istio-1.12.3-linux-amd64.tar.gz
istio-1.12.3/
istio-1.12.3/manifest.yaml
istio-1.12.3/bin/
istio-1.12.3/bin/istioctl
istio-1.12.3/manifests/
istio-1.12.3/manifests/examples/
istio-1.12.3/manifests/examples/customresource/
istio-1.12.3/manifests/examples/customresource/istio_v1alpha1_istiooperator_cr.yaml
istio-1.12.3/manifests/examples/user-gateway/
```
**安装目录包含:**
- samples/ 目录下的示例应用程序
- bin/ 目录下的 istioctl 客户端二进制文件 .
**配置环境变量:**
```bash
[root@master istio]# cat /etc/profile
export ISTIO_HOME=/root/istio/istio-1.12.3
export PATH=$PATH:$ISTIO_HOME/bin
```
```bash
[root@master istio]# istioctl version
client version: 1.12.3
control plane version: 1.12.3
data plane version: 1.12.3 (10 proxies)
```
### 下载Istio
```bash
[root@master ~]# istioctl install --set profile=demo -y
Detected that your cluster does not support third party JWT authentication. Falling back to less secure first party JWT. See https://istio.io/v1.12/docs/ops/best-practices/security/#configure-third-party-service-account-tokens for details.
! values.global.jwtPolicy is deprecated; use Values.global.jwtPolicy=third-party-jwt. See http://istio.io/latest/docs/ops/best-practices/security/#configure-third-party-service-account-tokens for more information instead
WARNING: Istio control planes installed: 1.13.3.
WARNING: An older installed version of Istio has been detected. Running this command will overwrite it.
✔ Istio core installed
✔ Istiod installed
✔ Egress gateways installed
✔ Ingress gateways installed
✔ Installation complete Making this installation the default for injection and validation.
Thank you for installing Istio 1.12. Please take a few minutes to tell us about your install/upgrade experience! https://forms.gle/FegQbc9UvePd4Z9z7
```
**自动注入 Envoy 边车代理**
```bash
[root@master ~]# kubectl label namespace default istio-injection=enabled
namespace/default labeled
```
## 卸载
完整卸载 Istio
```bash
[root@master istio]# istioctl x uninstall --purge
All Istio resources will be pruned from the cluster
Proceed? (y/N) y
Removed IstioOperator:istio-system:installed-state.
Removed PodDisruptionBudget:istio-system:istio-egressgateway.
Removed PodDisruptionBudget:istio-system:istio-ingressgateway.
Removed PodDisruptionBudget:istio-system:istiod.
Removed Deployment:istio-system:istio-egressgateway.
Removed Deployment:istio-system:istio-ingressgateway.
Removed Deployment:istio-system:istiod.
Removed Service:istio-system:istio-egressgateway.
Removed Service:istio-system:istio-ingressgateway.
Removed Service:istio-system:istiod.
Removed ConfigMap:istio-system:istio.
Removed ConfigMap:istio-system:istio-sidecar-injector.
Removed Pod:istio-system:istio-egressgateway-6b69dfb9f8-x7zwb.
Removed Pod:istio-system:istio-ingressgateway-7484f57fd6-hrjjt.
Removed Pod:istio-system:istiod-7989b7749b-rmslt.
```
## 简洁版
### 安装
```bash
[root@master istio]# curl -L https://istio.io/downloadIstio | sh -
[root@master istio]# tar -vzxf istio-1.12.3-linux-amd64.tar.gz
[root@master istio]# cat /etc/profile
export ISTIO_HOME=/root/istio/istio-1.12.3
export PATH=$PATH:$ISTIO_HOME/bin
[root@master ~]# istioctl install --set profile=demo -y
[root@master istio]# kubectl label namespace default istio-injection=enabled
```
### 卸载
```bash
[root@master istio]# istioctl x uninstall --purge
```
# 学习不走弯路,gz号「yeTechLog」
- 点赞
- 收藏
- 关注作者
评论(0)