k8s部署Kong

这篇博客详细介绍了如何在Kubernetes集群中安装和配置Kong ingress控制器,以及如何设置Konga管理界面来管理Kong。首先,通过kubectl命令行工具安装Kong ingress,并检查相关服务。接着,创建环境变量并设置一个示例service和ingress资源。然后,教程展示了如何修改Kong ingress的Deployment以暴露Kong Admin API,并创建一个新的Service以供内部访问。安装Postgres数据库作为Konga的数据存储,并创建所需用户和数据库。最后,部署Konga容器并设置环境变量,通过Konga连接到Kong服务。通过这个过程,读者可以学习到Kubernetes、Kong ingress和Konga的集成使用。

详细地址:
https://docs.konghq.com/kubernetes-ingress-controller/latest/guides/getting-started/

word文档地址:https://github.com/IceEmblem/LearningDocuments/tree/master/%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%96%99/%E5%B9%B3%E5%8F%B0%E6%97%A0%E5%85%B3/Kong%20%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0
图片不清晰请查看word文档

该文档需要对k8s有了解:https://github.com/IceEmblem/LearningDocuments/tree/master/%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%96%99/%E5%B9%B3%E5%8F%B0%E6%97%A0%E5%85%B3/kubenetes

安装kong ingress

# kubectl apply -f https://bit.ly/k4k8s

使用如下命令查看其创建的service

root@k8s-master:~# kubectl get services -n kong
NAME                      TYPE           CLUSTER-IP    EXTERNAL-IP   PORT(S)                      AGE
kong-proxy                LoadBalancer   10.1.85.159   <pending>     80:32268/TCP,443:32148/TCP   10m
kong-validation-webhook   ClusterIP      10.1.93.55    <none>        443/TCP                      10m

我们设置一个环境变量(10.1.85.159是上面输出的地址)

# export PROXY_IP=10.1.85.159

创建示例service

# kubectl apply -f https://bit.ly/echo-service

创建ingress资源

# echo "
apiVersion: networking.k8s.io/v1
kind: Ing
部署KongKonga实例到Kubernetes通常涉及以下几个步骤: 1. **创建Kong部署**: - 准备KongDocker镜像,可以从Kong的官方GitHub仓库下载预构建的镜像。 - 创建`Deployment`资源yaml文件,指定镜像名称、副本数、标签等。例如: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: kong labels: app: kong spec: replicas: 1 selector: matchLabels: app: kong template: metadata: labels: app: kong spec: containers: - name: kong image: "registry.konghq.com/kong/kong:latest" ports: - containerPort: 8001 ``` - 使用`kubectl apply -f kong-deployment.yaml`命令部署。 2. **配置Ingress**: 如果你想让外部流量能访问Kong,需要创建一个`Ingress`资源。例如: ```yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: kong-ingress annotations: nginx.ingress.kubernetes.io/rewrite-target: /$1 spec: rules: - host: kong.example.com http: paths: - path: / pathType: Prefix backend: service: name: kong port: number: 8001 ``` 再次用`kubectl apply -f ingress.yaml`应用。 3. **安装Konga**: Konga是一个管理Kong的服务,可以使用类似的方式部署。首先创建KongaDocker镜像,然后创建`Deployment`和`Service`资源。Konga通常运行在单独的Pod里,连接到Kong集群。 4. **配置Konga连接Kong**: 在Konga的配置中,你需要设置Kong的API地址,这通常是集群服务的IP加上端口(如`http://kong-service:8001`)。完成配置后,运行Konga容器。 5. **验证部署**: 使用`kubectl get pods`查看KongKonga是否成功部署,并通过浏览器访问`http://<your-kong-ingress-host>/admin`检查Konga是否可用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值