Skip to main content

I am trying to create a bucket 'MyBucket' but I can't. It says bucket with the same name already exists but I could not see any such in my account!

When you try to create a bucket with a name MyBucket (or whatever name), sometimes you would get the following error:

deploy-doc-store-s3 already exists and you will not be able to create the bucket. You would search for that bucket in your account but still you would not find it! Then, why are you not able to create MyBucket when a bucket with the same name does not exist in your account?

This is because S3 is global. AWS S3 does not require region selection. So, S3 Bucket names need to be globally unique. It occurred because someone else would have created a bucket with the name MyBucket.

How to confirm if there already exists a bucket with the name MyBucket?

Run the following command:

aws s3api head-bucket --bucket MyBucket

If it returns,

NOTHING i.e, 200 OK - the bucket already exists and you have access to it (the bucket exists in your current account)
403 Forbidden -  the bucket already exists and you don't have access to it  (the bucket exists in another account)
404 Not Found -  the bucket does not exist

If you get 404, you can create a bucket with that name otherwise you can't.

Comments

Popular posts from this blog

AWS Route53 - Private Hosted Zone

AWS - Error - An error occurred (ExpiredToken) when calling the DescribeStacks operation: The security token included in the request is expired

Error:   An error occurred (ExpiredToken) when calling the DescribeStacks operation: The security token included in the request is expired. Reason: It occurred when I ran a MAKE command with a profile having expired token (security credentials) Fix: Generate new security credentials (aws sts assume-role) and run the command again

High availability (Multi-AZ) for Amazon RDS

There is something called failover technology in Amazon. AWS RDS's Multi-AZ deployment uses this technology. If you enable Multi-AZ for an RDS DB, say MySQL DB, RDS automatically creates a standby replica in a different AZ. If the primary DB instance is in AZ-1A, then RDS creates a standby replica in AZ-1B (for example). Suppose I add a new row to a table in the primary DB, then the same row is added, almost in the same time, in the standby replica. This is called as synchronous replication . Thus, standby replicas are useful during DB instance failure/ AZ disruption . How? Because, there is no need to create a backup later because the backup has already been created. This gives high availability during planned system maintenance. Normal backup  operation - I/O activities are blocked in the primary database  Automated backup operation (standby replica) - I/O activities are not blocked This standby replica is not similar to read replica (which is used for disaster recovery). S...