2016-06-30 9 views
0

AWSでWildfly 10でクラスタ環境をセットアップしました。これは私がこの仕事のためにした設定です。バケツが他の誰かによって所有されているか、Wildflyの起動中に認証が失敗した可能性があります。

... 
<subsystem xmlns="urn:jboss:domain:jgroups:4.0"> 
<channels default="ee"> 
    <channel name="ee" stack="s3ping"/> 
<channels> 
<stacks> 
     ...    
    <stack name="s3ping"> 
     <transport type="TCP" socket-binding="jgroups-tcp" diagnostics-socket-binding="jgroups-diagnostics"/> 
      <protocol type="S3_PING"> 
       <property name="access_key"> 
        <%= @s3_access_key %> 
       </property> 
       <property name="secret_access_key"> 
        <%= @s3_secret_access_key %> 
       </property> 
       <property name="prefix"> 
        <%= @s3_bucket %> 
       </property> 
       <property name="timeout"> 
        60000 
       </property> 
      </protocol> 
      <protocol type="MERGE2"/> 
      <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>    
      <protocol type="FD"/> 
      <protocol type="VERIFY_SUSPECT"/> 
      <protocol type="BARRIER"/> 
      <protocol type="pbcast.NAKACK"/> 
      <protocol type="UNICAST2"/> 
      <protocol type="pbcast.STABLE"/> 
      <protocol type="pbcast.GMS"/> 
      <protocol type="UFC"/> 
      <protocol type="MFC"/> 
      <protocol type="FRAG2"/> 
     </stack> 
</stacks> 
</subsystem> 
... 

バケット名が存在しない場合は、US標準領域のs3にバケットが作成されます。

しかし、私はそれがヨーロッパ中央にあることを望みます。

だから私は、AWSコンソール上のバケツを作成し、

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
     "Sid": "", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "[USERARN]" 
     }, 
     "Action": "s3:*", 
     "Resource": "arn:aws:s3:::[BUCKETNAME]/*" 
    }, 
    { 
     "Sid": "", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "[USERARN]" 
     }, 
     "Action": "s3:*", 
     "Resource": "arn:aws:s3:::[BUCKETNAME]" 
    } 
] 
} 

としてのポリシーを設定し、stanalone-ha.xmlに作成したバケット名を与えています。

しかしWildflyがそれを見つめながら、この時間は

Maybe the bucket is owned by somebody else or the authentication failed. 

例外がスローされます。

私の間違いは何ですか?この問題を解決するにはどうすればよいですか?

ありがとうございました。

+0

のみ与えられた名前の1つのバケットはS3(バケットの名前空間がグローバルである)の任意の領域*には、どこにでも*が存在することができます。 US標準ですでに 'example-bucket'を作成している場合は、コンソールに移動して削除してから、数分待ってから別の地域に同じ名前のバケットを作成する必要があります。それが問題だろうか? –

+0

私はそれを知っており、それは問題ではありません。私はバケットを正常に作成した後、私は野生動物を始める – xxlali

+0

ああ、はい、私は今、あなたはすでにコンソールの正しい場所にそれを作成しました。 –

答えて

1

これはコーマンの問題でした。

S3 PingはAWS認証V2を使用していますが、フランクフルト地域はAWS認証V4が必要なため、私のバケットはフランクフルト地域にあり、S3 Pingはフランクフルト地域では機能しません。

関連情報:issues.jboss.org/browse/JGRP-1914

関連する問題