I am tying to deploy galera cluster on aws. Is it a good idea to use VPC or making a cluster with 2-3 open ec2 instances. What are pros and cons.
Also, Is there any extra billing for VPC? Any help will be great!!
I am not sure of the variation of the installation of the GALERA on AWS VPC with EC2 instances.
One suggestion which I would add is the consideration of the RDS - Database as a service from AWS; I don't whether that would solve your need to use GALERA.
Regarding the pricing for the VPC, it is free; you only pay for the underlying EC2 instances running, Elastic IP - Data Transfer, Out Bandwidth etc. If you are going to connect your local data center to VPC using VPC/VPN gateway - that would be charged
No there is no extra cost for a VPC [but only for the resources used in it]
With Galera you can have a multi-master architecture [I have not implemented it] but with RDS you cannot. I have setup a Disaster Recovery plan with RDS where a multi-master architecture would be eliminating the downtime , but instead set it up with the use of Read Replica which would be promoted in a master. That's the way AWS RDS works.
Related
We have an AWS account with multiple EC2 instances and an RDS instance. These have been running since before VPCs were introduced. Now I need to upgrade the RDS instance class and the new class can only be established in a VPC. So if our RDS instance is modified (converted) into the new class and the new RDS instance is in a VPC will the EC2 instances that use this RDS need to be moved into the VPC at the same time or can this be a separate process?
RDS and EC2 security groups are not cross-compatible between classic and vpc EC2. If you have an RDS with an EC2 sec group reference you will not be able to add a classic ec2 sec group to your vpc RDS sec group.
Differences Between Security Groups for EC2-Classic and EC2-VPC
Your best bet is to migrate your EC2 infrastructure to VPC along with your RDS. You can of course grant global access to your RDS if you want to separate the process and then lock it back down when you've migrated your EC2 infrastructure but this is a big no no (huge security risk).
This is a non trivial process and I feel your pain. The least complex thing is to incur downtime during migration so that you don't have divergence between RDS instances. But that's not ideal especially when you have a large RDS storage-wise. BTW, you will want to test how long the process takes to snapshot and restore the RDS since it might take a while.
An alternative if you can manage it is to force your app to use read-only replicas while you migrate the RDS. That way your app can still function (kind of) and you won't have to worry about reconciliation between RDS instances post-migration. But obviously your app needs to be aware that it's in read-only mode or you'll end up with erratic behavior.
Forgot to mention there is something called classic-link which might help here but I've personally never used classic-link. Check it out in an AWS whitepaper write up here:
Move Amazon RDS MySQL
Databases to Amazon VPC
using Amazon EC2
ClassicLink and Read
Replicas
Is there a way to present onprem storage to AWS EC2 instances without copying to S3 etc. We have a storage array in our DC, I want to carve up LUNs and present them to our apps running on EC2 instances in AWS, using storage gateway. Can someone suggest if this is possible at all? I don't want to pay for AWS EBS volumes, when I have plenty of storage available with me. Thanks.
You will not be able to do this with Storage Gateway - it serves as an interface between your local network and S3.
If you want to expose your local disk to EC2, you will need to run a file share (NFS or Samba), set up a VPN or Direct Connect between your data center and your AWS VPC, and then mount the exported volumes on your EC2 instance.
If you don't want to pay for any EBS volumes, you should look for instance storage based AMIs. Keep in mind that you cannot stop these instances - you can only terminate them.
According to latest AWS cloud architecture and infrastructure developments, AWS cloud resources can access on premise storages. Not only computing instances but also AWS managed SaaS can do it same. Standard protocols such as NFS, SMB and iSCSI available and you can mount AWS computing instances to remote storage through site-to-site VPN.
I have use case query regarding scaling that I have a PHP Magento application running inside a Docker container on AWS Elastic Beanstalk backed by a AWS RDS (t2.micro) instance.
Now when I use Apache JMeter for load testing, I throw just 100 users in 10 seconds and my RDS instance goes down but Beanstalk instance remains fine. My question is how do I scale the RDS when an huge number of traffic comes?
Some said to me that you should use a at least medium instance for your RDS but how can we use the autoscale feature? Whether it exists in the case of RDS or not?
Some also said to use AWS RDS Read Replicas! I did not work with Read Replicas before but how do I load balance the traffic between different RDS read replicas, what are different ways and what if we need some low database operations? Will it scale in?
Any appropriate guidance will be appreciable. :)
For High Availability file system cluster, is it a good idea to use amazon load balancer to manage the ec2-instances where i have setup the gluster cluster.
If i can use a aws load balancer is it possible to create a init script where i can specify the instance type,gluster installation steps in the load balancer.
Thanks.
I don't think it's a good idea.
Why don't you want to use Amazon S3 as your data storage?
It's redundant and highly available by design.
You can also set up cross-region replication replication in order to have ultimate high-availability.
I'm using aws to run php app and it works good.
But I have a question: Does Any one knows if accessing to RDS from ec2 in the same region can trigger bandwith charge ?
Thanks.
If both the RDS and EC2 servers are in the same availability zone then there is no data transfer charge. If they are in different availability zones then there is the standard data transfer charge on the EC2 instance, but no transfer charge on the RDS instance. In addition, there is no charge for RDS data replication between availability zones.
This information used to be on this page, but now I can't find it. You can see some of this information in the RDS FAQ page. There is also a discussion thread on the official RDS forum here.