SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子
Posted JerryWangSAP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子相关的知识,希望对你有一定的参考价值。
创建一个名为ads-app-service的服务:
上述Service的yaml文件里每个字段,在Kubernetes的API文档里有详细说明。
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#servicespec-v1-core
如何找到这个url呢?
Reference->API Reference->v1.12:
比如Service yaml文件里Spec区域需要出现的字段,每个字段在帮助文档里有详细说明:
Spec部分的子区域ports可以定义多个port,通过符号"-"代表一个类似数组的结构:
ports数组里每个元素包含的字段:
name
nodePort
port
protocol
targetPort
用kubectl create -f创建service,因为类型设置为ClusterIP,但没有指定具体的IP地址,因此创建时自动生成了一个。
再创建一个deployment:
这个deployment使用的image地址如下:
我们还得创建一个Kubernetes Ingress,yaml文件如下:
需要Ingress的原因是,通常情况下,service和pod的IP只能在Kubernetes集群内部访问。集群外部的请求需要通过负载均衡转发到service在Node上暴露的NodePort上,然后再由kube-proxy将其转发给相关的
Pod。
Ingress作为Kubernetes里的标准对象之一,负责给service提供集群外部访问的URL、负载均衡、SSL终止、HTTP路由等。
下面配置的rule的含义是:每次请求/ads时,请求转发到服务ads-app-service上去。
使用host里包含的url拼接上/ads,访问这个应用:
点击tile进入明细页面:
这个应用的UI显示用的是SAP UI5框架,后台通过一个SpringBoot应用响应HTTP请求,数据存储在PostgreSQL里。
进入deployment对应的pod,可以查看到java应用对应的jar文件和JDK环境。
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
以上是关于SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子的主要内容,如果未能解决你的问题,请参考以下文章
Docker:Springboot 容器无法连接到 PostgreSql 容器
Docker/Hibernate/PostgreSQL - 将运行 Hibernate/SpringBoot 应用程序的容器与 postgreSQL 容器不工作连接
使用 Postgresql 对 Spring Boot 应用程序进行 Dockerizing
如何在 Flutter+Spring Boot+PostgreSQL+Heroku 结构中发送和存储图像?