前言
本文主要记录公司技术栈由SpringCloud向Service Mesh转型过程中本地技术验证,仅供个人参考使用。Kubernetes的安装主要参考其2.0.4版本的官方文档。Istio Ingress配置主要参考其相关Task文档。
一、前置条件
Istio 已安装配置好,或参考文章Istio学习笔记:Istio及Kiali的安装与配置进行实验配置。
二、安装步骤
1.安装Kubernetes Dashboard
根据官方的指导生成证书
#生成密钥及签名请求
openssl genrsa -des3 -passout pass:over4chars -out dashboard.pass.key 2048
openssl rsa -passin pass:over4chars -in dashboard.pass.key -out dashboard.key
openssl req -new -key dashboard.key -out dashboard.csr
#生成SSL证书
openssl x509 -req -sha256 -days 365 -in dashboard.csr -signkey dashboard.key -out dashboard.crt
[root@k8s-master dashboard]# ll dashboard.*
-rw-r--r--. 1 root root 1143 Sep 29 01:05 dashboard.crt
-rw-r--r--. 1 root root 972 Sep 29 01:04 dashboard.csr
-rw-r--r--. 1 root root 1675 Sep 29 01:03 dashboard.key
-rw-r--r--. 1 root root 1743 Sep 29 01:03 dashboard.pass.key
创建命名空间并设置label启用istio自动注入
创建namespace
kubectl create namespace kubernetes-dashboard
#开启istio自动注入
kubectl label namespace kubernetes-dashboard istio-injection=enabled
下载安装文件 recommended.yaml, 进行相应的修改:
vi recommended.yaml
#注释掉namespace创建的代码,不注释也可以,kubectl apply -f 会提示warnning,不影响
...
#apiVersion: v1
#kind: Namespace
#metadata:
# name: kubernetes-dashboard
...
#修改kubernetes-dashboard deployment
...
#添加上app及version标签
app: kubernetes-dashboard
version: v1
#在s