是否可以直接访问托管 Service Fabric 群集中的节点?

Is it possible to access the nodes in a Managed Service Fabric cluster directly?

提问人:Kjartan 提问时间:3/10/2023 更新时间:3/10/2023 访问量:168

问:

在一个项目中,我们已经以正常方式使用 Azure 中托管的 Service Fabric 一段时间了;也就是说,我们一直在使用 Bicep 模板自己管理大部分 SF 基础设施。

现在,我们正在考虑迁移到托管 Service Fabric 设置,其中许多与 SF 相关的基础结构或多或少是自动管理的。这将大大减少我们的 Bicep 模板的大小和复杂性,等等。我们的目标是能够在我们的新 SF 解决方案中实现与现有解决方案相同的功能,但我们仍处于早期阶段。

我们现在遇到的问题是无法直接访问集群中的节点。在我们现有的解决方案中,我们设置了一个 Bastion 实例,通过该实例,我们可以使用 RDP 直接访问节点。这对于某些调试方案等非常有用,在这些方案中,我们可以直接访问群集中每个虚拟机上的日志。

在新方案中,设置托管 SF 群集会导致创建新的单独资源组,并且我们在此处添加或更改内容的能力似乎有限。这是有道理的,因为托管集群的整个想法是将大量管理工作委托给系统本身,但如果我们至少能够访问 VM,那就太好了。

到目前为止,我们尝试了几件事:首先,若要将单独的子网(用于 Bastion)定义到新资源组中的新虚拟网络,请将 Bastion 实例添加到我们拥有更多控制权的另一个资源组,并尝试将该实例连接到新子网。但是,当我们尝试部署 Bicep 模板时,这会产生如下错误(通过小幅编辑来匿名化和提高可读性):

LinkedAuthorizationFailed:对象 ID 为“xyz123”的客户端“our-build-client-id”有权在作用域上执行操作“Microsoft.Network/bastionHosts/write”

'/subscriptions/our-sub-id/resourcegroups/our-RG/providers/Microsoft.Network/bastionHosts/our-bastion-instance';

但是,它无权在链接的作用域上执行操作“join/action”

“/subscriptions/our-sub-id/resourceGroups/Generated-SF-RG/providers/Microsoft.Network/virtualNetworks/VNet-our-SF-Vnet-Name/subnets/OurAzureBastionSubnet”或链接范围无效。

我理解这意味着不允许我们将 Bastion 连接到 SF VNet。

作为替代试验,我们尝试在另一个资源组(我们完全控制的资源组)中创建一个新的单独 VNet,然后尝试将该 VNet 与为 Service Fabric 生成的 VNet 对等互连。(诚然不稳定的)推理:由于两个对等互连的 VNet 应该从外部显示为单个网络,那么如果我们可以将这两个 VNet 链接在一起并授予对我们自己的资源组中一个 VNet 的 Bastion 访问权限,那么也许这也允许我们访问另一个 VNet 中的 VM。

毋庸置疑,我们从未走到这一步:由于授权不足,对等操作本身被停止了,这是完全有道理的。

因此,现在我们不得不思考设置它的正确方法是什么 - 或者它是否可能?难道整个“管理 Service Fabric”概念/体系结构都是为了防止这种直接访问而设计的吗?不过,这似乎有点违反直觉,因为至少有一个与 RDP 访问相关的 GUI 选项,如下图所示

enter image description here

我还没有测试过这种连接方式,因为它需要直接 RDP 访问每个节点,这意味着打开 RDP 端口而不是通过 Bastion。出于安全原因,这不是一个选项,但我可能会稍后出于好奇而尝试一下,只是为了确认它确实有效。

目前,我们仍在调查和寻找一种通过堡垒进行连接的方法。任何指示将不胜感激。

Azure 安全性 Azure-Service-Fabric VNet 堡垒主机

评论


答: 暂无答案