千家信息网

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

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章主要介绍"kong在kubernetes中的安装及使用方法",在日常操作中,相信很多人在kong在kubernetes中的安装及使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作
千家信息网最后更新 2025年02月23日kong在kubernetes中的安装及使用方法

这篇文章主要介绍"kong在kubernetes中的安装及使用方法",在日常操作中,相信很多人在kong在kubernetes中的安装及使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"kong在kubernetes中的安装及使用方法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

参考官方网站:

  • https://github.com/Kong/kubernetes-ingress-controller

  • https://github.com/Kong/charts

  • https://blog.csdn.net/qianghaohao/article/details/99691727

  • 使用helm安装

  • 下载适合的helm example https://github.com/Kong/charts/tree/main/charts/kong/example-values

  • 本次下载

wget https://raw.githubusercontent.com/Kong/charts/main/charts/kong/example-values/minimal-kong-standalone.yaml

-参考修改后配置 minimal-kong-standalone.yaml

image:  repository: kong  tag: "2.3"env:  prefix: /kong_prefix/  database: postgresadmin:  enabled: true  # 修改ClusterIP,外网不能访问  type: ClusterIP  http:    enabled: true    servicePort: 8001    containerPort: 8001# 私有k8s。导出 NodePortproxy:  type: NodePort  http:    nodePort: 30002  tls:    nodePort: 30000postgresql:  enabled: true  persistence:    storageClass: rook-cephfs    accessModes:    - ReadWriteMany  postgresqlUsername: kong  postgresqlDatabase: kong  # 固定密码,不随机  postgresqlPassword: Kong.=2021!  postgresqlPostgresPassword: Kong.=2021!  service:    port: 5432ingressController:  enabled: true  installCRDs: false
  • 安装kong

# 安装到默认default空间helm install kong kong/kong -f minimal-kong-standalone.yamlhelm upgrade kong kong/kong -f minimal-kong-standalone.yaml
  • 安装konga。konga是UI库,调用kong-admin来管理kong https://github.com/pantsel/konga

apiVersion: apps/v1kind: Deploymentmetadata:  name: konga  labels:    app: kongaspec:  replicas: 1  selector:    matchLabels:      app: konga  template:    metadata:      labels:        app: konga    spec:      containers:      - env:        - name: DB_ADAPTER          value: postgres        - name: DB_URI          # kong-postgresql为service name          value: "postgresql://kong:Kong.=2021!@kong-postgresql:5432/konga_database"        image: pantsel/konga        imagePullPolicy: Always        name: konga        ports:        - containerPort: 1337          protocol: TCP      restartPolicy: Always---apiVersion: v1kind: Servicemetadata:  name: kongaspec:  ports:  - name: http    port: 1337    targetPort: 1337    protocol: TCP  selector:    app: konga---apiVersion: networking.k8s.io/v1kind: Ingressmetadata:  name: konga-ingress  annotations:    kubernetes.io/ingress.class: kongspec:  rules:  - host: konga.your_domain.com    http:      paths:      - path: /        pathType: ImplementationSpecific        backend:          service:            name: konga            port:              number: 1337
  • konga运行后效果

  • kong的prometheus监控。首先在konga中启用prometheus

  • 安装prometheus的ServiceMonitor。prometheus安装参考 https://my.oschina.net/u/160697/blog/3197715

apiVersion: monitoring.coreos.com/v1kind: ServiceMonitormetadata:  name: prometheus-kong  # 需固定release: prometheus。默认创建的prometheus使用此标签来识别  labels:    release: prometheusspec:  # 不在同一命名空间,加上namespaceSelector  namespaceSelector:    matchNames:    - default  # 匹配的service的标签  selector:    matchLabels:      app.kubernetes.io/name: kong  endpoints:  # service中对应的端口名称  - port: kong-admin

到此,关于"kong在kubernetes中的安装及使用方法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0