问题标签 [service-fabric-on-premises]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
620 浏览

asp.net-web-api - FABRIC_E_TIMEOUT 仅在服务器上?

我有一个用 .NET Framework 4.6.1 编写的服务结构(本地)应用程序,其中一个服务带有使用 OWIN 的 WebAPI。当我向本地机器集群上的 api 发出错误请求(错误的 uri)时,它给了我 404 未找到,但是当我将它部署到服务器并尝试相同的 uri 时,它需要一些时间并最终给出 FABRIC_E_TIMEOUT。我尝试在本文https://dzone.com/articles/handling-http-404-error-aspnet中添加一些自定义 IHttpControllerSelector 和 IHttpActionSelector ,但它没有帮助。我该怎么做才能使服务器上的应用程序像在本地集群上一样工作并立即返回 404?

0 投票
1 回答
300 浏览

azure - Azure Service Fabric 重置

我在本地使用服务结构。

如果我停止调试模式几分钟或重新启动计算机并继续我的工作,它会从头开始重新部署应用程序。

如何使它只部署更改的库(我认为它首先应该做的)

0 投票
1 回答
1150 浏览

azure-service-fabric - V2Listener 未找到错误

我正在将 Web api 服务连接到后端无状态服务。

Backservice 称为 MyProject.Management.Company,其代码为:

代码是从This Blog Post采用的Listener 代码,甚至文档代码都没有编译文档 ,CreateServiceRemotingListenervextension 方法不存在。

ICompanyManagement 是从 IService 接口继承的接口,实现是通过 CompanyManagament 实现的,在这个阶段只返回静态对象。

该 API 称为MyProject.Portal,控制器代码为:

当代码运行时,它会返回以下错误。

NamedEndpoint 'V2Listener' 在地址'{"Endpoints":{"ServiceEndpoint":"localhost:59286+12a705ed-11a5-4bf5-bafd-84179c966257-131719261525940414-9e876439-9294-4ec9-8b34-05f1751}}a 中找不到对于分区 '12a705ed-11a5-4bf5-bafd-84179c966257'

最后:我使用的是.netcore v2,服务结构 v6.2.274。

0 投票
2 回答
514 浏览

url-routing - Service Fabric(本地)路由到多租户容器化应用程序

我正在尝试为 Service Fabric 中的多租户容器化 ASP.NET MVC 应用程序获得概念证明。这个想法是每个客户将获得 1+ 个应用程序实例,这些实例分布在整个集群中。我无法绘制出来的一件事是路由。

每个应用程序都将与此 SO answer类似地进行分区。到目前为止的计划是让外部负载平衡器将每个请求路由到 SF 反向代理服务。

例如: tenant1.myapp.com将被路由到反向代理<SF cluster node>:19081/myapp/tenant1(19081 是 SF 反向代理的默认端口)、tenant2.myapp.com-><SF Cluster Node>:19081/myapp/tenant2等,然后代理会将其路由到node:port应用程序实例正在侦听的正确位置。

由于每个应用程序都必须映射到不同的端口,因此 SF 计划在创建每个应用程序时动态分配一个端口。这似乎并不完全可扩展,因为理论上我们可以达到端口限制(~65k)。

那么我的问题是,这是一种有效/建议的方法吗?有更好的方法吗?有没有我遗漏/忽略的东西?我是 SF 的新手,所以任何帮助/见解将不胜感激!

0 投票
1 回答
920 浏览

azure-service-fabric - 连接到本地 Service Fabric 群集

我已按照Microsoft的步骤创建多节点本地 Service Fabric 群集。我已经向集群部署了一个无状态应用程序,它似乎工作正常。当我连接到集群时,我使用了其中一个节点的 IP 地址。这样做,我可以使用 Powershell 进行Connect-ServiceFabricCluster nodename:19000连接,并且可以连接到 Service Fabric Explorer 网站 ( http://nodename:19080/explorer/index.html )。

在线示例表明,如果我在 Azure 中托管,我可以连接到http://mycluster.eastus.cloudapp.azure.com:19000并且它可以解决,但是我无法确定我本地的等价物。我尝试连接到我的示例集群:Connect-ServiceFabricCluster sampleCluster.domain.local:19000但返回:

警告:无法联系命名服务。正在尝试联系故障转移管理器服务...警告:无法联系故障转移管理器服务,正在尝试联系 FMM...错误警告:不知道这样的主机

Connect-ServiceFabricCluster :无法访问集群端点,请检查是否存在连接/防火墙/DNS 问题。

我的设置中缺少什么吗?是否应该有一个中央 DNS 条目允许我连接到集群?还是我正在尝试做一些本地不支持的事情?

0 投票
0 回答
643 浏览

docker - Service Fabric ApplicationPrincipalAbortableError

我正在尝试获取一个 docker 映像来运行我们的本地 Service Fabric 群集。

我们已经在我们的本地网络上设置了一个服务结构集群,它似乎运行良好(它已经运行了 2 个 docker 映像)。我正在寻找我的一个容器在域用户(服务帐户)下运行,以便我可以访问我的网络中的 SMB 共享(已被授予服务帐户的权限)。

我收到以下错误:

错误事件:SourceId='System.Hosting',Property='Activation:1.0'。激活过程中出错。无法设置 ApplicationPrincipals。错误:ApplicationPrincipalAbortableError

也显示为图像:在此处输入图像描述

我试图运行的容器:https ://hub.docker.com/r/stefanscherer/registry-windows/

应用程序清单.xml

PS我使用未加密的密码只是为了测试目的,以确保这不是现在的问题。

服务清单.xml

资料来源:

0 投票
3 回答
432 浏览

azure-service-fabric - 本地服务结构添加节点和节点类型关联

我有一个 2 节点本地 Windows 集群,集群清单中有以下节点定义

我正在尝试使用“AddNode.ps1”脚本添加一个名为“node3”的新节点:

我在 powershell 中收到错误“无效的节点类型”。根据此处的文档,NodeType 必须是集群中的“现有”节点类型。我想知道这是为什么?clustermanifest.json 中的“NodeTypeRef”表示什么?如果我使用 nodetype 参数作为“node1”或“node2”[它们是现有的节点类型]运行 AddNode.ps1,它就可以工作。

0 投票
0 回答
35 浏览

azure-service-fabric - 在 Service Fabric [本地] 中调用远程服务时出现 FileNotFoundException

我有一个关于在 SF 服务中引发异常的问题——我在反序列化放置在同一集群中的其他远程服务上的异常时遇到了问题(但来自其他解决方案的其他服务类型)。我尝试抛出自定义异常并且在反序列化时遇到问题并切换到使用来自原始异常的消息来抛出简单的异常类型,但是在客户端从源服务中查找库时仍然失败。我不知道为什么在抛出简单异常时远程服务正在寻找这个库。当没有异常调用远程服务时工作正常。

我正在使用此链接中的解决方案https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reliable-services-communication-remoting

我得到了这个:

0 投票
1 回答
576 浏览

.net - Service Fabric 项目无法添加对 Microsoft.ApplicationInsights.ServiceFabric.Native 的引用

我正在开发一个将 Service Fabric 用于微服务的项目。我对 ServiceFabric 很陌生,我的第一个任务是使用 ApplicationInsight 从 Service Fabric 应用程序收集遥测数据。所以我应该使用 Microsoft.ApplicationInsights.ServiceFabric.Native 包,因为它可以通过遥测捕获 SF 上下文数据。我还指的是https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-tutorial-monitoring-aspnet文档。

作为第一步,我使用默认模板创建了一个示例无状态 SF 项目并配置了 Application Insight。然后我尝试按照文档安装 Microsoft.ApplicationInsights.ServiceFabric.Native 包。但我收到以下错误:

似乎 Microsoft.ServiceFabric.Diagnostics.Internal 未在 Microsoft.ApplicationInsights.ServiceFabric.Native 包上更新以与 SF 一起使用。

我该如何进行呢?我应该单独下载 NuGet 包并手动引用程序集吗?

0 投票
1 回答
590 浏览

azure-service-fabric - 在尝试使用 Start-ServiceFabricApplicationUpgrade 升级 Service Fabric 应用程序时出现错误

我们在使用 2 个 VM 的开发环境中获得了一个 Service Fabric 集群。我试图使用以下命令升级部署在 SF 中的应用程序:

Start-ServiceFabricApplicationUpgrade -ApplicationName "fabric:/ApplicationName" -ApplicationTypeVersion "3.7.2625.0" -UnMonitoredAuto

结果我收到以下错误:

Start-ServiceFabricApplicationUpgrade : 未找到应用程序类型和版本 At line:1 char:1 + Start-ServiceFabricApplicationUpgrade -ApplicationName "fabric:/ApplicationName" ... + ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~ + CategoryInfo : InvalidOperation: (Microsoft.Servi...usterConnection:ClusterConnection) [Start-ServiceFabricApplicationUpgrade], FabricElementNotFoundException + FullyQualifiedErrorId : UpgradeApplicationErrorId,Microsoft.ServiceFabric.Powershell.StartApplicationUpgrade

我想知道是否需要在 ClusterConfiguration 级别更改任何配置。任何帮助,将不胜感激。

谢谢。