I am running Apache Ignite 2.6.0 in AWS and am using S3 Based Discovery,

However, I DO NOT want to embed AWS Access or Secret Keys in my ignite.xml

I have AWS EC2 Instance Metadata Service for my instances so that the creds
can be loaded from there.

However, there's no guidance or documentation on how to do this. Is this
even supported?

For example, I want to do this:

<bean class="org.apache.ignite.configuration.IgniteConfiguration">
  ...
  <property name="discoverySpi">
    <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
      <property name="ipFinder">
        <bean 
class="org.apache.ignite.spi.discovery.tcp.ipfinder.s3.TcpDiscoveryS3IpFinder">
          <property name="awsCredentialsProvider" ref="aws.creds"/>
          <property name="bucketName" value="YOUR_BUCKET_NAME"/>
        </bean>
      </property>
    </bean>
  </property>
</bean>

<!-- AWS credentials. Provide your access key ID and secret access key. -->
<bean id="aws.creds"
class="com.amazonaws.auth.InstanceProfileCredentialsProvider">
</bean>


But I get this exception when I try the above:

Error setting property values; nested exception is
org.springframework.beans.NotWritablePropertyException: Invalid
property 'awsCredentialsProvider' of bean class
[org.apache.ignite.spi.discovery.tcp.ipfinder.s3.TcpDiscoveryS3IpFinder]:
Bean property 'awsCredentialsProvider' is not writable or has an
invalid setter method. Does the parameter type of the setter match the
return type of the getter?


If using an AWS Credentials Provider *is* supported, where are the bean
properties for documented, so I can see what I may be doing wrong? Are
there any working examples for anything other than BasicAWSCCredentials?

Please help.

Max

Reply via email to