I have create multiple AWS instance running Amazon linux with Couchbase Enterprise 4.5.1. edition installed in it. I can use Couchbase AMIs to create AWS instance. But the problem in this approach is how to use Couchbase licence that was purchased by organization. I cannot go for on-fly purchase or hourly / yearly subscription for Couchbase. Could you help me with the steps that has to follow to add our own Couchbase licence?
Given how you want to obtain/use the software, you're best off just picking the AMI you want to run on and start instances from that. It's functionally the same.
Related
We are currently setting up AWS hosting for our Web Application.
This Laravel Web Application will have a Schema per company that registers, meaning it will have a large sized mySql server.
I have gone through the motions of setting up a VPC with EC2 instances and and RDS for this mySql server.
However we are currently looking at using Laravel Forge as a tool to host.
What Forge does differently is that it includes the mySql Server on the EC2 instance not on an RDS.
The question I have come to ask here is, what are the implications if any of having the mySql server on the EC2 instance rather then an RDS.
Would there be performance issues?
Is it better practice to have an RDS?
Or is Forges out the box way of packaging this all together on an EC2 server fine?
By running this on an EC2 instance you will taking more of the responsibility of managing the database, not just installation but also patching, backups, recovery. Harder to maintain functionality such as replication and HA will also be on you to implement and monitor.
By running on RDS AWS is going to take the heavy lifting of this and implement a best practice version of MySQL which offers the flexibility of allowing you to run a MySQL stack in the cloud without having to really think about the implementation details under the hood other than deciding do you want it to be HA and how many replicas do you want.
In saying this by using RDS you're also giving up the ability to run it however you want, you are limited to the versions of the database that RDS supports (although this is now quite soon after release). In addition not all plugins or extensions will be active so check this functionality before deciding.
We need to migrate an Oracle DB from Azure VM to AWS RDS Aurora. And we have a checklist that what are the things we have to take care while doing migration from Oracle to Aurora.
But, what would be the best approach to do the migration. i.e., Migrate Azure Oracle VM to AWS EC2 and then, migrate to RDS. Or Migrate directly from Azure VM to AWS RDS Aurora using any Azure service(s), DMS, Datapump, SCT, something like that.
(I am not familiar with Azure DMS / DB related services)
I would go direct from Azure Oracle RM to the AWS RDS.
For the tool take a look at using the AWS Database Migration Service (DMS). It lets you connect to your source database (Azure Oracle) to your target database (AWS RDS For Oracle). AWS DMS handles creating the schema and tables in the target database.
The DMS deploys on dedicated VMs for you migration and is priced based on the size of the EC2 instance you will need from a t2.micro ($0.43/day) to a r4.8xlarge ($80/day + storage cost) and everything in between Data transfer into DMS is free and transfer to an RDS in the same AZ (availability zone) as the DMS is free.
A few features that makes the DMS nice include:
Continuous Data Replication: Once your initial migration is completed it can continue to replicate the data until you are ready to make the switch. This is nice because you do your migration ahead of time and have plenty of time for verification before you switch the application over.
Schema Conversion Tool: Not useful in your case but if you where migrating from to a different database such as Oracle to Aurora it would handle the schema for you.
You can learn more and get start at AWS Database Migration Service
I wanted to know if we can migrate an oracle database from on premise to AWS, using aws/open source tools/services only with zero downtime. The preference is just AWS services. since this is a 1 time requirement we are not interested in purchasing third party tool licenses. The important requirement for this POC is that there shouldn't be any downtime.
Kindly let me know if you can provide me any inputs for the same.
Thanks
To reduce database downtime, use standby technology.
Install Oracle software only(same version on premise server) on the new server AWS EC2.
Perform a hot backup on the premise server.
Restore the hot backup to the new server AWS EC2.
Configure the standby between the premise Oracle servers
and new AWS EC2.
Make switchover role primary to standby AWS EC2.
I have looked in the Magento & AWS Documentation but that didn't really help.
I've installed Magento on Elastic Beanstalk with 1 instance, I proceeded to snapshot the volume and make an AMI and changed the AMI setting in Elastic Beanstalk. Then spun up 2 more instances in the other availability zones. They went back to the Magento installation pages.
How do I fix this? I thought the AMI made from the snapshot would of captured the DB and other files created on installation. Meaning they'd just connect the DB and run.
Cheers to anyone who helps!
You probably don't want your database installed on your EC2 inside the elastic beanstalk. Since elastic beanstalk just removes the instance when there is an error on it and spawns a new one. You then end up loosing data. Besides that you need 1 single database server, not a database server on each of the EC2 instances inside the elastic beanstalk.
You want a separate database server, I personally always use Amazon RDS for this since this is made for this purpose.
When you are getting the install page it probably means Magento cannot locate your app/etc/local.xml. Since AWS normally gets your files from git and it is best practice to not have your local.xml in version control you are probably missing this one?
Hope that I pointed you in the right direction.
Keep in mind that the database is just your first challange, next things you are going to need to handle is:
Sessions (database is a good option but I use AWS ElastiCache with
Redis)
Cache (again, AWS ElastiCache with Redis)
Media Storage (I use S3 with S3FS and CloudFront)
CDN (CloudFront)
Here are some sites that have helped me setting up my first elastic beanstalks with Magento:
http://www.aschroder.com/2013/04/actually-running-magento-on-amazons-elastic-beanstalk-cloud-platform/
http://www.slideshare.net/corleycloud/scale-your-magento-app-with-elastic-beanstalk
I am very new to the Amazon AWS services. I was wondering if there is a way to run an instance of EC2 (say, Amazon Linux AMI) and then connect two environments to this instance.
Particularly, I'd like to run a PHP and a Tomcat environment on a single EC2 instance.
The problem is, every time I create a new environment in Elastic Beanstalk, it seems to create a new EC2 instance as well. Am I missing something here?
I'd appreciate any hint on this.
AWS Elastic Beanstalk is designed for deploying your running apps in a way that is designed for scalability from the ground-up. Because of this, Elastic Beanstalk will launch one or more EC2 instances, connect them to an Elastic Load Balancer instance, configure CloudWatch monitoring and Auto Scaling triggers.
Also, because of its fundamental design for scalability, Elastic Beanstalk is designed around a one-app-per-environment model (whereby "environment", I mean one of these EC2 + ELB + CloudWatch + AutoScaling clusters).
Since running two separate web servers with two separate apps (PHP & Java) is not a fundamentally scalable design, it's not a use-case that Elastic Beanstalk is optimized for.
You are free to spin-up a standalone EC2 instance and install whatever you'd like on it, but you're right — git aws.push support has not been made available for standalone EC2 instances. If the git support is important to you, you'll need to weigh the pros and cons of each approach.
I would also like to be able to do this, basically from a cost perspective for demos etc.
For example, a single instance with one PHP app and one Java app. Or, a single instance with two Java apps.
However, from what I have read so far in the Elastic Beanstalk developer guide, I have not found anything explicitly stating that multiple applications per environment is supported (or even, multiple environments per EC2 instance - if that even makes sense).
It makes me wonder if this is a feature that is often requested and planned for the future, or alternatively if the single-app-per-environment model is 'by design' for some reason.