Kubernetes Openshift:吊舱之间的可见性
我正在尝试从其他pod访问已部署的postgresql pod pod1内部运行一个简单的postgresql容器。在另一边,在pod2中,我正在运行一个保险库容器 我正在尝试配置vault以添加数据库引擎:Kubernetes Openshift:吊舱之间的可见性,kubernetes,openshift,Kubernetes,Openshift,我正在尝试从其他pod访问已部署的postgresql pod pod1内部运行一个简单的postgresql容器。在另一边,在pod2中,我正在运行一个保险库容器 我正在尝试配置vault以添加数据库引擎: vault write database/config/my-postgresql-database \ plugin_name=postgresql-database-plugin \ allowed_roles="my-role" \ connection_ur
vault write database/config/my-postgresql-database \
plugin_name=postgresql-database-plugin \
allowed_roles="my-role" \
connection_url="postgresql://{{username}}@postgresql:5432/" \
username="postgres"
但是,我遇到了以下错误:
Error writing data to database/config/my-postgresql-database: Error making API request.
URL: PUT https://vault.ra-sec.svc/v1/database/config/my-postgresql-database
Code: 400. Errors:
* error creating database object: error verifying connection: pq: SSL is not enabled on the server
似乎存在与连接相关的问题
您能为我提供一些解决方法吗?这就是我在openshift环境中使用PostgreSQL DB设置Vault的方法 为Vault配置config.hcl 为Vault服务器定义配置文件
#config.hcl
disable_mlock = true
storage "postgresql" {
connection_url = "postgres://vault:vault@postgresql:5432/postgres?sslmode=disable"
}
listener "tcp" {
address = "0.0.0.0:8200"
tls_disable = 1
}
其中,postgresql是为postgresql数据库配置的服务名称
启动脚本
使用以下命令运行服务器,将其配置为启动脚本的一部分
vault server -config=/etc/service/vault-server/config.hcl
设置PostgreSQL数据库
您可以使用Openshift提供的PostgreSQL支架周围模板(希望您使用相同的模板)。在postgreSQL POD/container中执行以下命令,以允许从Vault进行连接
CREATE TABLE vault_kv_store (
parent_path TEXT COLLATE "C" NOT NULL,
path TEXT COLLATE "C",
key TEXT COLLATE "C",
value BYTEA,
CONSTRAINT pkey PRIMARY KEY (path, key)
);
CREATE INDEX parent_path_idx ON vault_kv_store (parent_path);
为vault设置数据库:
在此之后,请确保为PostgreSQL创建一个服务,以便同一命名空间中的其他POD可以使用Openshift服务名称来发现它们
希望这有帮助!如有遗漏,请告诉我