{"id":410,"date":"2017-05-02T22:01:23","date_gmt":"2017-05-02T22:01:23","guid":{"rendered":"http:\/\/kaizen-koka.com\/?p=410"},"modified":"2017-05-08T13:08:23","modified_gmt":"2017-05-08T13:08:23","slug":"aws-keywords","status":"publish","type":"post","link":"https:\/\/kaizen-koka.com\/?p=410","title":{"rendered":"AWS &#8211; KeyWords"},"content":{"rendered":"<h1>\n\tInProgress&#8230;.<br \/>\n<\/h1>\n<h1>\n\t&nbsp;<br \/>\n<\/h1>\n<p>\n\tRegion &#8211; 12\n<\/p>\n<p>\n\tAvailability&nbsp;Zone &#8211; 33\n<\/p>\n<p>\n\tEdge Locations &#8211; 56\n<\/p>\n<p>\n\tPlacement Group: keeping multiple instances together in a single AZ, where you want to get low latency, high throughput, 10 gbps&nbsp;network\n<\/p>\n<p>\n\tASG\n<\/p>\n<p>\n\tELB\n<\/p>\n<p>\n\tRoute53<br \/>\n\t&nbsp; ELB don not have pre-defined IPv4 addresses, you resolve to them using a DNS name.<br \/>\n\t&nbsp; Difference between Alias Record and a CNAME.<br \/>\n\t&nbsp; The DNS port is on Port 53 and Route53 is a DNS service<br \/>\n\t&nbsp; Route53 Routing Policies:<br \/>\n\t&nbsp; Simple -&gt; Single Webserver scenarios.<br \/>\n\t&nbsp; Weighted -&gt; Lets you split traffic based on different weights assigned<br \/>\n\t&nbsp; Latency -&gt; &nbsp;Allows you to route your traffic based on the lowest network latency for your end user(i.e which region will give them the fastest response time).<br \/>\n\t&nbsp; Failover -&gt; Failover routing policies are used when you want to create an active\/passive set ip.&nbsp;<br \/>\n\t&nbsp; GeoLocation -&gt; GeoLocation lets you chosse where your traffic will be sent based on the geographic location of your users(local language supported instances).\n<\/p>\n<p>\n\tEc2&nbsp;<br \/>\n\t&nbsp; Pricing Models for Ec2:<br \/>\n\t&nbsp; &nbsp; On Demand<br \/>\n\t&nbsp; &nbsp; Reserved<br \/>\n\t&nbsp; &nbsp; Spot &nbsp;-&gt; if you terminate, you need pay for usage. If aws terminated &#8211; its free<br \/>\n\t&nbsp; &nbsp; Dedicated<br \/>\n\t&nbsp; Instance types:<br \/>\n\t&nbsp; &nbsp; Dr MC GIFT PX<br \/>\n\t&nbsp; &nbsp; File Service, Memory Optimised, General Pupose appln service, Compute Optimized, (G)Graphics intensive, (I)High Speed Storage, (F)Field Programmable Gate Array, (T)Low cost general purpose, (P)Graphics&amp; Genreal purpose, (X)xtreme Memory Optimised &nbsp;<br \/>\n\t&nbsp; EBS :Elastic BLock Service<br \/>\n\t&nbsp; &nbsp; SSD &#8211; general purpose &#8211; GP2, upto 10000 IOPS<br \/>\n\t&nbsp; &nbsp; SSD &#8211; provisioned IOPS &nbsp;&#8211; 101 &#8211; more than 10000<br \/>\n\t&nbsp; &nbsp; HDD &#8211; Throughput optimised, &#8211; ST1 frequently accessed workloads -not used for root volumes, used for just attching<br \/>\n\t&nbsp; &nbsp; HDD, Cold &#8211; SC1 , less frequenced accessed data.-not used for root volumes, used for just attching<br \/>\n\t&nbsp; &nbsp; HDD &#8211; Magnetic, Standard &#8211; cheap &amp; infreq accessed storage.\n<\/p>\n<p>\n\t&nbsp; &nbsp; You can not mount 1 EBS in to multiple Ec2 instances, instead use EFS.<br \/>\n\t&nbsp; Volumes vs Snapshots<br \/>\n\t&nbsp; &nbsp; Volumes exsits on EBS<br \/>\n\t&nbsp; &nbsp; Snapshot exsits on S3\n<\/p>\n<p>\n\tMonitoring:&nbsp;<br \/>\n\t&nbsp; &nbsp;Standard Monitoring : 5 min<br \/>\n\t&nbsp; &nbsp;Detail Monitoring : 1 min<br \/>\n\t&nbsp; &nbsp;CloudWatch is performance monitoring<br \/>\n\t&nbsp; &nbsp;CloudTrail is for Auditing<br \/>\n\t&nbsp; Dashboards, Alarms, Events &amp; Logs<br \/>\n\tRoles:<br \/>\n\t&nbsp; &nbsp;Roles are more secured than access key and secret access key. Roles can be assinged to Ec2 instance after creating it, butonly throguh command line.<br \/>\n\t&nbsp; &nbsp;Roles are universal, no region.<br \/>\n\tInstance metadata: curl http:\/\/169.254.169.254\/latest\/metadata\/<br \/>\n\tEFS (Elastic File System)&nbsp;<br \/>\n\tLambda: Serverless, AWS lambda is a compute service where you can upload your code and create a lambda function\n<\/p>\n<p>\n\t<br \/>\n\tS3\n<\/p>\n<p>\n\tIAM\n<\/p>\n<p>\n\tAMI\n<\/p>\n<p>\n\tDatabase<br \/>\n\t&nbsp; RDS &#8211; OLTP (Online Txn Processing)<br \/>\n\t&nbsp; &nbsp;SQL,Oracle,MySqlServer,PostgresSQL,Aurora,MariaDB<br \/>\n\t&nbsp; NonRelation Database: &nbsp;<br \/>\n\t&nbsp; &nbsp;DynamoDB (DocumentBased)<br \/>\n\t&nbsp; &nbsp; Collection = table,Document = row,Key Value Pairs = fields&nbsp;<br \/>\n\t&nbsp; ElasticCache is a web service that makes it east to deploy, operate, and scale an in-memory cache in the cloud. Elastic cache supports two open-source in-memory caching engines.<br \/>\n\t&nbsp; &nbsp;&#8211; Memcached<br \/>\n\t&nbsp; &nbsp;&#8211; Redis&nbsp;<br \/>\n\t&nbsp; DMS(Database Migration Service) : Allow you to migrate your production database to AWS.<br \/>\n\t&nbsp; Backups: Automated Backups and Database Snapshots<br \/>\n\t&nbsp; Multi-AZ RDS is for disastr recovery only not for improving performance. For performance improvements, use read replicas.<br \/>\n\t&nbsp; Read Replica :for performance improvement\/scaling.Read replicas allow you to have a only copy of your production db. This is achieved by using asynchronous replication from the primary RDS instance to the read replica.<br \/>\n\t&nbsp; &nbsp; &#8211; Must have automatic backups truned on in order to deploy a read replica.<br \/>\n\t&nbsp; &nbsp; &#8211; You can have up to 5 read replicas copies of any databases.<br \/>\n\t&nbsp; &nbsp; &#8211; You can have read replicas of read replicas.<br \/>\n\t&nbsp; &nbsp; &#8211; Each read replica will have its own dns endpoint.<br \/>\n\t&nbsp; &nbsp; &#8211; You cannot have read replicas that have multi-AZ.<br \/>\n\t&nbsp; DynamoDB:&nbsp;<br \/>\n\t&nbsp; &nbsp; -Supports both document and key-value data models<br \/>\n\t&nbsp; &nbsp; -Stored on SSD storage<br \/>\n\t&nbsp; &nbsp; -Stored across 3 geographically distince data centers<br \/>\n\t&nbsp; &nbsp; -Eventually consistent reads(default) = 1sec<br \/>\n\t&nbsp; &nbsp; -Strongly Consistent reads &lt; 1sec<br \/>\n\tRedShift &#8211; OLAP (Online Analytical Processing)<br \/>\n\t&nbsp; &nbsp; -Single Node&nbsp;<br \/>\n\t&nbsp; &nbsp; &#8211; Multi Node cfg<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Leader node (1 leader node)<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Compute node (up to 128 nodes)<br \/>\n\tAurora :&nbsp;<br \/>\n\t&nbsp; &nbsp; -Amzon SQL engine. 2 copies of your data is contained in each avaliability zone, with minimum of 3 AZ. 6 copies of your data.<br \/>\n\t&nbsp; &nbsp; -Transparently handles loss up to two copies of data with out affecting database write avaliability and up to 3 copies with out affecting read avaliability<br \/>\n\t&nbsp; &nbsp; -Self healing.<br \/>\n\t&nbsp; &nbsp; -2 replicas. 1. Aurara Replicas(15 replicas ) 2. mySQL Replical(5 replicas)\n<\/p>\n<p>\n\tVPC Virtual Private Cloud<br \/>\n\t&nbsp; &nbsp;&#8211; VPC as a logical datacenter in AWS, consists of IGW&#39;s( Virtual Private Gateways), route tables, Network Access Control Lists, Subnets, Security Groups.<br \/>\n\t&nbsp; &nbsp;&#8211; 1 Subnet = 1 Avaliability Zone<br \/>\n\t&nbsp; &nbsp;&#8211; Security groups are stateful<br \/>\n\t&nbsp; &nbsp;&#8211; Netwrok Access Control Lists are stateless<br \/>\n\t&nbsp; &nbsp;&#8211; No Transitive peering (if VPC A &lt;-&gt; VPC B, VPC B &lt;-&gt; VPC C, but you cannot between VPC A &lt;-&gt;VPC C)<br \/>\n\t&nbsp;What you can do with a VPC ?<br \/>\n\t&nbsp; &nbsp;&#8211; Launch instances in to a subnet of your choosing<br \/>\n\t&nbsp; &nbsp;&#8211; Assign custom IP address ranges in each subnet<br \/>\n\t&nbsp; &nbsp;&#8211; Cfg route tables between subnets<br \/>\n\t&nbsp; &nbsp;&#8211; Create internet gateway and attach it to our VPC<br \/>\n\t&nbsp; &nbsp;&#8211; Much better secusrity control over your AWS resources.<br \/>\n\t&nbsp; &nbsp;&#8211; Instane security groups<br \/>\n\t&nbsp; &nbsp;&#8211; Subnet netwrok access control lists(ACLS)\n<\/p>\n<p>\n\tPoints to Remember:&nbsp;<br \/>\n\t&nbsp; &#8211; When you create a custom VPC, by default,it creats security groups, Route Tables, Netwrok ACL&#39;s. It doesn&#39;t create Subnets, Gateways<br \/>\n\t&nbsp; &#8211; One Internet Gateway(IGW) to one VPC<br \/>\n\t&nbsp; &#8211; ICMP SG is for ping<br \/>\n\t&nbsp; NAT instances (2016)&nbsp;<br \/>\n\t&nbsp; &#8211; NAT instance is an EC2 instance provides access to IGW.&nbsp;<br \/>\n\t&nbsp; &#8211; When creating a NAT instance, Disable Source\/Destination Check on the Instance<br \/>\n\t&nbsp; &#8211; NAT insatnce must be in a public subnet.<br \/>\n\t&nbsp; &#8211; There must be a route out of the private subnet to the NAT insatnce, in order for this to work<br \/>\n\t&nbsp; &#8211; Nat Instances are behind security groups<br \/>\n\t&nbsp; NAT Gateways<br \/>\n\t&nbsp; &#8211; Scale automatically up to 10Gbps<br \/>\n\t&nbsp; &#8211; Automatically assigned a public ip address<br \/>\n\t&nbsp; &#8211; You need to update your route tables.<br \/>\n\t&nbsp; &#8211; No need to disable Source\/Destination checks\n<\/p>\n<p>\n\t&nbsp;Network Access Control Lists Vs Security Groups (NACLs Vs SG) &nbsp;<br \/>\n\t&nbsp; SG &#8211; Operates at the instance level (1st layer of defence)<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Supports allow rules only<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; is stateful, return traffic is automagically allowed regardless of any rules<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; evaluate all rules before deciding wether to allow traffic<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Applies to an instance only if someone specifies the security group when launching the instance or associates the security group with the instance later on<br \/>\n\t&nbsp;&nbsp;<br \/>\n\t&nbsp; Network ACL &#8211; Operates at subnet level(2nd layer of defence)<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Operates at the Subnet level<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Supports allow rules and deny rules<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Is stateless &#8211; return traffic must be explicitly allowed by rules<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; process rules in number order when deciding wether to allow traffic<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Automatically applies to all instances in the subnet its associated with (backup layer of defence, so you don&#39;t have to rely on someone specifying the security group)<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Custom Netwrok ACL, inbound and outbound restricted<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; Default Netwrok ACL, inbound and outbound allowed<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; One subnet = One AZ = 1 Netwrok ACL<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; NACL works only when Ephimeal outbound&amp;inbound rules defined with range 1024-65535<br \/>\n\t&nbsp;I &nbsp; &#8211; Rules evaluated in order. Lower rule number take effect in case conflict(rule 99 get priorty than 100)\n<\/p>\n<p>\n\t&nbsp;*Network ACL&#39;s<br \/>\n\t&nbsp;1. Your VPC automatically comes a default network ACL andby default it allows all the outbound and inbound traffic.<br \/>\n\t&nbsp;2. You can create a custom network ACL. By default, each custom network ACL denies all inbound and outbound traffic until you add rules.<br \/>\n\t&nbsp;3. Each subnet in your VPC must be associated with a network ACL. If you don&#39;t explicitly associate a subnet with a network ACL, the subnet is automatically assoicated with the default network ACL.<br \/>\n\t&nbsp;4. You can associate a network ACL with multiple subnets; however, a subnet can be assoicated with only one network ACL at a time. When you assoicate a new network ACL with a subnet, the previous association is removed.<br \/>\n\t&nbsp;5. A network ACL has separate inbound and outbound rules, and each rule can either allow or deny traffic.<br \/>\n\t&nbsp;6. Network ACLs are stateless; responses to allowed inbound traffic are subject to the rules for outbound traffic(and vice versa)<br \/>\n\t&nbsp;7.Block IP addresses using network ACL&#39;s not security groups.<br \/>\n\t&nbsp;<br \/>\n\tVPC ELB setup: You will need to select a subnet for each avaliabilty zone where you wish traffic to be routed by your load balancer. If you have instances in only one Availability Zone, please select at least two subnets in different avaliability Zones to provide higher avaliability for your load balancer.\n<\/p>\n<p>\n\tNAT vs Bastion Servers:&nbsp;<br \/>\n\tA NAT is used to provide a internet traffic to EC2 instances in private subnets<br \/>\n\tA Bastion is used to securely administer EC2 instances(using SSH or RDP) in private subnets. These are like jump boxes.\n<\/p>\n<p>\n\tVPC Flow Logs: Flow logs enable you to capture IP traffic flow for the network interfaces in your resources.\n<\/p>\n<p>\n\tApplication Section:\n<\/p>\n<p>\n\tSQS &#8211; is a web service that gives you access to a message queue that can be used to store messages while waiting for a computer to process them.<br \/>\n\tAmazon SQS is a distributed queue system that enables web service applications to quickly and reliably queue messages that one component in the application generates to be consumed by another component. &nbsp;<br \/>\n\t1. Messages can contain up to 256 KB of text in any format.&nbsp;<br \/>\n\t2. Order is not posibble&nbsp;<br \/>\n\t3. Asynchronously pulls the task messages from the queue.<br \/>\n\t4. 12 hr Visibilty timeout period.&nbsp;<br \/>\n\t5. Does not offer FIFO<br \/>\n\t6. Amazon SQS engineered to provide &quot;at least once&quot; delivery of all messages in its queues.<br \/>\n\t7. Billed at 64kb chunks.\n<\/p>\n<p>\n\tSWF (Simple Workflow Service) is a web service that makes it easy to coordinate work across distributed application component.\n<\/p>\n<p>\n\tSQS vs SWF :&nbsp;<br \/>\n\t&nbsp;&#8211; SQS has a retention period of 14 days, SWF up to 1 yr(12 months) for workflow executions.<br \/>\n\t&nbsp;&#8211; SQS offers a message-oriented API where as SWF presents atask-oriented API<br \/>\n\t&nbsp;&#8211; SWF ensures that a task is assigned only once.\n<\/p>\n<p>\n\t&nbsp;SWF Actors&nbsp;<br \/>\n\t&nbsp; &nbsp;Workflow Starters &#8211; An application that can initiate a workflow<br \/>\n\t&nbsp; &nbsp;Deciders &#8211; Control the flow of activity tasks in a workflow(or fails) a Decider decides to do next<br \/>\n\t&nbsp; &nbsp;Activity Workers &#8211; carry out the actitivty tasks.\n<\/p>\n<p>\n\tSNS (Simple notification service) &#8211; is a webservice that makes it easy to set up, operate, and send notifications from the cloud. SNS is pushing messaging system. Messages are stored under multiple AZ.<br \/>\n\tCreate a SNS topic and assign a subscriber<br \/>\n\t&nbsp;&#8211; Insatantaneous, push-based delivery(no polling])<br \/>\n\t&nbsp;&#8211; Felxible message delivery over multiple transport protocols.<br \/>\n\t&nbsp;SNS Subscribers &#8211; HTTP, HTTPS, Email, Email-JSON, SQS, Application, Lambda\n<\/p>\n<p>\n\tSQS Vs SNS<br \/>\n\t&#8211; SNS -push&nbsp;<br \/>\n\t&#8211; SQL &#8211; polls(pull)\n<\/p>\n<p>\n\tElastic Transcoder : Media Transcoder in the cloud. Convert media files form their original source format in to different formats that will play on smartphones, tablets, pc&#39;s etc.\n<\/p>\n<p>\n\tAPI Gateway&nbsp;<br \/>\n\t1. Api Gateway has caching capabilities to increase performance.<br \/>\n\t2. Api gateway is low cost and scales automatically<br \/>\n\t3. You can throttle API Gateway to prevent attacks<br \/>\n\t4. You can log results to CloudWatch<br \/>\n\t5. If you are using Javascript\/AJAZ that uses multiple domains with API gateway, ensure that you have enabled CORS on API Gateway.\n<\/p>\n<p>\n\t<br \/>\n\tKinesis&nbsp;<br \/>\n\t&nbsp; Streaming data &#8211; is data that is generated continuously by thousands of data sources, which typically send in the data records simultaneously, and in small sizes. etc,&nbsp;<br \/>\n\t&nbsp; Amazon Kinesis is a platform on AWS to send your streming data too.Kinesis makes it easy to load and analyze streaming data, and also providing the ability for you to build your own custom applications for your business needs.<br \/>\n\t&nbsp; Core Kinesis Services:<br \/>\n\t&nbsp; &nbsp;1) Kinesis Streams<br \/>\n\t&nbsp; &nbsp; &nbsp;&#8211; default stores 24hrs.Increased to 7 days retension. Data stored in shards. Total capacity of the stream is number of shards configured in the stream.<br \/>\n\t&nbsp; &nbsp;2) Kinesis Firehose<br \/>\n\t&nbsp; &nbsp;3) Kinesis Analytics\n<\/p>\n<p>\n\t#!\/bin\/bash\n<\/p>\n<p>\n\tYum update -y<br \/>\n\tyum install httpd php php-mysql stress -y<br \/>\n\tcd \/etc\/httpd\/conf<br \/>\n\tcp httpd.conf httpd-bk.conf<br \/>\n\tnano httpd.conf<br \/>\n\t&nbsp;update in http.conf AllowOVerride all(allow url rewrite)<br \/>\n\tcd \/var\/www\/html<br \/>\n\tnano healthy.html&nbsp;<br \/>\n\t&nbsp; healthy<br \/>\n\twget https:\/\/wordpress.org\/latest.tar.gz<br \/>\n\ttar -xzf latest.tar.gz<br \/>\n\tcp -r wordpress\/* \/var\/www\/html\/<br \/>\n\trm -rf wordpress<br \/>\n\trm -rf latest.tar.gz<br \/>\n\tchmod -R 755 wp-content<br \/>\n\tchown -R apache.apache wp-content<br \/>\n\tservice httpd start<br \/>\n\tchkconfig httpd on\n<\/p>\n<p>\n\taws s3 ls<br \/>\n\taws s3 cp &#8211;recursive \/var\/www\/html s3:\/\/wordpresscode16acloudguru<br \/>\n\taws s3 ls wordpresscode16acloudguru<br \/>\n\taws s3 cp &#8211;recursive s3:\/\/wordpresscode16acloudguru \/var\/www\/html<br \/>\n\taws s3 sync \/var\/www\/html\/wp-content\/uploads\/ s3:\/\/wordpressmedia16acloudguru &#8211;delete &#8211;dryrun<br \/>\n\taws s3 sync \/var\/www\/html\/wp-content\/uploads\/ s3:\/\/wordpressmedia16acloudguru &#8211;delete\n<\/p>\n<p>\n\twget https:\/\/s3-eu-west-1.amazonaws.com\/acloudguru\/config\/htaccess<br \/>\n\tcp htaccess .htaccess\n<\/p>\n<p>\n\tcd \/etc<br \/>\n\tnano crontab<br \/>\n\t*\/2**** root aws s3 sync &nbsp;&#8211;delete \/var\/www\/html\/wp-content\/uploads\/ s3:\/\/wordpressmedia16acloudguru\/<br \/>\n\t*\/2**** root aws s3 sync &#8211;delete \/var\/www\/html\/ s3:\/\/wordpresscode16acloudguru\/<br \/>\n\t*\/3**** root was sync -delete s3:\/\/wordpresscode16acloudguru\/ \/var\/www\/html\/\n<\/p>\n<p>\n\tstress &#8211;cpu 100\n<\/p>\n<p>\n\tCloudFormation : Its kind of bootstrap of most of aws services.\n<\/p>\n<p>\n\t<br \/>\n\tAWS 12 regions&nbsp;<br \/>\n\t&#8211; 1 region -&gt; multiple AZ<br \/>\n\t&#8211; Access is authorized on a &quot;Least previleged access&quot;<br \/>\n\t&#8211; IAAS&nbsp;<br \/>\n\tAmazon Protects against DDos, Man in the middle attacks(MITM), Ip Spoofing, Port Scanning, Packet Sniffing by other tenants<br \/>\n\tTrusted Advisor inspects your AWS environment and makes recommendations when opportunities may exist to save money, improve system performance, or close security gaps\n<\/p>\n<p>\n\tDifferent instances running on the same physical machine are isolated from each other via the Xen hypervisor. In addition, the AWS firewall resides with in the hypervisor layer, between the physical network inteface and the instance&#39;s virtual interface.<br \/>\n\tGuest Operating System<br \/>\n\tElastic Load Balancing &#8211; SSL Termination on the load balancer is supported.<br \/>\n\tDirect Connect &#8211; ByPass Internet Service providers in your network path.<br \/>\n\tStorage Gateway &#8211; is a service that connects an on-premises software appliance with cloud-based storage to provide seamless and secure integration between an orgnization on-premises and AWS storage infrastructure.&nbsp;<br \/>\n\t1.gateway-cached&nbsp;<br \/>\n\t2.gateway-stored volumes (asynchronously backup data from data center to AWS)\n<\/p>\n<p>\n\tImplement Elasticity<br \/>\n\t1. Proactive Cyclic Scaling : periodic scaling that occurs at fixed interval(daily, weekly, monthly, quaterly)<br \/>\n\t2. Proactive Event-based Scaling : scale on events like balck friday<br \/>\n\t3. Auto-Scaling based on demand\n<\/p>\n<p>\n\t<br \/>\n\tElastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, auto scaling to application health monitoring based on the code you upload to it, where as CloudFormation is an automated provisionig engine designed to deploy entire cloud environments vis a JSON script.\n<\/p>\n<p>\n\t<br \/>\n\tGeneral Design Priciples<br \/>\n\t&#8211; Stop guessing about your capacity needs<br \/>\n\t&#8211; Test systems at production scale<br \/>\n\t&#8211; Lower the risk of architecture change<br \/>\n\t&#8211; Automate to make architectural experimentation easier<br \/>\n\t&#8211; Allow for evolutionary architectures\n<\/p>\n<p>\n\tWell-Architected Framework &#8211; 4 pillars<br \/>\n\t&#8211; Security<br \/>\n\t&#8211; Reliabilty<br \/>\n\t&#8211; Perforamce Efficiency<br \/>\n\t&#8211; Cost Optimisation\n<\/p>\n<p>\n\tSecurity:\n<\/p>\n<p>\n\t&nbsp; Design Priciples:<br \/>\n\t&nbsp; &nbsp; &#8211; Apply securities at all layers<br \/>\n\t&nbsp; &nbsp; &#8211; Enable tracebility<br \/>\n\t&nbsp; &nbsp; &#8211; Automate responses to security events<br \/>\n\t&nbsp; &nbsp; &#8211; Focus on securing your system<br \/>\n\t&nbsp; &nbsp; &#8211; Automate security best practies (centerforinternetsecurity.com)<br \/>\n\t&nbsp; &nbsp; AWS Shared Responsibility Model:<br \/>\n\t&nbsp; &nbsp; &#8211; Customer responsible for OS, network, firewall, encryption, network traffic<br \/>\n\t&nbsp; &nbsp; &#8211; AWS responsible for Compute, Storage, Database, Networking, Regions, AZ, Edge Locations\n<\/p>\n<p>\n\t&nbsp; Definition: Secutiry in the cloud consist of 4 areas<br \/>\n\t&nbsp; &nbsp; &#8211; Data protection<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.encryption\/decryption at rest and transit(using ssl)&nbsp;<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.logging<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.versioning<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.AWS doesn&#39;t move data between regions<br \/>\n\t&nbsp; &nbsp; &#8211; Privilege management<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.IAM<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.ACl (Access Control List)<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Role based access control<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Password management(such as password rotation policies)<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.MFA<br \/>\n\t&nbsp; &nbsp; &#8211; Infrastructure protection<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.RFID, Secutiy guards, CCTV<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.VPC (secutiry groups, subnets, etc)<br \/>\n\t&nbsp; &nbsp; &#8211; Detective controls<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.AWS cloudTrail<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.AWS CloudWatch<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.AWS Config<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Amazon Simple Storage Service<br \/>\n\t&nbsp; &nbsp; &nbsp; &nbsp;.Glacires\n<\/p>\n<p>\n\tReliability:<br \/>\n\t&nbsp; &nbsp;Design Principles:<br \/>\n\t&nbsp; &nbsp; &#8211; Test Recovery Procedures<br \/>\n\t&nbsp; &nbsp; &#8211; Automatically Recover from failures.<br \/>\n\t&nbsp; &nbsp; &#8211; Scale Horizontally to increase aggregate system avaliabilty<br \/>\n\t&nbsp; &nbsp; &#8211; Stop guessing capacity<br \/>\n\t&nbsp; &nbsp;Definations: 3 Ares<br \/>\n\t&nbsp; &nbsp; &#8211; Foundation -&gt; IAM VPC &nbsp; &nbsp;<br \/>\n\t&nbsp; &nbsp; &#8211; Change Management -&gt; CloudTrail<br \/>\n\t&nbsp; &nbsp; &#8211; Failure Management -&gt;AWS Cloud Formation &nbsp;\n<\/p>\n<p>\n\tPerformance Efficiency Pillar:<br \/>\n\t&nbsp; &nbsp;Design Priciples:<br \/>\n\t&nbsp; &nbsp; &#8211; Democratize advanced technologies (use new technologies as a service.)<br \/>\n\t&nbsp; &nbsp; &#8211; Go global in minutes<br \/>\n\t&nbsp; &nbsp; &#8211; Use server-less architectures<br \/>\n\t&nbsp; &nbsp; &#8211; Experiment more often<br \/>\n\t&nbsp; &nbsp;Defination<br \/>\n\t&nbsp; &nbsp; &#8211; Compute &#8211; AutoScaling<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Access Method &#8211; block , fileor Object<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Patterns of Access &#8211; Random or Sequential<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Throughput Required<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Frequency of Access &#8211; Online, Offline or Archival<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Frequency of Update &#8211; Dynamic, Worm<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Avaliability Constraints<br \/>\n\t&nbsp; &nbsp; &nbsp; -&gt; Durabiltiy Constraints<br \/>\n\t&nbsp; &nbsp; &#8211; Storage &nbsp;&#8211; EBS, S3, Glacier<br \/>\n\t&nbsp; &nbsp; &#8211; Database &#8211; RDS, DynamoDB, RedShift<br \/>\n\t&nbsp; &nbsp; &#8211; Space-Time Trade-off &#8211; CloudFront, ElasticCache, Direct Connect, RDS Read Replicas etc\n<\/p>\n<p>\n\tCost Optimization:<br \/>\n\t&nbsp; &nbsp;<br \/>\n\t&nbsp; Design Principles:<br \/>\n\t&nbsp; &nbsp; -Transparently attribute expenditure<br \/>\n\t&nbsp; &nbsp; -Use managed services to reduce cost of ownership<br \/>\n\t&nbsp; &nbsp; -Trade capital expense for operating expense<br \/>\n\t&nbsp; &nbsp; -Benefit from economies of scale.<br \/>\n\t&nbsp; &nbsp; -Stop spending money on data center operations<br \/>\n\t&nbsp; &nbsp;&nbsp;<br \/>\n\t&nbsp; Defination:<br \/>\n\t&nbsp; &nbsp; -Matched supply and demand &nbsp;&#8211; Autoscaling<br \/>\n\t&nbsp; &nbsp; -Cost Effective Resources &#8211; Ec2(reserved instances), AWS trusted Advisor<br \/>\n\t&nbsp; &nbsp; -Expenditure Awareness &#8211; CloudWatch Alarms, SNS<br \/>\n\t&nbsp; &nbsp; -Optimizing Over Time &#8211; AWS Blog, AWS Trusted Advisor\n<\/p>\n<p>\n\t<br \/>\n\t&nbsp; &nbsp; &nbsp;\n<\/p>\n<p>\n\t<br \/>\n\t&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>InProgress&#8230;. &nbsp; Region &#8211; 12 Availability&nbsp;Zone &#8211; 33 Edge Locations &#8211; 56 Placement Group: keeping multiple instances together in a single AZ, where you want to get low latency, high [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"quote","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":true,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[18,2],"tags":[],"class_list":["post-410","post","type-post","status-publish","format-quote","hentry","category-aws","category-technology","post_format-post-format-quote"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p70lnf-6C","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/posts\/410","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=410"}],"version-history":[{"count":9,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/posts\/410\/revisions"}],"predecessor-version":[{"id":423,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=\/wp\/v2\/posts\/410\/revisions\/423"}],"wp:attachment":[{"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=410"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=410"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kaizen-koka.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=410"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}