1.3. 半自动服务绑定
服务绑定过程从绑定到特定应用程序所需的服务的用户规格开始。这个表达式在 kubernetes-service-binding
扩展生成的 ServiceBinding
资源中总结。使用 kubernetes-service-binding
扩展可帮助用户以最小配置生成 ServiceBinding
资源,从而简化整个进程。
然后,负责绑定进程的 Service Binding Operator 从 ServiceBinding
资源读取信息,并相应地将所需文件挂载到容器。
ServiceBinding
资源示例:apiVersion: binding.operators.coreos.com/v1beta1 kind: ServiceBinding metadata: name: binding-request namespace: service-binding-demo spec: application: name: java-app group: apps version: v1 resource: deployments services: - group: postgres-operator.crunchydata.com version: v1beta1 kind: Database name: db-demo id: postgresDB
注意quarkus-kubernetes-service-binding
扩展提供了一种更紧凑的方法来表达相同的信息。例如:quarkus.kubernetes-service-binding.services.db-demo.api-version=postgres-operator.crunchydata.com/v1beta1 quarkus.kubernetes-service-binding.services.db-demo.kind=Database
在 application.properties
中添加了之前的配置属性后,quarkus-kubernetes
与 quarkus-kubernetes-service-binding
扩展相结合,会自动生成 ServiceBinding
资源。
前面提到的 db-demo
property-configuration 标识符现在有一个双角色,并完成以下操作:
-
将
api-version
和kind
属性关联在一起。 定义自定义资源的
name
属性,稍后您可以在需要时编辑该属性。例如:quarkus.kubernetes-service-binding.services.db-demo.api-version=postgres-operator.crunchydata.com/v1beta1 quarkus.kubernetes-service-binding.services.db-demo.kind=Database quarkus.kubernetes-service-binding.services.db-demo.name=my-db