Commit 7c5e8f46 authored by O'Reilly Media, Inc.'s avatar O'Reilly Media, Inc.
Browse files

Initial commit

parents
Loading
Loading
Loading
Loading
+7 −0
Changes for Get Started with Amazon Data Storage, Using S3 and Glacier - Working Files/Chapter 1/No Work Files.rtf: 7 added lines, 0 removed lines.
Original line number Diff line number Diff line
{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww9000\viewh8400\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural

\f0\fs24 \cf0 No work files for this lesson...}
 No newline at end of file
+8 −0
Changes for Get Started with Amazon Data Storage, Using S3 and Glacier - Working Files/Chapter 2/AWS Command Line Interface.webloc: 8 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>URL</key>
	<string>https://aws.amazon.com/cli/</string>
</dict>
</plist>
+8 −0
Changes for Get Started with Amazon Data Storage, Using S3 and Glacier - Working Files/Chapter 2/AWS Command Line Tools - Amazon Web Services.webloc: 8 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>URL</key>
	<string>http://docs.aws.amazon.com/general/latest/gr/GetTheTools.html</string>
</dict>
</plist>
+11 −0
Changes for Get Started with Amazon Data Storage, Using S3 and Glacier - Working Files/Chapter 2/Set Up AWS Demo Environment.txt: 11 added lines, 0 removed lines.
Original line number Diff line number Diff line
Set Up AWS Demo Environment
Instructions are here:
http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html

Terminal Commands:
python --version
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
unzip awscli-bundle.zip
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
aws configure
aws s3 ls
 No newline at end of file
+101 −0
Changes for Get Started with Amazon Data Storage, Using S3 and Glacier - Working Files/Chapter 3/Amazon S3 Cross Region Replication.txt: 101 added lines, 0 removed lines.
Original line number Diff line number Diff line
Resources:

https://aws.amazon.com/blogs/aws/new-cross-region-replication-for-amazon-s3/
https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html
https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-how-setup.html
https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-walkthrough1.html
http://docs.aws.amazon.com/AmazonS3/latest/API/s3-api.pdf

Requirements:
* source and destination buckets must be versioning-enabled
* source and destination buckets must be in two different AWS regions
* one to one source to destination bucket replication
* you must give Amazon S3 permissions using an IAM role that Amazon S3 can assume

There is another CLI s3api that gives you access to advanced features of Amazon S3

so instead of writing aws s3, you use aws s3 api


Source bucket: benbutler-usstandard
Target bucket: benbutler-singapore

Enable Versioning of bucket in the AWS Console
Go to bucket, click on Properties, click on Versioning, click on Enable Versioning


Create an IAM Role
A trust policy in which you trust Amazon S3 to assume the role as shown:
{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Principal":{
            "Service":"s3.amazonaws.com"
         },
         "Action":"sts:AssumeRole"
      }
   ]
}
An access policy in which you grant the role permission to perform the replication task on your behalf.
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:GetReplicationConfiguration",
        "s3:ListBucket"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::benbutler-usstandard"
      ]
    },
    {
      "Action": [
        "s3:GetObjectVersion",
        "s3:GetObjectVersionAcl"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::benbutler-usstandard/*"
      ]
    },
    {
      "Action": [
        "s3:ReplicateObject",
        "s3:ReplicateDelete"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::benbutler-singapore/*"
    }
  ]
}




To find a location of your bucket:
	
	aws s3api get-bucket-location --bucket benbutler-singapore

To Turn on Versioning:
	
	aws s3api put-bucket-versioning --bucket benbutler-singapore --versioning-configuration Status=Enabled

To Turn off Versioning:
	
	aws s3api put-bucket-versioning --bucket benbutler-singapore --versioning-configuration Status=Suspended

To Find out Versioning Status of your Bucket:
	
	aws s3api get-bucket-versioning --bucket benbutler-singapore

To Find the Version ID of an Object 

	aws s3api list-object-versions --bucket benbutler-usstandard --key bigdata.txt	

To Find out if an object has replicated:

	aws s3api head-object --bucket benbutler-usstandard --key object-key --version-id //object-version-id// 	
 No newline at end of file
Loading