traefik在kubernetes中的安装及使用方法

  介绍

这篇文章将为大家详细讲解有关traefik在kubernetes中的安装及使用方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

<李>

环境traefik 2.2 +, k8 1.18 +

<李>

需求:自动获得证书,使用王坚dns方式获证书,暴露给外网访问

<李>

参考官方网站:https://docs.traefik。io/用户指南/crd-acme/

<李>

首先安装,美丽的一个类似百胜包管理器。参考https://helm。sh/docs/介绍/安装/

<李>

下载your 所需版本

<李>

打开它(<代码>焦油-zxvf helm-v3.0.0-linux-amd64.tar.gz> <李>

发现,<代码>执掌> mv linux-amd64/舵/usr/local/bin/helm> <李>

traefik有二种模式:1只使用traefik CRD配置路由规则(IngressRoute), 2。使用Kubernetes进入配置路由规则(入口)

<李>

IngressRoute定义,拷贝,https://docs.traefik.io/user-guides/crd-acme/ingressroute-definition 里面的yaml文件并应用

 kubectl  apply  -f  ingress-route-definition。yaml 
<李>

创建ServiceSecret

 #说明1:秘密的数据需要base64编码(https://kubernetes.io/zh/docs/concepts/configuration/secret/)
  echo  -n  & # 39;行政与# 39;,| base64
  
  #说明2:增加一个存储(根据实际情况修改),验证通过的证书我们这里存到/etc/acme/acme.json文件中,我们一定要将这个文件持久化,否则每次,Traefik 重建后就需要重新认证
  #说明3:服务直接暴露了端口使用(NodePort),未使用官方文档的kubectl 左前
  #说明4:安康;——providers.kubernetesingress
  #,,,,,,的;——providers.kubernetescrd
  #,,,,,,导出二种支持的模式入口,ingress-route
  #说明5:仪表盘不直接导出,保护资源,后面会通过https + basic 认证方式查看
 # traefik.yaml
  apiVersion: v1
  :ServiceAccount
  元数据:
  名称:才能traefik-ingress-controller
  
  ---
  apiVersion: v1
  :秘密
  元数据:
  名称:才能aliyun-secret
  数据:
  ALICLOUD_ACCESS_KEY才能:your_key_base64
  ALICLOUD_SECRET_KEY才能:your_secret_base64
  ALICLOUD_REGION_ID才能:your_region_base64
  
  ---
  apiVersion: v1
  :PersistentVolumeClaim
  元数据:
  名称:才能traefik-acme-cephfs-pvc
  规范:
  accessModes才能:
  安康;ReadWriteMany才能
  资源:才能
  ,,,请求:
  ,,,,,存储:1 gi
  storageClassName才能:rook-cephfs
  
  ---
  :部署
  apiVersion:应用程序/v1
  元数据:
  名称:才能traefik
  标签:才能
  ,,,的应用:traefik
  
  规范:
  副本才能:1
  选择器:才能
  ,,,matchLabels:
  ,,,,,的应用:traefik
  模板:才能
  ,,,元数据:
  ,,,,,标签:
  ,,,,,,,的应用:traefik
  ,,,规范:
  ,,,,,serviceAccountName: traefik-ingress-controller
  ,,,,,卷:
  ,,,,,今天早上,名字:acme-store
  ,,,,,,,persistentVolumeClaim:
  ,,,,,,,,,claimName: traefik-acme-cephfs-pvc
  ,,,,,,,,,只读的:虚假
  ,,,,,的容器:
  ,,,,,,,今天早上,名字:traefik
  ,,,,,,,,,图片:traefik: v2.4
  ,,,,,,,,,arg游戏:
  ,,,,,,,,,,,的;——api.insecure
  ,,,,,,,,,,,什么,,log.level=INFO
  ,,,,,,,,,,,的;——accesslog
  ,,,,,,,,,,,的;——entrypoints.web.Address=: 8000
  ,,,,,,,,,,,的;——entrypoints.websecure.Address=: 4443
  ,,,,,,,,,,,的;——providers.kubernetesingress
  ,,,,,,,,,,,的;——providers.kubernetescrd
  ,,,,,,,,,,,什么,,certificatesresolvers.aliyun.acme.dnschallenge.provider=alidns
  ,,,,,,,,,,,安康;——certificatesresolvers.aliyun.acme.email=your_email@qq.com
  ,,,,,,,,,,,安康;——certificatesresolvers.aliyun.acme.storage=/etc/acme/acme.json
  ,,,,,,,,,envFrom:
  ,,,,,,,,,,,今天早上,secretRef:
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

traefik在kubernetes中的安装及使用方法