次の方法で共有


Reliable Actors の FabricTransport 設定を構成する

構成できる設定を以下に示します。

次の方法で FabricTransport の既定の構成を変更できます。

Assembly 属性

FabricTransportActorRemotingProvider属性は、アクター クライアントおよびアクター サービス アセンブリに適用する必要があります。

次の例では、FabricTransport OperationTimeout 設定の既定値を変更する方法を示します。

  using Microsoft.ServiceFabric.Actors.Remoting.FabricTransport;
  [assembly:FabricTransportActorRemotingProvider(OperationTimeoutInSeconds = 600)]

2 番目の例では、FabricTransport MaxMessageSize と OperationTimeoutInSeconds の既定値を変更します。

  using Microsoft.ServiceFabric.Actors.Remoting.FabricTransport;
  [assembly:FabricTransportActorRemotingProvider(OperationTimeoutInSeconds = 600,MaxMessageSize = 134217728)]

構成パッケージ

構成パッケージを使用して既定の構成を変更できます。

重要

Linux ノードでは、証明書は PEM 形式でなければなりません。 Linux での証明書の場所と構成について詳しくは、Linux 上での証明書の構成に関する記事をご覧ください。

アクター サービスの FabricTransport 設定を構成する

settings.xml ファイルに TransportSettings セクションを追加します。

既定では、アクターのコードは "<ActorName>TransportSettings" として SectionName を検索します。 見つからない場合は、"TransportSettings" として SectionName を調べます。

<Section Name="MyActorServiceTransportSettings">
     <Parameter Name="MaxMessageSize" Value="10000000" />
     <Parameter Name="OperationTimeoutInSeconds" Value="300" />
     <Parameter Name="SecurityCredentialsType" Value="X509" />
     <Parameter Name="CertificateFindType" Value="FindByThumbprint" />
     <Parameter Name="CertificateFindValue" Value="4FEF3950642138446CC364A396E1E881DB76B48C" />
	   <Parameter Name="CertificateRemoteThumbprints" Value="b3449b018d0f6839a2c5d62b5b6c6ac822b6f662" />
     <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
     <Parameter Name="CertificateStoreName" Value="My" />
     <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
     <Parameter Name="CertificateRemoteCommonNames" Value="ServiceFabric-Test-Cert" />
 </Section>

アクター クライアント アセンブリの FabricTransport 設定を構成する

クライアントがサービスの一部として実行されていない場合は、client exe ファイルと同じ場所に "<Client Exe Name>.settings.xml" ファイルを作成し、 そのファイル内に TransportSettings セクションを追加できます。 SectionName は "TransportSettings" にする必要があります。

<?xml version="1.0" encoding="utf-8"?>
<Settings xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2011/01/fabric">
  <Section Name="TransportSettings">
    <Parameter Name="SecurityCredentialsType" Value="X509" />
    <Parameter Name="OperationTimeoutInSeconds" Value="300" />
    <Parameter Name="CertificateFindType" Value="FindByThumbprint" />
    <Parameter Name="CertificateFindValue" Value="b3449b018d0f6839a2c5d62b5b6c6ac822b6f662" />
    <Parameter Name="CertificateRemoteThumbprints" Value="4FEF3950642138446CC364A396E1E881DB76B48C" />
    <Parameter Name="OperationTimeoutInSeconds" Value="300" />
    <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
    <Parameter Name="CertificateStoreName" Value="My" />
    <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
    <Parameter Name="CertificateRemoteCommonNames" Value="WinFabric-Test-SAN1-Alice" />
  </Section>
</Settings>
  • セカンダリ証明書を使ってアクター サービス/クライアントのセキュリティを確保するように FabricTransport 設定を構成する。 セカンダリ証明書の情報は、CertificateFindValuebySecondary というパラメーターを追加することで追加できます。 リスナーの TransportSettings の例を次に示します。

    <Section Name="TransportSettings">
    <Parameter Name="SecurityCredentialsType" Value="X509" />
    <Parameter Name="CertificateFindType" Value="FindByThumbprint" />
    <Parameter Name="CertificateFindValue" Value="b3449b018d0f6839a2c5d62b5b6c6ac822b6f662" />
    <Parameter Name="CertificateFindValuebySecondary" Value="h9449b018d0f6839a2c5d62b5b6c6ac822b6f690" />
    <Parameter Name="CertificateRemoteThumbprints" Value="4FEF3950642138446CC364A396E1E881DB76B48C,a9449b018d0f6839a2c5d62b5b6c6ac822b6f667" />
    <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
    <Parameter Name="CertificateStoreName" Value="My" />
    <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
    </Section>
    

    クライアントの TransportSettings の例を次に示します。

    <Section Name="TransportSettings">
    <Parameter Name="SecurityCredentialsType" Value="X509" />
    <Parameter Name="CertificateFindType" Value="FindByThumbprint" />
    <Parameter Name="CertificateFindValue" Value="4FEF3950642138446CC364A396E1E881DB76B48C" />
    <Parameter Name="CertificateFindValuebySecondary" Value="a9449b018d0f6839a2c5d62b5b6c6ac822b6f667" />
    <Parameter Name="CertificateRemoteThumbprints" Value="b3449b018d0f6839a2c5d62b5b6c6ac822b6f662,h9449b018d0f6839a2c5d62b5b6c6ac822b6f690" />
    <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
    <Parameter Name="CertificateStoreName" Value="My" />
    <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
    </Section>
    
    • サブジェクト名を使ってアクター サービス/クライアントのセキュリティを確保するように FabricTransport 設定を構成する。 ユーザーは FindBySubjectName として findType を指定し、CertificateIssuerThumbprints 値と CertificateRemoteCommonNames 値を追加する必要があります。 リスナーの TransportSettings の例を次に示します。

      <Section Name="TransportSettings">
      <Parameter Name="SecurityCredentialsType" Value="X509" />
      <Parameter Name="CertificateFindType" Value="FindBySubjectName" />
      <Parameter Name="CertificateFindValue" Value="CN = WinFabric-Test-SAN1-Alice" />
      <Parameter Name="CertificateIssuerThumbprints" Value="b3449b018d0f6839a2c5d62b5b6c6ac822b6f662" />
      <Parameter Name="CertificateRemoteCommonNames" Value="WinFabric-Test-SAN1-Bob" />
      <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
      <Parameter Name="CertificateStoreName" Value="My" />
      <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
      </Section>
      

      クライアントの TransportSettings の例を次に示します。

    <Section Name="TransportSettings">
    <Parameter Name="SecurityCredentialsType" Value="X509" />
    <Parameter Name="CertificateFindType" Value="FindBySubjectName" />
    <Parameter Name="CertificateFindValue" Value="CN = WinFabric-Test-SAN1-Bob" />
    <Parameter Name="CertificateStoreLocation" Value="LocalMachine" />
    <Parameter Name="CertificateStoreName" Value="My" />
    <Parameter Name="CertificateRemoteCommonNames" Value="WinFabric-Test-SAN1-Alice" />
    <Parameter Name="CertificateProtectionLevel" Value="EncryptAndSign" />
    </Section>