我已根据此处的文档在 Ubuntu 20.04.3 上安装了 Bareos 20.0.1 。
我正在尝试备份远程 PostgreSQL 数据库,显然,存在三种可能的情况,并且 PostgreSQL 插件(第三种解决方案)的优点使其成为显而易见的选择。
在PostgreSQL 插件文档 的PostgreSQL 插件先决条件部分中,有一行内容如下:
该插件必须安装在运行 PostgreSQL 数据库的同一主机上。
现在我不明白的是,如果我应该在数据库节点上安装插件,则bareos机器和数据库机器上的插件将如何通信?
此外,我在他们的GitHub上查看了该模块的源代码,我看到插件源代码尝试在本地查找文件,这是上述声明的证明。
在绝望的情况下,我尝试在 bareos 节点上安装插件及其依赖项,但我不断收到错误,Error: python3-fd-mod: Could not read Label File /var/lib/postgresql/13/main/backup_label该错误实际上是在尝试查找backup_label,该错误实际上是在尝试在 bareos 节点中
这是我的配置fileset:
FileSet {
Name = "psql"
Include {
Options {
compression=GZIP
signature = MD5
}
Plugin = "python"
":module_path=/usr/lib/bareos/plugins"
":module_name=bareos-fd-postgres"
":postgresDataDir=/var/lib/postgresql/13/main"
":walArchive=/var/lib/postgresql/13/wal_archive/"
":dbHost=DATABASE_DNS"
":dbuser=DATABASE_USER"
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,插件文档将dbHost参数指定为: …
根据官方文档,我正在尝试在虚拟机Devstack上的Ubuntu 18.04 ServerOS上部署OS。devstack节点只有一个网卡(ens160)通过以下CIDR连接到网络10.20.30.40/24。我需要在该网络上公开访问我的实例(从10.20.30.240到10.20.30.250)。因此,我还是设法通过以下官方浮动IP 文档来形成此local.conf文件:
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
PUBLIC_INTERFACE=ens160
HOST_IP=10.20.30.40
FLOATING_RANGE=10.20.30.40/24
PUBLIC_NETWORK_GATEWAY=10.20.30.1
Q_FLOATING_ALLOCATION_POOL=start=10.20.30.240,end=10.20.30.250
Run Code Online (Sandbox Code Playgroud)
这将导致形成一个br-ex具有全局IP地址10.20.30.40和辅助IP地址10.20.30.1的网关(网关已经在网络上;PUBLIC_NETWORK_GATEWAY参数不是在谈论网络上的真实网关吗?)
现在,在成功部署之后,禁用ufw(根据此方法),创建具有用于ping和ssh的适当安全组的cirros实例并附加浮动IP,我只能在devstack节点上访问我的实例,而不能在整个网络上访问我的实例!同样从cirros实例内部,我无法访问外部世界(即使我可以从devstack节点访问外部世界)
之后,观看此视频,我对local.conf文件进行了如下修改:
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
FLAT_INTERFACE=ens160
HOST_IP=10.20.30.40
FLOATING_RANGE=10.20.30.240/28
Run Code Online (Sandbox Code Playgroud)
成功部署和实例设置后,我仍然只能在devstack节点上访问我的实例,而不能从外部访问!但是好消息是我可以从cirros实例内部访问外界。
任何帮助,将不胜感激!
更新资料
在第二种配置中,在tcpdump对实例浮动IP执行ping操作时检查数据包,我观察到实例的浮动IP的who-has广播数据包从网络路由器到达devstack节点。但是不会is-at生成任何答复,因此ICMP数据包不会路由到devstack节点和实例。
因此,通过一些技巧,我创建了响应,然后一切正常。但这当然不是解决方案,我认为devstack应该开箱即用而无需任何调整,这可能是因为devstack的配置错误。
我想知道是否可以在运行时通过按住拖动来移动 Flutter TabBar 中的 Tab?如果目前不可能,这是一个有效的功能请求,我应该在他们的 Github 上提交问题吗?
这就是我目前所拥有的。
我们有 2 个微服务需要通过 GRPC 进行通信,它们都是用 Nestjs 编写的。这两种服务可以通过 IP 和端口轻松通信。
现在,当 GRPC 服务器位于启用了 SSL 的 Nginx 代理后面时(没有 SSL 的 Nginx 工作正常),就会出现问题。我尝试测试它grpcurl,请求到达 GRPC 服务器,但是当启用 SSL 时,用 Nestjs 编写的 GRPC 客户端无法通信,并出现以下错误:
code: 13,
details: 'Received RST_STREAM with code 2 triggered by internal client error: Protocol error'
Run Code Online (Sandbox Code Playgroud)
值得注意的是,这两个微服务不与内部 SSL 通信,Nginx 向 GRPC 服务器发送未加密的流量。
这是 Nginx 配置:
server {
server_name grpc.example.com;
error_log /var/log/nginx/grpc.log info;
location / {
grpc_pass grpc://127.0.0.1:5001;
}
listen 443 ssl http2;
ssl_certificate /path/to/cert
ssl_certificate_key /path/to/cert/key
}
Run Code Online (Sandbox Code Playgroud)
GRPC 客户端微服务使用此文档并获取如下 …