美文网首页
helm部署Linkerd2

helm部署Linkerd2

作者: 行者深蓝 | 来源:发表于2021-08-13 16:25 被阅读0次

环境信息

  1. Kubernetes:v1.20.6
  2. StorageClass:csi-udisk-rssd
  3. Helm:v3.5.2
  4. nginx-ingress: 0.47.0

本安装前准备工作

1. 同步海外源镜像

在国内环境部署应用,经常因为获取国外源站容器镜像超时,导致部署失败,可以提前将容器镜像同步到本地镜像仓库中,以自有镜像仓库uhub.service.ucloud.cn/ucloud_pts 为例,login仓库,执行命令: docker login uhub.service.ucloud.cn/ucloud_pts
需要同步镜像列表如下:

for IMG in \
cr.l5d.io/linkerd/proxy-init:v1.3.11 \
cr.l5d.io/linkerd/proxy:stable-2.10.2
do
  echo $IMG
  docker pull $IMG 
  docker tag $IMG uhub.service.ucloud.cn/ucloud_pts/$IMG
  docker push uhub.service.ucloud.cn/ucloud_pts/$IMG
done

关于docker pull tag push 操作可以参考:

2. 创建 imagePullSecrets

创建容器集群访问仓库地址 uhub.service.ucloud.cn/ucloud_pts,拉取镜像需要的 secret

kubectl create namespace monitor
kubectl create secret docker-registry registry-linkerd-secret \
        --namespace=linkerd \
        --docker-server=uhub.service.ucloud.cn/ucloud_pts \
        --docker-username='xxxxxx' \
        --docker-password='xxxxxx'

3. 添加 Helm仓库

这里选用 linkerd 提供的chart仓库
helm repo add linkerd https://helm.linkerd.io/stable helm repo update

4. 为命名空间添加配置

linkerd 作为控制平面,kube-system 作为k8s组件的运行空间,均不需要ServiceMesh化

kubectl label namespace linkerd \
config.linkerd.io/admission-webhooks=disabled --overwrite
kubectl label namespace kube-system \
config.linkerd.io/admission-webhooks=disabled --overwrite

5. 创建mtls证书

使用 step 创建集群内通讯的证书

wget https://github.com/smallstep/cli/releases/download/v0.16.1/step_linux_0.16.1_amd64.tar.gz
tar -xpvf step_linux_0.16.1_amd64.tar.gz
cp step_0.16.1/bin/step  /usr/bin

step certificate create root.linkerd.admin.local \
ca.crt ca.key --profile root-ca --no-password --insecure

step certificate create identity.linkerd.admin.local \
issuer.crt issuer.key --profile intermediate-ca \
--not-after 8760h \
--no-password \
--insecure \
--ca ca.crt --ca-key ca.key

6. 完成linkerd核心组件的安装

cat > linkerd-values.yaml << EOF
clusterDomain: admin.local
clusterNetworks: "10.0.0.0/8,100.64.0.0/10,172.16.0.0/12,192.168.0.0/16"
installNamespace: false
namespace: linkerd 
proxy:
  image:
    name: harbor.onwalk.net/pts/cr.l5d.io/linkerd/proxy
    version: stable-2.10.2
proxyInit:
  image:
    name: harbor.onwalk.net/pts/cr.l5d.io/linkerd/proxy-init
    version: v1.3.11
EOF

helm upgrade --install linkerd                   \
--set-file identityTrustAnchorsPEM=ca.crt        \
--set-file identity.issuer.tls.crtPEM=issuer.crt \
--set-file identity.issuer.tls.keyPEM=issuer.key \
--set identity.issuer.crtExpiry=$(date -d '+8760 hour' +"%Y-%m-%dT%H:%M:%SZ") \
-f linkerd-values.yaml linkerd/linkerd2 -n linkerd

7. 完成linkerd-viz Dashboard扩展组件的安装


cat > linkerd-viz-values.yaml << EOF
clusterDomain: admin.local
linkerdNamespace: linkerd
installNamespace: true
namespace: linkerd-viz 
EOF
helm upgrade --install linkerd-viz \
-f linkerd-viz-values.yaml         \
linkerd/linkerd-viz

参考

相关文章

  • helm部署Linkerd2

    环境信息 Kubernetes:v1.20.6 StorageClass:csi-udisk-rssd Helm:...

  • Helm应用包管理

    Helm介绍 Helm的安装 Helm基本使用 Helm的创建与部署 Helm的升级 Helm的回滚卸载 自制ch...

  • Istio 1.2.3 安装部署

    先决条件 安装Kubernetes 安装 Helm ( 版本高于 2.10)。 部署步骤 使用 Helm 部署 I...

  • helm部署的服务如何修改配置

    关于helm部署服务 在Kubernetes上进行容器化部署时,使用helm可以简化操作,以部署Jenkins为例...

  • 29.kubernetes(k8s)笔记 Helm

    什么是 Helm 在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deploymen...

  • LFS258-LAB-helm

    安装helm 下载helm二进制文件安装 给helm创建rbac的授权 3.部署tiller服务器 4.查看部署状...

  • k8s 通过helm部署gitlab-runner

    前言 gitlab 需要提供的参数 URL+TOKEN 部署相关 安装helm 安装helm安装部署参考 通过he...

  • helm

    概念 helm-chart guide helm-k8s包管理 helm是包管理工具,用来管理和部署kuberne...

  • openshift 4.3中安装helm3并通过helm方式部署

    openshift 4.3中安装helm3并通过helm方式部署应用 简介 Helm是一个命令行界面(CLI)工具...

  • Helm部署和体验jenkins

    如何快速且简单的部署 通过helm可以快速且简单的部署多种应用,关于helm的安装和使用请参考 环境信息 本次实战...

网友评论

      本文标题:helm部署Linkerd2

      本文链接:https://www.haomeiwen.com/subject/dgekbltx.html