`diagnosticsStore` 如何在独立服务结构中工作?

How does `diagnosticsStore` works in standalone service fabric?

试图了解 diagnosticsStore 在 Service Fabric 中的工作原理。在配置文件中,我可以看到它需要提供 SMB 文件,但我没有看到指定 username/password 的选项。在使用工作组中的 X509 证书保护的独立集群中,各个主机将如何准确地验证该共享。还有什么是 storeType 价值是什么?这是否意味着可以使用 SMB 以外的其他东西来存储该信息?

"properties": { "diagnosticsStore": { "metadata": "Please replace the diagnostics file share with an actual file share accessible from all cluster machines. For example, \\machine1\DiagnosticsStore.", "dataDeletionAgeInDays": "21", "storeType": "FileShare", "connectionstring": "\\machine1\DiagnosticsStore" },

AFAIK,无法在 diagnosticStore 中提供 username\password。

集群的帐户将用于访问网络共享。 Service Fabric 节点默认在 Network Account 下工作,但您可以更改整个集群的帐户(不推荐)或 change account for each service。本文针对 AD 用户,但本地应该也可以通过提供 . (点)作为域名。您将需要在所有加入工作组的服务器上创建具有相同密码的相同用户(不要忘记为此帐户提供所需的权限以确保该服务可以完成工作)

storeType 可以是 azureStorage (来源:https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cluster-manifest

来自https://social.msdn.microsoft.com/Forums/azure/en-US/64ba61a5-1b17-4387-a751-15aeb064d8c8/what-values-of-diagnosticsstore-in-configuration-file-can-be

Each machine account will have to be ACLed to the file share for this to work.

没有直接回答你的问题,但 Azure 是一个有效的选项,我已经测试过并且正在朝着以下方向发展:

https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cluster-manifest#diagnostics

"diagnosticsStore": {
    "metadata":  "I recommend one Storage Account per cluster.",
    "dataDeletionAgeInDays": "21",
    "storeType": "AzureStorage",
    "IsEncrypted": "false",
    "connectionstring": "xstore:DefaultEndpointsProtocol=https;AccountName=[AzureAccountName];AccountKey=[AzureAccountKey]"
}