anchor.diff:  [[repository-s3-usage]]
   ==== Getting started with AWS
   
  -The plugin will default to using
  +The plugin provides a repository type named `s3` which may be used when creating a repository.
  +The repository defaults to using
   http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html[IAM Role]
  -credentials for authentication. These can be overridden by, in increasing
  -order of precedence, system properties `aws.accessKeyId` and `aws.secretKey`,
  -environment variables `AWS_ACCESS_KEY_ID` and `AWS_SECRET_KEY`, or the
  -elasticsearch config using `cloud.aws.access_key` and `cloud.aws.secret_key` or
  -if you wish to set credentials specifically for s3 `cloud.aws.s3.access_key` and `cloud.aws.s3.secret_key`:
  -
  -[source,yaml]
  -----
  -cloud:
  -    aws:
  -        access_key: AKVAIQBF2RECL7FJWGJQ
  -        secret_key: vExyMThREXeRMm/b/LRzEB8jWwvzQeXgjqMX+6br
  -----
  -
  -[[repository-s3-usage-security]]
  -===== Transport security
  -
  -By default this plugin uses HTTPS for all API calls to AWS endpoints. If you wish to configure HTTP you can set
  -`cloud.aws.protocol` in the elasticsearch config. You can optionally override this setting per individual service
  -via: `cloud.aws.ec2.protocol` or `cloud.aws.s3.protocol`.
  -
  -[source,yaml]
  -----
  -cloud:
  -    aws:
  -        protocol: https
  -        s3:
  -            protocol: http
  -        ec2:
  -            protocol: https
  -----
  -
  -In addition, a proxy can be configured with the `proxy.host`, `proxy.port`, `proxy.username` and `proxy.password` settings
  -(note that protocol can be `http` or `https`):
  -
  -[source,yaml]
  -----
  -cloud:
  -    aws:
  -        protocol: https
  -        proxy:
  -            host: proxy1.company.com
  -            port: 8083
  -            username: myself
  -            password: theBestPasswordEver!
  -----
  -
  -You can also set different proxies for `ec2` and `s3`:
  -
  -[source,yaml]
  -----
  -cloud:
  -    aws:
  -        s3:
  -            proxy:
  -                host: proxy1.company.com
  -                port: 8083
  -                username: myself1
  -                password: theBestPasswordEver1!
  -        ec2:
  -            proxy:
  -                host: proxy2.company.com
  -                port: 8083
  -                username: myself2
  -                password: theBestPasswordEver2!
  -----
  -
  -===== Read timeout
  -
  -Read timeout determines the amount of time to wait for data to be transferred over an established,
  -open connection before the connection is timed out. Defaults to AWS SDK default value (`50s`).
  -It can be configured with `cloud.aws.read_timeout` (or `cloud.aws.s3.read_timeout`) setting:
  -
  -[source, yaml]
  -----
  -cloud.aws.read_timeout: 30s
  -----
  -
  -[[repository-s3-repository]]
  -==== S3 Repository
  -
  -The S3 repository is using S3 to store snapshots. The S3 repository can be created using the following command:
  +credentials for authentication. The only mandatory setting is the bucket name:
   
   [source,js]
   ----
  
positive.code:     Due to the extra complexity with the Glacier class lifecycle, it is not
      currently supported by the plugin. For more information about the
      different classes, see http://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html[AWS Storage Classes Guide]
  
  `path_style_access`::
  
      Activate path style access for http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html[virtual hosting of buckets].
      The default behaviour is to detect which access style to use based on the configured endpoint (an IP will result
      in path-style access) and the bucket being accessed (some buckets are not valid DNS names).
  
  Note that you can define S3 repository settings for all S3 repositories in `elasticsearch.yml` configuration file.
  They are all prefixed with `repositories.s3.`. For example, you can define compression for all S3 repositories
  by setting `repositories.s3.compress: true` in `elasticsearch.yml`.
  
  The S3 repositories use the same credentials as the rest of the AWS services
  provided by this plugin (`discovery`). See <<repository-s3-usage>> for details.
  
  Multiple S3 repositories can be created. If the buckets require different
  credentials, then define them as part of the repository settings.
  
  [[repository-s3-permissions]]
  ===== Recommended S3 Permissions
  
negative.code:     Multipart API and may result in upload errors. Defaults to the minimum
      between `100mb` and `5%` of the heap size.
  
  `canned_acl`::
  
      The S3 repository supports all http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl[S3 canned ACLs]
  