Как получить местоположение (зона сходства) или имя кластера (сервис Fabric)
В настоящее время я использую веб-API тканевого сервиса. Необходимо получить местоположение (зону сходства) для кластера сервисов Fabric. т.е. определить, в каком месте находится текущий кластер, с помощью кода (C#) в веб-API. Или же мне нужно имя кластера, где размещен веб-API.
В веб-ролевой или облачной службе это было возможно с помощью https://management.core.windows.net/{0} / services / hostedservices
но я не могу найти способ для кластера.
2 ответа
После всех исследований я сделал это с
<Section Name="Affinity">
<Parameter Name="Zone" Value="Eusa" />
</Section>
Это добавлено в PackageRoot > Config > Setting
Я не уверен, поможет ли это, но взгляните на ServiceEventSource, созданный для проекта. Метод ServiceMessage показывает вам много информации, которая доступна из контекста службы.
ServiceMessage(
service.Context.ServiceName.ToString(),
service.Context.ServiceTypeName,
service.Context.ReplicaId,
service.Context.PartitionId,
service.Context.CodePackageActivationContext.ApplicationName,
service.Context.CodePackageActivationContext.ApplicationTypeName,
service.Context.NodeContext.NodeName,
finalMessage);
Вы также можете посмотреть на класс FabricClient