istio-在Kubernetes集群中部署istio和Naftis控制台

此处的Istio在Kubernetes环境下进行安装部署,部署时采用Helm工具进行,Helm客户端部署在Windows操作中。

1. 前置要求

在部署Istio之前,需要具备下面的条件:

  • 已有Kubernetes集群环境,此处的Kubernetes的版本为15.4;
  • 以在Kubernetes集群环境中部署和提供了kubectl和helm工具。

2. 添加istio到Helm仓库

通过执行下面的命令,将istio添加到helm仓库中:

$ helm repo add istio.io https://storage.googleapis.com/istio-release/releases/1.3.2/charts/

3. 下载Istio

当前的Istio发布版本为1.3.2,在浏览器中地址栏中输入地址:https://github.com/istio/istio/releases/tag/1.3.2,浏览器会进入Istio 1.3.2发布版本的下载地址。

在此页面中,根据Helm客户端所使用的操作系统选择合适的安装介质,此处选择istio-1.3.2-win.zip。下载此文件,并将其解压缩到本地。

4. Istio部署安装

在Istio下载完成后,通过下面的步骤进行Istio的安装:

  • 通过执行下面的命令,在Kubernetes集群中创建istio-system命名空间:
$ kubectl create namespace istio-system
  • 安装istio-init chart,以启动所有istio 自定义的资源:
$ helm install install/kubernetes/helm/istio-init --name istio-init --namespace istio-system
  • 通过执行下面的命令在Kubernetes中安装部署istio:
$ helm install install/kubernetes/helm/istio --name istio --namespace istio-system

5. istio控制台Naftis

5.1 Naftis简介

在本方案中,采用小米开源的Naftis作为istio的控制台,Naftis 是一个基于 web 的 Istio dashboard,通过任务模板的方式来帮助用户更方便地执行 Istio 任务。用户可以在 Naftis 中定义自己的任务模板,并填充变量来构造单个或多个构造任务实例,从而完成各种服务治理功能。Naftis的核心功能特性如下:

  • 内部集成了一些常用 dashboard;
  • 可定制的任务模板支持;
  • 支持回滚指定任务;
  • 支持指定根服务节点的服务拓扑图;
  • 支持查看 Istio相关的Services和Pod。

5.1. Naftis安装部署

通过下面的步骤安装和不受Naftis:

  • 下载最新 Naftis发布版本,此处下载的版本为1.4-rc6版本。

下载manifest.tar.gz文件,并将其解压缩到本地:

  • 在Kubernetes集群中创建 Naftis 命名空间:
$ kubectl create namespace naftis
  • 在Kubernetes集群中部署 Naftis MySQL 服务
$ kubectl apply -n naftis -f mysql.yaml
  • 在Kubernetes中部署 Naftis API 和 UI 服务
kubectl apply -n naftis -f naftis.yaml
  • 将Naftis ui的Pod的端口转发到kubectl所在的机器上,允许通过本地访问 Naftis:
kubectl -n naftis port-forward  pod/naftis-ui-9d66dbc74-9swq4 8080:80

5)访问Naftis:

打开浏览器,访问 http://127.0.0.1:8080 即可。默认用户名和密码分别为 admin、admin。

 

 

 

 

作者简介:

季向远,北京神舟航天软件技术有限公司产品经理。本文版权归原作者所有。

K8S中文社区微信公众号

评论 抢沙发

登录后评论

立即登录