Purpose:
Embrace DevOps by running everything in the cloud - the only thing you need locally is a very good developer machine.How to become a DevOps developer.
I need a platform as a service solution for both the application server layer and the database layer but I would like to retain some control over the infrastructure. There are several solutions including Oracle Cloud, Google AppSpot, Pivotal CloudFoundry, Cloudbees, Heroku and other providers - however there is one service that has almost everything we need - Amazon Web Services.
I ran Oracle cloud for 6 months - specifically the PaaS offering around their $275/month Java service and their $250/month database service.
http://eclipsejpa.blogspot.ca/2013/06/java-cloud-providers-review.html
However, I found that it did not offer the flexibility that AWS currently offers in a combined Iaas and PaaS model.
Account Setup:
Get an Amazon Web Services account at http://aws.amazon.comGet Atlassian JIRA, Bitbucket and Bamboo accounts
Link your bamboo and jira accounts https://confluence.atlassian.com/display/BITBUCKET/Linking+Bitbucket+and+GitHub+accounts+to+JIRA
Elastic Beanstalk supports Java 8 and Tomcat 8 but you need to enable Java 8 first https://jira.atlassian.com/browse/BAM-15299#
Developer Setup:
A good machine - ideally the top Mac ProVMware Fusion for running multiple OSX, Redhat and Windows virtual machines
MySQL (or PostgreSQL)
Connect to your EC2 or RDS instance
Follow
obrienlabs-mbp15:keys michaelobrien$ chmod 400 obrien_systems_aws_20141115.pem obrienlabs-mbp15:keys michaelobrien$ ssh-add obrien_systems_aws_20141115.pem obrienlabs-mbp15:keys michaelobrien$ ssh -i obrien_systems_aws_20141115.pem ec2-user@ec2-11-222-333-444.compute-1.amazonaws.com https://aws.amazon.com/amazon-linux-ami/2014.09-release-notes/No packages needed for security; 1 packages available Run "sudo yum update" to apply all updates. [ec2-user@ip-172-31-01-01 ~]$or
obrienlabs-mbp15:keys michaelobrien$ ssh-add obrien_systems_aws_20141115.pem
to bastion
obrienlabs-mbp15:keys michaelobrien$ ssh -A ec2-user@ec2-11-222-333-444.compute-1.amazonaws.com
then to instanceobrienlabs-mbp15:keys michaelobrien$ ssh ec2-user@ec2-172-20-1-244.compute-1.amazonaws.comMake sure you are using the latest AWS CLI as some API has been upgraded
[ec2-user@ip-10-0-1-106 ~]$ aws --version aws-cli/1.5.1 Python/2.6.9 Linux/3.14.20-20.44.amzn1.x86_64
Integration:
You will want Continuous Integration support in the form of a GIT hosting service that supports Maven. GitHub is one possibility but I find the Atlassian has a rich ecosystem that integrates very well with Amazon AWS. A bamboo build account can automate building and deploying to your elastic beanstalk EC2 instances with a minimal amount of scripting.Throughput:
http://java.awsblog.com/post/TxBSZ02ZOG3VPZ/AWS-SDK-for-Java-Maven-ModulesScaleArc
ScaleArc as a software SQL cache and read/write sharding proxy sees its best performance when the number of threads is a small multiple of the number of cores in the proxy.http://java.dzone.com/articles/scalearc-benchmarking-sysbench
20141112 AWS re:Invent Keynote
AWS EC2 container service (docker)
https://aws.amazon.com/ecs/
ECS arrived 20141218
http://docs.aws.amazon.com/AmazonECS/latest/developerguide/get-set-up-for-amazon-ecs.html
Google just came out with an alpha version of their microservices container – a 3rd option to look at briefly.
High Availability live key rotation and tracking
AWS Key Management
There is no easy way to see what all is running and what the
ecosystem connections are
AWS Config
Additional tracking on top of AWS CloudTrail
AWS Service Catalog
CI and CD
AWS CodeCommit
AWS CodePipeline
AWS CodeDeploy
AWS Aurora (Cloud
native DB)
20141113: AWS Lambda Compute Service
After you ask to be in the preview
https://console.aws.amazon.com/lambda/home?region=us-east-1#/create
get up to speed on node.js
https://aws.amazon.com/sdk-for-node-js/
No comments:
Post a Comment