AWS Certified Solutions Architect Associate 2023 | Learn AWS Free | AWS Full Crash Course
Aug 16, 2023
AWS Certified Solutions Architect Associate 2023 | Learn AWS Free | AWS Full Crash Course
In this video AWS Certified Solutions Architect Associate 2023 | Learn AWS Free | AWS Full Crash Course we provide a free AWS certification course online. Certification is part of the process to building a great cloud architect career and this video will help you obtain AWS solution architect certification and prepare for the AWS saa-c03. Get our updated FREE AWS Exam Guide https://gocloudcareers.com/updated-cs … this guide should be used with this free AWS certification training and AWS certified solutions architect course. Get the Free AWS Lab Demos https://www.gocloudarchitects.com/for … Register for this our next free webinar, to learn more about how we prepare you to become the ultimate cloud architect. https://my.demio.com/ref/01ppStEkIUVx … If you are looking for a free AWS certification course online to learn AWS free then this AWS certified solutions architect course is for you. At Go Cloud Careers and Go Cloud Architects we do everything we can to help people build a cloud architect career. We provide AWS career tips, cloud architect training, free AWS certification training, a free AWS certification course online, AWS certification course free, cloud computing architect, AWS cloud computing full course, and a full and FREE cloud computing complete course. This AWS certification course online (SAA-C03) is a FREE AWS full course tutorial. This is a complete AWS Certified Solutions Architect Associate training program. Topics covered in this video include: 00:00 - Introduction 8:25 - Regions, AZ, local zones, Edge location 22:11 – VPC 24:05 - Hybrid cloud, pure cloud, multi-cloud environment 30:20 - Connecting to the cloud (Direct Connect, VPN) 1:02:15 – Ling Aggregation Groups 1:04:18 – Storage (Object, Block, File) 1:18:30 – S3 (Simple Storage Service) 1:39:35 – Instance Storage 2:04:33 – Transfer Your Data to AWS 2:21:50 – Computing on AWS 2:52:01 – Databases 3:21:38 – Database Optimization 3:53:37 – Basics of Networking 4:12:00 - Routing Tables/ Routers / IGW, Elastic Ips and More 4:39:20 - VPC Endpoints (Gateway Endpoints), VPC Peering, CloudHub, and More 5:02:06 – Access Control Lists, Security Groups, and More 5:23:26 – DNS and Route 53 5:50:18 – Load Balancers 6:02:00 – Security Responsibilities, IAM, and More 6:29:10 – Cross Account Roles, Managed Policies, MFA, Identity Federations, and More 6:50:33 – Firewalls, CDN, Security Hub, Guard Duty, and more 7:13:33 – AWS Services 7:41:35 – More AWS Services 8:06:07 – Even More AWS Services 8:34:53 – Even More and More AWS Services 8:57:17 – Still More AWS Services 9:25:15 – IoT Services 9:52:07 – Building High Availability Systems, Passing the Exam and More Topics covered in this video include: The AWS Cloud and How It’s Organized Direct Connect Public and Private Virtual Interfaces (VIF) Direct Connect Gateway Link Aggregation Groups (LAG) Virtual Private Networks (VPN) AWS Primary Storage Options Elastic Block Storage (EBS) RAID Elastic File System (EFS) AWS Storage Gateway Amazon FSx for Windows Amazon FSx for Lustre EC2 Amazon Machine Images (AMI) Autoscaling Instance Purchasing Tenancy Options Securing EC2 Relational Databases NoSQL Databases Data Warehousing on AWS Data Lakes AWS Glue Database Migration Tools Internet Gateways NAT Instances NAT Gateway Endpoints VPC Peering AWS CloudHub AWS Transit Gateway AWS Transit VPC Network Access Control Lists (NACL) Security Groups Amazon Web Application Firewall (WAF) AWS Firewall Manager AWS Shield AWS Service Catalog AWS Systems Manager Parameter Store AWS Macie AWS GuardDuty AWS Inspector AWS Security Hub AWS Simple Queuing Service (SQS) Amazon MQ AWS Simple Notification Service (SNS) AWS Simple Workflow Service (SWF) AWS Elastic Map Reduce (EMR) AWS Kinesis AWS Managed Streaming for Apache Kafka Amazon OpenSearch AWS Elastic Container Service (ECS) AWS Elastic Kubernetes Service (EKS) Amazon EKS Distro AWS EKS Anywhere AWS Elastic Beanstalk Amazon Elastic Container Registry (Amazon ECR) AWS CloudWatch AWS Config AWS CloudTrail AWS CloudFront AWS Lambda AWS Lambda@Edge AWS Step Functions AWS Forecast AWS Rekognition Amazon Elastic Transcoder Amazon Textract AWS Comprehend AWS Translate Amazon Polly AWS Kendra AWS Amplify AWS CloudFormation AWS Proton VMWare Cloud on AWS AWS Certificate Manager (ACM) AWS App Discovery AWS AppSync Amazon AppFlow AWS Cloud9 AWS Code Artifacts AWS CodeStar AWS Data Exchange AWS Device Farm AWS Global Accelerator AWS License Manager AWS Managed Grafana AWS Wavelength AWS Well-Architected Tool AWS Compute Optimizer AWS Outpost AWS X-Ray AWS Service Quotas Alexa for Business AWS IoT Device Management AWS IoT Core AWS IoT Analytics AWS IoT Events AWS IoT Graph And More Learn About Our Cloud Architect Career Development Program, https://gocloudcareers.com/cloud-arch … Mike Gibbs LinkedIn Page: https://www.linkedin.com/in/michael-g … #cloudarchitect #cloudcareer #cloudjob
Content
19.02 -> Hello my name is Richard for and I can say
I am cloud hired that yes, go my choice and
27.61 -> get cloud hired. I'm cloud hired. I'm cloud
hired. I'm cloud hired. Hey, go Cloud Architect
36.04 -> family. I'm cloud hired. Oh, phone. Hi, guys,
say I’m cloud hired. I'm cloud hired. I'm
47.2 -> cloud hired, thanks to Google Cloud architects.
It worked for me and now I’m cloud hired,
52.05 -> because because of Go Cloud Architects program,
I am cloud hired. I am cloud hired. Thank
60.329 -> you, Mike, and the go cloud team.
68.8 -> Welcome, everyone, to our AWS Certified Solution
Architect 2022 course. My name is Michael
79.03 -> Gibbs, and I'll be your instructor throughout
this session. I've been working now in tech
83.36 -> for well over 25 years, I've been an architect
for over 25 years now. And I want to help
88.58 -> you get cloud higher. That's everything we
do we get caught hard. We have a lot of free
93.21 -> things that we're going to talk about at the
beginning of this course, to not only make
96.38 -> sure, you can easily pass the AWS Solution
Architect certification. But you'll be prepared
103.02 -> and better prepared for knowing how the technology
works, how to apply the technology, and to
107.549 -> some degree, what's going on under the hood.
And this is an AWS full course Tech Talk tutorial.
115.17 -> And the reason we do free AWS certification
training is as follows. We saw the courses
120.72 -> that were out there, they were purely the
name of the service and how to configure that
125.299 -> service. But the problem is, solution architects
and cloud architects don't configure anything,
129.71 -> it's all about designing and you can't design
what you don't understand. So we're going
134.14 -> to make sure you understand things very, very
well. And that's what we do this free AWS
141.26 -> course to build your cloud architect career,
we'll talk about I'm sure it'll come up some
145.69 -> AWS career chips. This will prepare you for
the AWS SAA-C03 exam, the brand new exam,
154.12 -> we've fully updated care of all the things
in the new course. And this is an AWS cloud
159.739 -> computing full course. And a cloud computing
complete course, as it relates to the AWS
164.9 -> Certified Solution Architect Associate. We
want to make sure that all of you get caught
169.04 -> hired. I've got a student in my clinic, a
tech career development program that gets
172.519 -> hired basically, every single day. And my
favorite thing in the world is when someone
177.12 -> gets caught hired, I want to help anyone in
the entire world that wants to get a cloud
182.989 -> architect job as a solution architect job,
get called hired anybody that wants to earn
187.099 -> more in tech, I want to help them do it. And
I'm here to you to help you all get cloud
191.239 -> hired. Give me a hashtag, AWS cloud. And then
let me tell you about all the really great
198.04 -> free things we're going to be doing along
with this bootcamp to make sure you can easily
202.26 -> get cloud certified, because the AWS Certified
Solution Architect Associate should be very
206.379 -> basic and easy after this course. But I also
want you to learn. My team has completely
213.22 -> updated and will tell you more about it next
week. But you can be the early adopter for
217.519 -> right now, our AWS Certified Solution Architect,
associate and professional Exam Guide. We've
223.97 -> had about 100 authors to put this book together
with hundreds of years of total technology
229.67 -> experience, and I want you all getting cloud
hired. And that's why we're doing this. So
234.099 -> please give me that AWS card hashtag? No.
So we can focus on making sure you understand
242.14 -> the technology. What is the technology? How
does it work? How does it benefit the customer,
247.78 -> because you're going to need that when a cloud
architect interview or a cloud engineer interview,
251.98 -> they're not going to ask you to go configure
something or the steps but what they will
255.37 -> ask you is, how the tech works, and how to
apply it and I want to make sure that you're
260.561 -> prepared for Solution Architect interviews
and Cloud Architect interviews. So here's
265.33 -> what I want you to do. Download the completely
free lounge or sign up for the completely
271.38 -> free AWS lab demos. The link is in the description
below. And in the description below, you can
277.97 -> download those free lab demos. And that way
you can do hands on practice. I'm going to
283.35 -> be focusing my time with you and making sure
you understand the Tech because I taught an
288.44 -> eight year old how to configure an EC two
instance in less than three minutes. So are
293.45 -> eight that same eight year old how to do an
s three bucket in less than five minutes and
298.34 -> nobody's gonna hire you just for those Hewlett,
they're gonna want to know that you have it
301.47 -> in your head, you understand what the solutions
are, and how they can impact business. So
305.79 -> we're gonna have a lot of fun. So please download
the free lab demo videos, sign up for them,
310 -> and do that on your own time. Now, this Thursday,
we're going to have a completely free webinar
316.55 -> on how to get your first cloud architect job.
And in that, I will tell you everything you
322.32 -> need to know to get hired. And while we're
at it, we've got a lot of free things coming
328.289 -> up very, very, very soon. So many things,
we've got executives coming from Nvidia to
334.93 -> talk to you about what they want, from hiring
people will always have more solution architects
340.99 -> come and talk to you. I interview CEOs constantly
on what they want as part of digital transformation.
348.34 -> So you know, sign up to our email list, so
you can find it. Really, if you can all give
354.57 -> me a hashtag AWS Certified Solution Architect
Associate, we're going to begin the class,
360.13 -> we're going to have lots of fun. Now, I would
never ever, ever give you a class, which is
364.78 -> PowerPoint, bla bla bla in the background,
we would never do it. We're going to live
369.63 -> training for 20 minutes. Then after that,
you know, we're gonna do answer your questions.
374.75 -> Why? Because I want to make sure that you're
skilled, you've got knowledge and capabilities,
379.539 -> so you can have the absolute best cloud computing
career on the world. We will cover all the
385.58 -> recent updates, and the Certified Solution
Architect Associate, we will also include
391.039 -> much of the AWS Certified Solution Architect
Professional in the same boot camp, because
396.62 -> the associates just not enough. And I want
you to have much more competency and much
401.35 -> more knowledge. And that's why I'm focused
on having you download or at least sign up
406.79 -> for the free Labs, which you can do on your
own. And making this a time a real classroom
411.13 -> that you can actually learn. I used to take
these courses constantly, they were for three
416.28 -> to $5,000 for the week for the ability to
ask questions. And that's why I'm doing a
419.88 -> completely free because I know most people
can't afford the kind of training they need.
423.509 -> And I don't want them getting something off
of Udemy, which is taught by somebody that's
426.849 -> never done the job before I've done it for
25 years, and I will help all of you to get
430.85 -> caught hired. So that's why we're going to
cover this this week, we're going to start
434.32 -> by having a lot of fun. So this week, we're
going to be covering the AWS Certified Solution
440.961 -> Architect Associate. This is a free AWS course
to help with your cloud architect career,
446.21 -> we'll cover AWS career tips and Clinica tech
training, which is different than Certified
450.09 -> Solution Architect Associate training. But
you know, we're here at Koch cloud architects
453.879 -> and go cloud careers to help you get cloud
hired. So we'll begin just to let you guys
460.74 -> know, it cost about as much as a new car to
produce one of these things. By the time we
466.07 -> take all into account all the team members
that we have. And while the work they're doing,
471.06 -> and we're going to do it for you to make sure
you get hired. So if you think anybody needs
475.34 -> help, guess what, send them a tweet, make
a LinkedIn post, and invite them to this free
481.97 -> training. While we're at it, please subscribe
and hit the bell to our channel, because you're
487.6 -> going to hear about a lot about new things
like tonight, we're going to talk about how
490.81 -> to optimize and get hired for cloud architects,
versus how to get hired and optimize your
495.35 -> career for cloud engineers. Because the careers
are so different. Most people confuse them.
500.02 -> And that's why they can't get hired. So we're
gonna be talking about that tonight to help
503.74 -> you build the best cloud computing career.
But let's begin. We're going to begin with
509.93 -> the AWS cloud, and how it is organized. So
to begin, let's talk about the AWS cloud organization.
519.56 -> The first thing we're going to talk about
is the AWS region. Now, what is the AWS region,
528.019 -> think of a massive geographic area, like a
continent, or part of a continent. So this
535.32 -> big global area, that's what a region is.
And then we're going to be talking about availability
543.11 -> zones. And guess what they are nothing more
than a simple data center. So you're gonna
546.87 -> have a big giant geographic area. And inside
of these big giant geographic areas, what
552.089 -> are you going to have data centers, in the
data centers, you're gonna have servers and
558.3 -> storage, physical load balancers, you're gonna
have firewalls, routers and switches, guess
563.88 -> what? The same thing that you have in every
other data center. Now what the cloud is really,
571.19 -> it's just renting space in somebody else's
network in a data center. It's all been virtualized
574.579 -> for you. It's nothing more than that. That's
why all clouds are the same. Now, when we
580.029 -> teach this course, we're going to try in many
cases to teach the generic technology so you
585.26 -> know how to work with AWS, Azure, Google Alibaba,
it doesn't matter if you understand the cloud,
591.33 -> you understand, oh. We'll also talk about
local zones. And we'll show how that can reduce
598.36 -> latency and improve performance. And I'll
show you exactly what that looks like. And
602.42 -> we'll talk about Edge locations as it pertains
to the AWS content delivery network called
607.529 -> Cloud. So let's visually look at this for
a minute. Here, what you can see is the AWS
614.05 -> cloud and how it's organized. You can see
this big, beautiful green box, which was drawn
618.649 -> by my team, how that represents, you know,
a geography, like a whole continent or part
625.1 -> of the continent.
626.63 -> Now, the next thing we'll actually talk about,
is those availability zones. And you can see
633.64 -> in this diagram, what do we have? We have
these availability zones that are connected
638.25 -> to each other with links, what do you think
those links are network clicks, most likely
643.16 -> fiber optic links, multiple fiber optic links,
10 Gig links, 100 Gig links, and Link Aggregation
648.63 -> groups, or port channel, ether channel, whatever
terms you want to call it. Same kind of concept,
654.07 -> we're bundling multiple links together, these
links are going to be in a highly redundant
657.71 -> matter. And there's going to be some routing
in between the availability zones. And of
662.631 -> course, routing between regions as well. So
now you can see region, large geographic area,
668.35 -> data center availability zone, what's a data
center again, it's just a, it's a room full
673.24 -> of routers, and switches, and servers and
storage and load balancers and firewalls,
679.2 -> etc. So now, while we're at it, let's talk
about the concept of local zones. And what
689.67 -> it is. Now, when you want the most high performance
in the world, you can't use the cloud. I'm
696.9 -> gonna say this, again, if you're looking for
ultimate peak performance, you can't use the
702.45 -> cloud. See in the data center, we can do many
more things on the network, we can actually
707.92 -> lock down our networks and make them more
secure if we need to. But, you know, keep
713.5 -> this in the back of your mind, that data center
will always perform better. Why? Because the
717.91 -> storage we have in our data center is going
to be far faster than block storage, because
721.79 -> there's the latency on the wire to take you
to the cloud provider. So imagine that you
728.2 -> have a direct connection or a private line
to the cloud. Basically, it's some kind of
732.24 -> like a wire just sort of like my iPhone cables
here. Now what happens, it takes time to transmit
737.779 -> your information over the wire, and we're
talking about milliseconds. Now, that's okay.
744.009 -> Right for normal things, yes, it is. But there
are applications where a nanosecond can be
751.07 -> a competitive business advantage. And when
you deal with that, for example, and nanosecond
756.69 -> being a competitive advantage, it makes things
on the cloud being impractical. So that's
761.07 -> why they're coming up with local zones, which
are still never going to be as fast as your
766.389 -> own data center. But it's a midpoint. And
I'll show you why. A local zone is an extension
772.35 -> of the region. So you can run latency sensitive
applications closer to you, the user, it enables
779.24 -> you to put your computing power closer to
the users will happen if you first have to
785.04 -> up and down local zones, then you're going
to create a subnet in the local zone. Of course,
789.34 -> in your subnet, that's where you're going
to place your systems, your virtual machines
793.029 -> otherwise known as you see two instances,
your load balancers, you could be putting
797.09 -> your containers like elastic Kubernetes service,
or any kind of container orchestration you
802.19 -> put there, the elastic container service Kubernetes
service, we'll talk about why you probably
806.04 -> don't want to use the elastic container service
as we go through this, and why the Kubernetes
809.959 -> environment is much better, but you can still
use both. Now there are some local zones that
816.28 -> are gonna offer even more resources to like,
fought the, like Elastic MapReduce, if you're
824.38 -> trying to do some mapping and reduction in
to create a data lake for example, or change
829.06 -> information between databases, elastic cache,
which has some basic caching, which we could
833.55 -> talk about, of course, you could build your
own Redis Cache and not avoid and not use
836.73 -> a period, rds systems and even dedicated hosts.
So that's what we're really, really talking.
843.55 -> So what's it look like architecture, I'm going
to show you this, and I'm going to draw it
846.209 -> out for you to make sure it makes more sense.
Local zones are realistically this way, again,
852.6 -> we've got this giant green box, this large
geographic region, in this region, that's
858.32 -> where the majority of our systems are gonna
be. We're gonna have little data centers.
862.26 -> Now, these local zones are effectively data
centers in between your data centers, I'm
867.279 -> going to do this, I'm going to map it out
with you real time. So you truly understand
871.25 -> this. Sometimes I just love using the whiteboard.
So let's look at it this way. So you can understand
876.37 -> that in a traditional environment. You're
you're in your data center, and everything
880.721 -> works great in the data center. But if you
want to use a cloud, and the cloud is nothing
886.081 -> more than somebody else's data center, well,
this the AWS code, it could be any code for
891.05 -> that matter. What happens as I mentioned before,
is you've got this latency over your networking.
898.11 -> And that latency could be too much For the
business application, so what a local zone
903.149 -> really is, is a mini AWS data center between
you and the cloud, we'll call it AWS local
910.649 -> zone. Mini data center. And actually, it's
not that many. And what happens is we call
921.05 -> a local zone. Because we can put our latency
sensitive things in between our data center,
931.38 -> and the ad in our in the local zone. And then
of course, you know, the local zone and all
936.3 -> these other things, we'll basically have communications,
which will be back hauled back into the cloud.
940.402 -> And in this manner, you can actually put your
low latency things closer to you. Of course,
947.649 -> if you're looking for the ultimate and availability,
and the ultimate in performance, we can get
952.38 -> rid of all this edge location stuff and just
keep are critical applications in the data
956.68 -> center, and latency sensitive and critical
applications in the data center and then use
960.64 -> the cloud. Or we could take advantage of a
local zone, there's benefits and detractors
964.779 -> to do each. That's the kind of thing we could
cover in our cloud architect career development
968.75 -> program. But, you know, there's lots of reasons
to know how and when, and were to design systems.
975.269 -> But this week, we're focusing on certifications.
So that's what a local zone knows. Now let's
981.579 -> talk about an edge location. In edge, the
edge locations are further CloudFront content
987.639 -> delivery network. And realistically speaking,
Edge locations are basically going to provide
995.49 -> user access into the content delivery network.
Now we will go into depth in the cloud front.
1001.839 -> And we will talk more about content delivery
networks when the time progresses. But because
1006.27 -> right now we're talking about the AWS cloud
and how it's organized. We talked about regions
1011.29 -> being a large geography, data centers being
called availability zones, the data center
1016.91 -> between you and the cloud provider being called
the local zone, and it's just another data
1020.64 -> center, nothing else. I think that's it. Now
let's talk about these Edge locations. So
1028.16 -> many of you, when you go to the internet,
let's say you wanted to go to www.careerfh.com,
1035.699 -> what would happen is your computer will then
do a DNS lookup to see who has the IP address
1040.77 -> of www dako clunkers.com, then what would
happen is the DNS server would give you the
1047.089 -> IP address, then your system would look at
its routing table, it would find this default
1051.28 -> router, and it would do an ARP who has the
MAC address for www dako Khaled careers.com.
1056.96 -> And then the packet would be sent to the upstream
router. Now let's add a content delivery network.
1061.289 -> If you're an if you're in Athens, Greece,
where I'm from, for example, where you are
1066.67 -> in Alexandria, Virginia, or if you're in Cambodia,
Cameroon, or Chicago, basically, you would
1073.46 -> have to be accessing the network over the
internet, coming back to my website. The problem
1080.429 -> is as follows. There's latency going from
point A to point B, and the latency may kill
1087.94 -> your users experience. So a content delivery
network and I'm going to show you how this
1092.49 -> works in a minute is going to make your content
closer to the users, so the users have a better
1097.96 -> experience. Now, Edge locations are where
AWS puts its content caching and its private
1104.83 -> network. And I'll show you exactly what that
looks like. It's really all for those of you
1108.919 -> that are new to cloud, but have worked in
networking, it's essentially called the Point
1112 -> of Presence, where lots of people do their
BGP peering and they connect to each other.
1116.46 -> For example. Edge locations will increase
performance and reduce latency. And key, it's
1123.83 -> not just not just not just related to traffic
going across the internet. In using caching.
1132.46 -> It's by using a private network and also how,
and let's look at what this actually is going
1137.409 -> to look like. First, I'll show you architecturally
and then I'm going to show you the user experience.
1142.74 -> Architecturally, here's what the AWS cloud.
Edge locations actually look like. Now, when
1155.11 -> we're here, you can see that we've got this
large region, you can see the data centers
1160.059 -> or availability zones in this region. And
then you can see these Edge locations. This
1165.39 -> is where your content is cached. Now let's
take it for an example of reality in real
1170.309 -> life, what's it going to look like? And how
does this work? Let's say we have the nice
1175.45 -> happy blue user, the one in the upper right
hand corner of the screen. Now this user is
1183.169 -> my life. And she's there and she wants to
go to www dot gokada careers.com.
1192.22 -> So what does she do? She goes and types that
into her browser. Now what ultimately happened
1198.32 -> here is as follows If no one that day has
requested information from www dot Gokhan
1206.71 -> careers.com, the blue user will hit that edge
location, the edge location won't have any
1211.309 -> information, the edge location would then
send that information to the regional coach,
1215.909 -> which has not no information, and then the
traffic will be sent to the AWS source. And
1221.98 -> whether it's a static website static files,
which are an object storage like AWS s3, or
1227.44 -> a dynamic website, which has got things that
are going on on our virtual machines, otherwise
1231.33 -> known as our EC two instances, that will happen
as the user will go to the edge location,
1236.841 -> the edge location will took them right off
the public Internet, and onto the very fast
1241.159 -> AWS private network, the source will answer,
it'll hit the regional cache, the information
1246.409 -> will be stored, it'll hit the edge location,
the information is going to be stored. And
1251.65 -> there you go, you've got your user. Now the
next, let's say, I go to the same place, right
1259.351 -> after my wife went to go click careers. And
now I represent the second blue user in the
1264.78 -> upper right hand corner. Now I type www.go,
Cloud careers.com into my browser, my request
1271.02 -> gets sent to the edge location, the edge location
since immediately back to me, it's cached.
1276.309 -> And by doing this, we've got a lot of things
benefits. And here's the reason why. First,
1281.08 -> the web servers don't have to keep answering
the request. I got a gotcha, gotcha. So we've
1285.68 -> reduced load on the web servers. Now next,
let's think about this. The web servers load
1290.85 -> is reduced, but the latency is reduced because
the content is already there. Now we'll talk
1296.77 -> about later how content delivery network can
really reduce costs. And content delivery
1301.58 -> networks can work very, very, very well to
protect against DDoS attacks or distributed
1308.57 -> denial of service attacks. And when we talk
about CloudFront, and preventing DDoS, we'll
1314.159 -> talk about exactly why content delivery networks
are good, Allah, generally speaking, you should
1318.529 -> use more than one content delivery network,
just like you should use more than one cloud.
1321.84 -> We'll talk much more about that later.
1328.71 -> Some, so now, actually, let's talk about the
VPC and what it is. So when you deal with
1339.559 -> AWS, you're going to be dealing with something
called a virtual private cloud. Now, I've
1344.69 -> built lots of private clouds, every student
in our in our cloud architect career development
1350 -> program builds a cloud from scratch, you can't
be a cloud architect, if you don't know how
1354.13 -> the clouds design. So all my students build
a cloud. Now, what is a virtual cloud? So
1360.25 -> basically, here's what you need to understand.
You need to understand that the cloud is just
1365.48 -> a data center and a network and it's nothing,
nothing, nothing more, they're nothing more
1370 -> than a network and data center, the Virtual
Private Cloud is they sell you virtual access
1374.85 -> to the data center, kind of like if you checked
into a hotel, you can consider the hotel to
1379.549 -> be the data center. In each room, you could
look at it as your VPC or your virtual private
1384.69 -> cloud. It's your space in a public environment.
Now, your space is safe and secure inside
1390.58 -> of this public environment. But you have to
understand, it's just your space. So let's
1395.31 -> talk about what that means. Let's, let's actually
look at it architecturally. So you can see,
1400.049 -> sometimes visual images are helpful. Here
we go. In this environment, we've got the
1404.53 -> AWS cloud, which is nothing more than a bunch
of data centers. Okay. That's it that are
1410.77 -> networked together. And inside of these data
centers, you carve out your private space.
1415.82 -> For example, we've got VPC one, which was
blue, we've got the VPC two, which is green,
1421.46 -> VPC three, which is red, and VPC four, which
is yellow, all isolated from each other, all
1429.22 -> on the same cloud. And there's lots of reasons
why cloud computing can be beneficial. And
1434.71 -> we'll be talking about them throughout the
week when we go into auto scaling and other
1439.09 -> things that makes the cloud more agile, which
makes it potentially able to perform some
1443.74 -> wonderful digital transformation. And we're
gonna talk about some basic cloud architectures.
1449.73 -> We're going to talk about hybrid cloud. Then
we'll talk and we'll talk then we'll talk
1454.46 -> about a pure cloud. And we'll talk about multi
cloud and their strengths and weaknesses for
1458.789 -> every one of these things. Let's first begin
with the hybrid cloud. If you want the best
1466.01 -> performance, and the highest availability,
you're interested in a hybrid cloud, what
1471.669 -> is a hybrid cloud? Hybrid Cloud is when an
organization keeps its data center. And they
1478.08 -> connect that data center to the cloud. No,
most of the time in a hybrid cloud environment.
1483.82 -> We install like an IBM OpenStack or a Nutanix
cloud on these private data centers, and we
1490.659 -> get our own beautiful high performance agile
cloud. And then we can still connect to the
1496 -> public cloud. We can connect to the public
cloud for you scalability as needed. And we
1502.78 -> can use the public cloud for what it's good
for agility, auto scaling, and all these other
1508.169 -> wonderful things. But we still have ours.
This way, when the next time a cloud provider
1515.799 -> has a power failure, not their power failures
can really take out on the cloud, or somebody
1520.169 -> makes a BGP Miss configuration, or the next
time a cloud is hacked. No, we've trust me,
1524.86 -> we've had plenty of cloud hacking. Over the
last few years, some customers have been honest,
1529.34 -> some cloud providers have been honest about
it. Other ones have had outages that are unexplainable,
1533.79 -> knows, but the point is, is cloud provider
can go down, hybrid cloud can stay up, and
1540.27 -> you're still in business. So let's talk about
when that's valuable. Well, imagine you've
1544.66 -> got a hospital, if you only stuck them on
one cloud, and the cloud went down because
1548.34 -> of a security event, and network event, or
control plane failure, then you're still up
1553.95 -> and imagine a hospital where they're all in
one cloud, cloud goes down, patients die.
1559.02 -> So that's what we need to be very good mindful
of architectures, hybrid clouds, I love them.
1562.01 -> Harbor clouds can enable the low latency,
ultra performance in the data center, and
1569.14 -> can allow you to scale to one two or three
more clouds. And by doing so, while you're
1574.741 -> in a beautiful position. So a hybrid cloud
is ideal for an organization that's got a
1579.54 -> current data center that's being well run
with modern equipment. They want somebody
1585.57 -> that needs Ultra performance, or ultra high
availability, like a hospital or a back architecturally,
1593.51 -> what's a hybrid cloud look like? It looks
just like this. I'm a huge fan of hybrid clouds.
1600.32 -> I've been helping many people with hybrid
clouds for as long as I can remember. And
1605.6 -> realistically speaking, the organization's
got their data center, they've got a private
1609.169 -> line or some connection to the cloud. And
then they use multiple availability zones
1613.299 -> in the cloud. And that led to that goes down,
there'll be guilt data center goes down, you
1617.35 -> still have the cloud, lots of survivability,
potentially huge improvements in cost performance,
1623.029 -> especially for applications that are running
24 hours a day, seven days a week under high
1626.79 -> load, they may be cheaper in the data center,
where other applications may be much cheaper
1630.98 -> in the cloud. And that's why the architects
need to look at the business requirements
1635.12 -> as opposed to what's taught in the certification.
So let's talk about the next kind of caught
1641.15 -> architecture. This is a pure cloud environment.
Now, the here's the thing with the cloud,
1646.59 -> you don't have to buy anything except for
your routers. And in some cases, that's a
1651.21 -> great thing. Now, it may be more expensive
to be on the cloud, but it may be cheaper.
1657.5 -> Again, it depends exactly on the use cases.
But let's say you're an you're it's a brand
1665.71 -> new organization. And they don't have the
capital resources to build their own data
1670.44 -> center. They can go straight to a cloud, they
can build their startup things. The cloud
1676.02 -> will give them scalability, rapid deployment,
enabled them to connect a partner organizations
1682.559 -> and create a really distributed environment.
And guess what, I hope that once the availability
1689.37 -> needs come better, once the business gets
bigger, what do you may need multi clouds
1693.79 -> or a hybrid cloud. Because a single cloud
has a single point of failure. No matter didn't
1698.71 -> No matter no matter how many availability
zones and regions to use. And we've seen this
1703.98 -> with every cloud provider, that's not a major
outage. But you know, here's what a pure single
1708.529 -> cloud environment would look like. We never
recommend a single cloud except for small
1712.61 -> businesses, where availability is not critical.
But we didn't ever recommend something like
1716.529 -> this for a bank or health organization. So
let's look at this. We've got in this environment,
1727.049 -> our organization, we've got our connectivity
to the cloud. And with that, we can show that
1735.169 -> our data centers are up and running. And that's
how we do this. Okay, let's talk about connecting
1746.769 -> to the cloud. Connecting to the cloud.
1752.89 -> Oh, sorry, that's the timer. Mike. You got
good timing.
1761.99 -> Okay, sounds good. So,
1763.99 -> let's ask for a hashtag in the chatbox. Give
me if they're having fun that is, if
1769.15 -> you're having fun, give me a hashtag AWS Certified
Solution Architect Associate.
1775.87 -> I'm not the Cookie Monster. I don't know if
I can spell that long word.
1783.23 -> of you guys can give me a hashtag AWS solution
architect or a hashtag AWS essay. I'll be
1790.22 -> fine with either one of them. But I prefer
to spell it out. Keeps the algorithms happy
1800.23 -> Here we go. While you're there, you're good.
If you haven't subscribed and hit the bell,
1805.529 -> please do. So let me see if you guys are doing
so I can tell real quick. And then let's get
1810.13 -> back to the exciting content. Make sure you
subscribe and hit the bell, let's get back
1818.57 -> into talking about content because we want
to make sure you all get the knowledge that
1822.649 -> at some point in the future, you're all getting
cloud higher. So let's talk about connecting
1828.429 -> to the cloud. If you're going to put your
stuff on the cloud, you got to be able to
1834.269 -> reach it. Now most of the stuff that we care
about in business is not a website, which
1839.279 -> access over the internet. It's internal stuff,
internal stuff. What do I mean by internal
1847.94 -> stuff, HR applications, internal financial
application, and all these other critical
1853.79 -> critical things. Keep that in the back of
your mind. So once you put your data in the
1860.36 -> cloud, you got to be able to reach it right.
Because you've got your cloud here, you've
1866.399 -> got your data center here, where your users
are, you don't have a link between them, guess
1870.549 -> what, you've got nothing. Something my grandmother
would call bookcase, you've got nothing. So
1877.34 -> you know, you want to make sure that you can
actually reach it. Now when we're dealing
1882.289 -> with connecting to the cloud, your reality
is you're going to have a lot of options.
1887.27 -> You're going to have SSL based VPN IPsec based
VPNs, private lines Ethernet over MPLS Software
1894.87 -> Defined Networking and says, but for the purposes
the AWS Certified Solution, Architect Associate,
1900.94 -> and the AWS Certified Solution Architect Professional,
and the AWS advanced networking, which is
1906.529 -> an intro to networking, we're going to be
talking about VPNs. And we're going to be
1910.98 -> talking about private lines. So let's start
first start with a virtual private network.
1917.429 -> A virtual private network is really nothing
more than a means to secure private network
1923.46 -> connectivity over a public Internet, or a
public network. Now, I've been working on
1928.26 -> VPNs, and clouds for 20. Some years, most
VPN technologies in today's world are either
1934.85 -> an IPsec, tunnel, and lttp tunnel. It could
be an MPLS, VP, BGP VPN, it could be VPLS,
1945.809 -> or virtual private land services. But today,
we're going to be talking about IPSec tunnels,
1950.87 -> which is the type of VPN you're going to be
using when you're dealing with cloud computing
1954.6 -> and connecting to your cloud provider. Now,
you may ask, why don't we need the silly VPN
1960.659 -> thing? Why can I just use the internet? Well,
a couple of things. If you're going to use
1966.419 -> the internet, you'd have to have private public
addresses on all of your systems, which we
1972.01 -> know is not possible because we ran out of
ipv4 addresses a long time ago. And that's
1976.25 -> why we use Private Addressing, which we'll
talk about later. Now next on this list, is
1982.039 -> the routing. That we have, we're going to
use the public internet to do all of routing,
1988.08 -> we need to take in, say 800,000 routes from
the internet, and then all of our own routes,
1994.75 -> and we'd have to have public addresses. So
we'd be dealing with $100,000 routers, as
1998.26 -> opposed to maybe $5,000, routers, routers
that can handle a big full internet routing
2004.51 -> table. Now, I'm used to doing highly complex
Internet routing, I'm one of the first Cisco
2009.85 -> Certified internet experts. And I've designed
half of the world's or consulted on half of
2013.899 -> the world's largest Internet service providers.
But let me tell you, this stuff is complicated,
2019.77 -> complicated, complicated. And you know, it's
not something that the average bear would
2024.389 -> want to be dealing with, for example, you
stick a private law and and what he called
2027.82 -> a VPN between it, and all that complicated
BGP and traffic engineering and route aggregation.
2033.039 -> And all that stuff, for the most part is simplifies
address spacing. With VPNs, we can pass our
2041.429 -> private addresses across the link. And we
can also pass our routing across OSPF, BGP,
2048.59 -> whatever our routing protocols are. Now, that
means we need to be on the same subnet on
2053.05 -> both sides. And we can't do this over the
internet. But what we can do is simply as
2059.179 -> follows. We created an IPsec tunnel, both
sides are on the same subnet, and that we
2064.21 -> can pass routing information. So let's look
at what your VPN would look like architecturally.
2073.839 -> Realistically speaking, you're gonna have
your data center, you're gonna have your cloud.
2080.47 -> And while we're dealing with the data center
and the cloud, but you're going to be dealing
2084.44 -> this as there's a router that connects to
the internet here, the virtual gateway on
2088.53 -> the AWS L is connected to the internet, and
you're going to create an IPsec tunnel. Very
2093.51 -> simple. And why is this so great? Well, the
internet is everywhere right now meaning you're
2100.24 -> already connected to the internet. And AWS
is connected to the internet, Azure is connected
2104.87 -> to the internet, Google is connected to the
internet, see, they're all there. And when
2109.63 -> you realize that the ubiquity or the internet
being everywhere, it makes it just so easy
2116.43 -> to just create a connection between them.
By doing so, guess what? You are now in a
2123.93 -> position, you've got a straight line connection
across the internet, want to create another
2129.02 -> connection to another site, who start your
tunnel on both sides, and you've got connectivity.
2133.55 -> So the internet is fast, fast, fast, fast
in terms of connections. But there's other
2139.42 -> things that we'll talk about what how and
why. If I can find my mouse here, we'll move.
2143.04 -> Okay, so there is that. So let's talk about
IPsec. VPN, some more IPsec VPN, get around
2150.69 -> the security and IP addressing challenges
the internet IPsec IPsec, realistically does
2157.66 -> this, let's say my hand is a tunnel, you put
your truck private traffic through the tunnel,
2162.21 -> and on the other side of the internet, it
comes out of the tunnel, and then it's back
2165.521 -> on your private network. Because it's private,
we can use our private information, pass our
2170.73 -> routing information. Now let's keep going
while we're at it. IPsec will encrypt your
2177.52 -> traffic, so that if anybody was able to get
access to your traffic going over the internet,
2182.28 -> guess what, they can't do anything with it
in any way, shape, or form. And that's why
2187.25 -> it's not going to be useful to them. But IPsec
does a little more than that. It prevents
2193.71 -> a man in the middle attack, what is a man
in the middle attack. So let's say I tried
2198.25 -> to create a VPN to chow Charles, one of my
amazing cloud architects. And she's got an
2204.329 -> internet router at her house. And I've got
an internet router in my house. If I connect
2210.94 -> a channel, using IPsec, I know the channel
is actually show. And what do I mean by that
2218.5 -> actually, I might even draw it out for you.
What I mean by that as I need to authenticate
2223.48 -> the person on both sides, I also need to make
sure that the message has not been changed.
2230.5 -> Early in my work life when I used to practice
internal medicine as a nurse practitioner,
2234.96 -> I used to write prescriptions. Now if I had
a person having a heart attack, and I wrote
2240.181 -> for a four milligram prescription of morphine,
that might be the appropriate dose for a patient
2244.57 -> having an active heart attack. But if somebody
changed that for milligrams to 40 milligrams,
2250.31 -> that person patient with overdose, stopped
breathing, and in most cases die. So we need
2255.38 -> to ensure the message integrity of what we're
dealing with. Now also, we need to be sure
2263.859 -> that the sender can't say they didn't send
it afterwards. And that's called non repudiation.
2269.35 -> So let's build the whiteboard. Let's whiteboard
out a VPN right now. So over here, what we're
2274.52 -> going to do is we're going to have two people.
I was mentioning child, but I think, I think
2280.11 -> we'll go back to my favorite kind of examples.
And we'll use some furry friends. So because
2284.56 -> I always love furry friends. So let's say
on this one side of this, we have my cat Cindy,
2291.9 -> and my cat Cindy is basically wants to talk
to her friend over a VPN. So let's go find
2298.77 -> one of my cats in these friends. Mike, you
are not sharing the screen. Oh, thank you.
2306.68 -> See, that was the channel I was referring
to. Now let's say by comparison, let's say
2312.68 -> that Cindy wants to talk to her, her friend
who is a rabbit, rabbit that found its way
2317.61 -> into my garage. And obviously, I put out food
and water for the rabbit and I got it outside
2323.329 -> of a house and filmed somebody to house the
rabbit before my before my Cindy could terrorize
2328.55 -> this pure beautiful sweet rabbit. So let's
say both of them are actually connected to
2333.38 -> the internet. And they wanted to have a conversation
maybe about terrorists or about chasing rabbits
2338.82 -> or doing any of these things. Now, if they're
already on the internet, here's all they really
2344.03 -> need to do. Now first, Cindy, we're gonna
pretend she's a sweet, gentle thing and she
2348.83 -> doesn't eat rabbits, which is totally not
true. But we're gonna pretend right now that
2352.27 -> my Cindy's a pure angel, because I'd like
to believe she's. Now each one of these has
2356.599 -> a router that connects on the internet. And
let's say Cindy's a sweet little girl that
2360.93 -> does not eat rabbits. And the two of them
want to have a conversation. Now by having
2366.16 -> the two of them that wanted to have a conversation
together. Guess what? I'm trying to find some
2370.81 -> more. Some more animals. Everything was going
to be fine. Cindy is going to be talking to
2376.73 -> Cindy is going to be talking to bunny bunny
is going to be talking to Cindy and they're
2381.079 -> all good. Now when the meeting is set up and
this connection is set up between Cindy Guess
2386.83 -> what? We know that Cindy is talking to her
friend cutie pie the rabbit and everybody's
2391.829 -> happy. Now without IPsec here's what could
happen. We could have this beautiful cat named
2397.52 -> Sonny who's my chief operating officer Chris's
cat I want again a wonderful cat. But let's
2402.85 -> say Sonny likes to eat rabbits. And let's
say that Sonny was pretending to be Cindy
2409.45 -> and the rabbit Mr. Rabbit was saying, Hi,
Sonny my home addresses here. Now that would
2414.88 -> be a problem because then suddenly the cat
would you, you beautiful rabbit, and the rabbit
2419.18 -> would not be happy. So we have to first prove
that the message is real, and IPsec provides
2424.95 -> that advantage. Now, secondly, IPsec uses
a hashing algorithm, meaning it creates a
2434.17 -> mathematical formula to let you know that
nothing has been changed in this way. Cutie
2439.18 -> pie rabbit over here can verify that Cindy,
the sweet little girl that I hope she is sometimes
2444.19 -> is actually her friend. And then when she
says come to my house at this address for
2447.94 -> dinner, I've got carrots for you and spinach
for you, the rabbit goes to the correct address,
2452.75 -> and not the address or the scary side of the
cat live. Next, we want to make sure that
2459.66 -> you know when we're dealing with our cats
and our rabbits and they're happy that that
2465.63 -> Cindy the cat can't say the rabbit afterwards,
when the Rabbit came to the house, I did invite
2469.329 -> you that's called non repudiation. So when
we're dealing with IPsec, we're getting three
2474.75 -> benefits, endpoint verification, which prevents
man in the middle attacks, message integrity,
2482.26 -> and something called non repudiation. The
cat can't say that I didn't invite you. So
2489.45 -> let's talk about why do we love VPN so much
because the internet's everywhere. And you
2493.81 -> can set it up in minutes, or seconds. Actually,
if you're good. We're when we want a private
2499.79 -> line, which we're going to talk to next, it
might actually take six 810 weeks to get the
2505.319 -> private to get your private line set up. So
VPN is can be done in seconds. They're generally
2510.971 -> speaking, very inexpensive. And we can create
multipoint tunnels, for example, my cat Cindy
2516.72 -> could create a VPN connection to sunny the
cat, and somebody else's rabbit and somebody
2521.57 -> else's cat, all through the same internet
connection, it's called a point to multipoint
2526.839 -> connection. Beautiful, simple and elegant,
kind of keep that in the back of your mind.
2529.98 -> Easy, easy, easy garden. Now let's talk about
the disadvantage of the Internet. In this
2538.32 -> case, internet performance is not guaranteed,
when you stick your traffic on the internet,
2544.25 -> there's no guarantee that it's going to get
to the destination zero guarantee that it's
2548.54 -> going to get to the destination. So because
of this, if you need critical performance
2553.19 -> or low latency, don't use a VPN use a direct
connection.
2556.54 -> On a direct connection is two three hops.
2560.86 -> Below AWS does that a funny way it could be
more than that. But when a private line, it
2566.71 -> could be 2030 routers or more that you're
going to. And that's the key, the internet
2571.46 -> is what's called best effort, zero guarantees
of your delivery. So once it's on the internet,
2575.76 -> you don't know if it's gonna get there, private
line, guaranteed latency, which is how long
2580.17 -> it's going to take to go from both sides of
the water and guaranteed bandwidth. So when
2583.839 -> it matters, you're going to be using a direct
connection. Now AWS VPN is typically going
2591.74 -> to be set up between the organization's data
center and your VPC. It's called the site
2596.569 -> to site VPN. But VPN can also be set up between
multiple sites as well. The way this works
2603.65 -> is both sides are set up to terminate the
VPNs. You could call it an endpoint. And each
2609.04 -> endpoint encapsulates packets and puts them
into an IPsec tunnel, which sends it to the
2613.48 -> destination and that encrypted environment
just as we described. So when these tunnels
2619.92 -> get set up, here's what happened. They have
to exchange security keys. And it's called
2625.52 -> an Internet Key Exchange Security Association.
What happens is each one of these organism
2633.24 -> each one of the routers, comes up. And they
determine the encryption type. Like Sha 256,
2640.579 -> for example, the algorithm etc. And of course,
you can set up dynamic routing over BGP, which
2648.68 -> is preferable in most cases, or if you don't
know BGP, and you don't know routing, and
2653.74 -> you've only got a single point of failure
in a single link. Of course, you could set
2657.64 -> up static routing, but I strongly wouldn't
recommend that I'd recommend learning BGP
2661.809 -> and being able to use dynamic routes, just
like your VP, just like a GP, your GPS, if
2666.76 -> you're using dynamic routing, which is effectively
DP GPS, and I'm gonna go to Chris's house,
2671.69 -> in parts of I 95 are blocked off. It'll tell
me routing to go left, go right. The static
2677.579 -> route is like an old map book. You basically
write your plans out and go left drive 20
2681.66 -> Miles go right, go 20 miles, but if there's
a roadblock, you're in trouble. So that's
2686.819 -> why you'd want to use BGP. Now, AWS will tell
you that their VPNs are highly available and
2696 -> redundant. And this is partially true, but
partially not Chill. And I'll show you what
2701.99 -> I mean. Because the VPN on their end is logical,
they'll say that it's fully redundant. And
2710.349 -> I'll say how they're gonna say connect the
two things. That's great until the router
2713.78 -> on your end links goes through your internet
connection goes. And all of that goes out
2717.589 -> the windows. We'll talk a little bit more
about that in a minute. But what happens is
2722.2 -> when you set up your VPN to AWS, which is
a logical router, virtual router, as opposed
2726.16 -> to a physical router, there are virtual routers
can go down as long as the clouds up. So what
2733.59 -> happens is a link is going to be connected
to two availability zones, which is two data
2737.64 -> centers. And you can be set up as active active
or active passive. For organizations that
2743.03 -> don't know routing, active passive will be
the best strategy and that with no get out
2747.47 -> of order packets, for organizations that have
the sophistication to understand routing,
2750.94 -> you're not going to create multiple VPNs,
and not use them on multiple links not using
2754.6 -> a route of using BGP. So let's look a little
bit about why I said it's partially true and
2760.88 -> partially not true regarding the single points
of failure with the AWS VPN. Now, AWS would
2767.94 -> tell you this is highly available, and they'd
say, Look, this device and their VPN Device
2772.339 -> is not going to go down. It really won't.
That's not how these systems work. But the
2777.559 -> problem is, if the device on the right side
and the organization's data center goes down,
2782.45 -> everything is dead. And if the internet connection,
the organization's using is also down, this
2789.619 -> systems are dead. So if you really want a
high availability VPN architecture, the only
2797.73 -> option you really have is a solid, you can
create and I'm going to, you can go say this
2802.89 -> is AWS over here. And this is multiple, multiple
availability zones, we're just gonna call
2809.309 -> make one single box. And then this is your
data center, which is sitting over here. The
2814.64 -> only intelligent way to do this is to create
to put two routers in your data center r1
2830.16 -> are to each one of these links should be on
a separate internet service provider in case
2837.559 -> the router or the Internet Service Provider
length. And then what you're going to do is
2841.59 -> connected to virtual routers on AWS. And by
doing so, you can lose. By doing so we can
2853.05 -> lose any of the following, we can lose one
of these internet links, were one of the one
2858.359 -> of the routers. And that's truly truly truly
how you build a high availability set up,
2862.53 -> you would basically create two routers, with
two connections going to both places. And
2867.9 -> now you can lose an a router, one of these
routers can go, for example, or one of the
2875.609 -> of the internet connections can go and you're
still happy. And you're still connected to
2879.96 -> the AWS cloud, kind of keep this in the background.
So let's talk a little bit more. When, as
2888.8 -> I said, you know, the virtual gateway router
on the other end is highly available, but
2893.17 -> your stuff is not. So when it comes to high
availability. One cloud is not high availability,
2898.79 -> no matter how many availability zones emergency,
single router, no matter what is not high
2904.31 -> availability. Military outages, one is none
and two is one and three is greater than two.
2910 -> One is none. Two is one and three is better
than two, critical, critical critical for
2914.91 -> you to understand that and critical for our
world. How do you set up a VPN? It's silly
2923.33 -> easy. Basically, you're going to determine
which AWS Virtual Gateway, you're going to
2927.66 -> connect to pick a routing method, static routes
or dynamic routes. And either you set up your
2935 -> tunnel configurations, where you go to the
form of AWS spits out a virtual configuration
2940.16 -> for you. And that's it. But I'll give you
a little more information, you can obviously
2947.03 -> do a custom setup, which is what a network
architect would look Neela do I have my network
2951.8 -> engineers really put a nice routing policy.
So that way, I can tune the performance and
2958.38 -> trench in my traffic engineering. But if you
don't know what you're doing, or actually
2963.56 -> you shouldn't be touching this stuff at all,
because you'll just be taking systems down.
2967.579 -> But if you know what needs to be done, but
don't know how to configure it, which is totally
2972.339 -> fine. The AWS system management console will
literally create an auto configuration for
2977.1 -> most VPN devices, whether it be Cisco Juniper
Networks, Palo Alto are fortunate. Of course,
2983.47 -> you can monitor the status of your VPN tunnels
with Cloud watch on their end. But you could
2987.43 -> also look at what's going on on your routers
at urine. Now, since we talked about what
2992.08 -> is a VPN, which is creating a virtual network
inside of a public network, let's talk about
2999.109 -> a direct connect Trim, which is like a wire,
I've always viewed a direct connection as
3003.52 -> simply a wire between two locations. That's
the way I like to look at it. Because I've
3010.109 -> been working with private lines now for a
couple of decades, and let me tell you, if
3014.91 -> to me, it was always easier to explain it
to people in terms of simple waters.
3021.99 -> So let's talk about the
3026.93 -> direct connection is the equivalent, almost
of a private line, and we're going to walk
3032.04 -> you through it. So why would you use a private
line well, guaranteed bandwidth, consistently
3037.799 -> latency, and it's going to be the highest
availability and reliability. less to go wrong
3044.54 -> on a wire than the entire Internet. Now, when
you need higher performance, you can bundle
3051.73 -> links together. Now, if you have one length,
it's 10 gigs, you've got 10 gigs. If you've
3056.47 -> got two links, it's 10 gigs, you got 20 gigs.
If you bundle three links together, you got
3061.339 -> 30 legs, gigs. And if you bundle four links
together, it's called 40 gigs. For those of
3066.39 -> you that have been in networking for a couple
of decades, like me, I'm sure you've heard
3070.19 -> of Port channel, ether channel, link aggregation
groups, Link Aggregation groups are effectively
3075.079 -> the new de facto standard for bundling links
together, we can bundle up to four links per
3079.37 -> Link Aggregation group. And obviously, we
can create multiple Link Aggregation groups,
3083.49 -> across routers. So now let's now that I mentioned
that it's a logical wire, let's talk a little
3094.89 -> bit more about it. And you can think of it
this wire being a wire, but it's really not
3100.99 -> just the wire, and I'm going to get much more
into it. Now, to connect to the cloud, you're
3105.18 -> going to be using a fiber optic connection,
which is always going to be single mode fiber,
3109.34 -> because we're going over distances. And remember,
it's going to be a one gig link, a 10 gig
3115.64 -> link. And finally, AWS supports 100 Gig flex.
There are several steps along the way. And
3121.9 -> we're going to show you that in a minute.
But before we show you that in the minute,
3125.589 -> let's talk about the key underlying technologies.
Obviously, you need a router, you're not connecting
3132.69 -> to anything, the router will have to be a
fiber optic port, because you're not going
3138.609 -> to go more than 100 meters a copper connection,
so it's gonna have to be fiber optic. No single
3142.79 -> mode fiber, as the only thing as I mentioned,
it's going to get you the distance. So if
3146.7 -> you're dealing with one gig, it'll be 1000
base dash LX. If it's 10 gigs, you're going
3151.78 -> to have 10 G base dash LR, for your exams,
you might expect to see 1000 base dash LX
3159.19 -> or 10 G base dash LR for 10 Gig respectively.
Now, for any of you that are coming from the
3165.38 -> networking world, which is like the perfect
world for cloud computing, because we network,
3169.64 -> people have been working with Cloud for 20
plus years, 25 years, you know that when you're
3174.22 -> dealing with a laser, and you put those lasers
in your fiber optic partners a send laser
3178.87 -> and a receive laser. Now if your send laborers
are is up, but you receive Labor's don't lasers
3183.63 -> down, in many cases, that link will stay up.
The problem is your traffic won't be flowing,
3189.18 -> and your traffic will be tossed apart, thrown
away. So when you have multiple links, you
3196.17 -> need something that's going to let you know
if one of those links is partially down to
3199.55 -> close that entire link, like a health check,
which we'll talk about when we get to DNS,
3205 -> or load balancers. AWS, like most good networking
organizations have done for the last 20 years,
3211.38 -> enable something called bi directional forwarding
link detection. And that means if you've got
3215.2 -> to send and receive laser on one of these
lasers goes down and removed the entire link.
3218.91 -> So you can fail over to your backup connections,
which is exactly what you need to use. Now
3226.57 -> when you purchase a direct connection, which
I'm going to show you about in a few minutes,
3230.349 -> you're not exactly buying the straight wire
to the to the cloud. It's like you're buying
3236.089 -> a wire to an internet Point of Presence, which
then you're going to backhaul you back and
3240.44 -> I'll show you that in a minute. So you connect
to your direct connection location from your
3245.48 -> service provider, and then you get back called
back to AWS. So and there's going to be something
3251.87 -> called the letter of authorization required.
I'm going to walk you through that right now.
3255.9 -> So here's what it really is going to look
like. To the right, we've got our on premise
3262.299 -> environment, got a router here are dealing
multiple routers. And we're going to have
3269.23 -> a wide area network link to ideally two direct
connection locations. So let's start with
3275.17 -> the bottom link. We have have our own router
sitting in a direct connection location. We
3281.38 -> buy a link to that. Now we have to connect
our router or layer three switch to the AWS
3289.83 -> router slash layer three switch and we need
to run what's called the cross connect. What's
3294.33 -> a cross connect it's a wire between our router
and their device. And then the traffic is
3299.53 -> taken by Over the AWS network. So think of
this on premise or data center, we have one
3306.7 -> or more routers that connect into each direct
connection location, via a WAN link, like
3311.71 -> a one gig WAN link or a 10 gig LAN link or
100 Gig RAM. We then connect to our router
3317.73 -> over the winlink, just like we've been doing
in networking for forever, I think somewhere
3324.109 -> between our router and the AWS router, we
need to run a cable called a cross connect.
3331.49 -> And that cross connect gives you the permission
or your service provider, the Commission permission
3336.39 -> to run that cable between your device and
the AWS not exposed because you didn't connect
3341.14 -> to this direct connection location to your
router, you have no access to AWS that way
3345.829 -> until that router is connected to the AWS
network and routing is actually established
3350.29 -> between them. So you're going to need something
to enable your service provider to run this
3355.97 -> little orange cable between the customer router
and the and the and the dx where they are
3362.51 -> they're the designated router, the direct
connection look routers for the service provider.
3366.099 -> So look on the bottom bottom right, you can
see direct connection location, you can see
3371.13 -> that little orange connection between our
devices and the AWS devices. And in those
3375.89 -> particular cases, that's called your cross
connect. And that's done by the letter of
3379.619 -> authorization. So you must get this letter
of authorization prior to being able to run.
3387.75 -> So let's talk about this direct connection.
What this letter of authorization is that
3394.4 -> it's the ability to connect that connection
between your device and their device, just
3398.2 -> that wire. To receive this letter of authentic
authorization, you need to identify the region
3403.549 -> in which case you're going to be connected
to now, you will request a letter of authorization
3410.13 -> either via simply the the management console,
the API, but also you could do it over the
3415.78 -> command line interface. And if your application
is complete, what'll happen is AWS will provision
3421.41 -> the switch port on their layer three switch,
although they're going to be layers and layer
3425.68 -> two routing to you, in the lecture, run that
cross connect. Now what at that point is you
3431.88 -> download the letter of authorization, you
hand that to your service provider and they
3436.309 -> cross the cable for you don't remember the
cross connects just a wire between. Now when
3442.68 -> we're dealing with with AWS, we're gonna get
into concepts called public and private interfaces.
3450.27 -> Now, if any of you were involved back in 1996,
working on Frame Relay, like me, or 1998,
3458.03 -> working with the ATM cloud, or 2001, dealing
with the BGP VPLS call or BGP called RFC 2547,
3465.26 -> cloud or the VPLS code, this is no different
in the same 25 year old networking technologies.
3471.77 -> Basically, you connect to a public virtual
interface, and that will enable you access
3475.69 -> to public AWS services. Public AWS services
are gonna have a globally routable IP address,
3483.67 -> which means public. And you'll be exchanging
information routing information with BGP,
3488.66 -> simple, simple, simple stuff. Now, AWS will
not re advertise your routes out. And by doing
3496.349 -> so, you don't have to worry becoming becoming
a transit ISP for the entire Internet. You
3501.9 -> know, it's the same thing as setting up your
route in BGP, and using the note export community.
3507.34 -> So your service provider will export your
routes. Now, when you deal with AWS BGP, well,
3513 -> you've got some serious limitations. They
won't take a lot of rows from and basically
3517.789 -> 100, which is nothing, I connect to the internet
in my house to three different internet service
3522.25 -> providers. And guess what, I take an 800,000
routes from each internet service provider,
3526.7 -> AWS like to give them 100. It's nothing, nothing,
nothing. So because of this, keep that in
3533.4 -> the back of your mind. So here's what I want
you to understand what it's going to look
3537.089 -> like, architecturally, I want to draw this
for you. I don't want any confusion. I know
3540.47 -> many people are confused by most, especially
people have taken others, you know, AWS events,
3545.069 -> networking courses, those that are taught
by networking people, and they get so confused.
3548.32 -> I don't want you guys being confused. So realistically,
all what's really going on is here, you know,
3553.71 -> you've got your box over here. This is your
box. So this is your data center. Then connect
3563.359 -> over here to the cloud. And when you click
going on is when you're connecting to let's
3570.5 -> call it the clouds router. You're going to
connect to the virtual router in the cloud.
3574.28 -> It's called a virtual router vif virtual interface.
Now through this virtual interface, you can
3584.98 -> connect to say s3 or you can connect any other
multiple devices. So the way this happens,
3591.329 -> let's just see a public service. Now we've
got to s3 and another public service ser aiic
3600.29 -> may not have spelled that right, it doesn't
look right. But we're doing stuff live in
3605.36 -> real time. So basically what happens is we
connect to this virtual interface. And they
3610.05 -> build virtual links. Basically, pseudo wires,
for those of you that are familiar with MPLS,
3615.93 -> pseudo wires to all of their services. And
in that matter, you're getting one connection
3621.859 -> to them. And they can basically create virtual
circuits for you. Very reminiscent of the
3627.32 -> frame relay permanent virtual circuits of
the ATM permanent virtual circuits, same thing
3631.62 -> we're talking about. Nothing's new. But that's
how these virtual interfaces work. Now, the
3638.92 -> public ones, guess what connects you to public
services.
3643.15 -> So let's talk about
3646.46 -> private virtual interfaces. Well, this is
to connect you to virtual stuff inside of
3651.09 -> your V PC, your virtual private cloud, otherwise
called virtual private data center. Some people
3657.17 -> like to call a VPC, virtual private network,
that's Saturday, here's the reason why you
3662.14 -> don't, it's a virtual private data center.
It's not just your routing and routing and
3666.16 -> switching and encryption. In your VPC. It's
where you put your servers and all the things
3670.95 -> that are part of your network, which is your
data center. So of course, by using private
3677.45 -> or the private virtual interface, you can
use private IP addresses. Again, you can only
3683.22 -> advertise 100 routes over the session. So
what does that mean? It means the people dealing
3688.099 -> with your IP addresses can't be like a DevOps
engineer, that's not a network engineer, love
3692.19 -> DevOps engineers. But that's not their world,
you need to have a really good network engineer,
3696.72 -> a really good network architect, or a really
good cloud network architect, set up your
3701.07 -> routing. If your routing is wrong, and your
IP addressing is wrong. It's going to be like
3705.03 -> a city that was planned without streets where
you're trying to stick on streets after the
3708.099 -> fact, we've all been there. We all see how
bad it is. So you got to have a very senior
3713.57 -> person to deal with your IP address. And so
getting super annoying. We'll be doing a free
3717.69 -> AWS events networking course. And I'll teach
a lot more about that. Of course, if you really
3721.38 -> want to learn that that's the kind of stuff
we teach in depth in our cloud architecture,
3724.43 -> where to vote unpregnant, but things that
are really out there in deep depths, because
3728.309 -> that's architecture. Whereas this is more
certification material. So let's talk a little
3734.04 -> bit more about Link Aggregation groups. I
love Link Aggregation groups for the following
3738.369 -> reasons. Link Aggregation groups enable you
high speed connectivity, and they remove single
3744.559 -> points of failure. So high performance, high
availability, this is about as good as it
3748.88 -> gets everybody. So if you wanted 20 gigs network
performance, and you've got a 10 gig link,
3756.73 -> well, you got a problem. Now you could talk
to 10 Gig links, and set up a beautiful BGP
3763.39 -> policy and load share one subnet on one link
and another subnet another link, and that
3767.26 -> would be perfect. Or you could put two links
together as a single link. And by putting
3774.049 -> your two links together as a single link,
it simplifies the routing, because it's going
3778.31 -> to look like one IP address on both sides.
We don't have to deal with the challenging
3782.01 -> switching things like regards to spanning
tree or rapid spanning tree to promote loop
3786.72 -> avoidance. It's quite simply basically just
multiple wires bundled into a single bar.
3791.78 -> And if those of you are around long enough
for ISDN, and multi link, PPP, that's identical
3796.819 -> technology, but with Ethernet, instead of
point to point connections. So we can bundle
3802.66 -> links up to four of them, as long as they
have the same speed, performance and latency.
3808.619 -> So what's it going to really look like here's
in this environment, we've created two Link
3812.599 -> Aggregation groups, across two routers, to
two direct connection locations. NL in this
3818.74 -> particular environment. Look at it this way.
If on the top link aggregation group, if either
3828.799 -> one of those links goes down, the link is
still up, and we still have 10 gigs of bandwidth.
3832.73 -> So in this case, we've got 20 links on gig
to 10 Gig links in the top and to 10 Gig links
3838.43 -> in the bottom, lots of performance, lots of
capacity, and of course, higher higher and
3845.97 -> higher availability. And when it comes to
the organizations that are totally dependent
3850.109 -> upon technology, it's all about high availability,
because if the systems aren't there, we don't
3856.349 -> need them. So before we get back to the content,
give me a hashtag AWS Certified Solutions
3863.329 -> Architect, associate and the chatbox. That
way I know you're there. If you've not subscribed
3869.73 -> and hit the bell, please do so now. If you're
having a good time, please hit the like button
3873.98 -> will signal the algorithm that we're doing
a good job. And we can get more of our free
3878.05 -> content to those people that need it most,
especially those that can't afford training.
3881.619 -> We want to make sure that we hope all those
that need training that are looking to pass
3886.369 -> the AWS Certified Solution Architect 2020
job free training with our free full AWS course.
3894.2 -> And now let's talk about storage on the cloud.
I love talking about storage. I really do
3900.31 -> So what is storage, where we keep our stuff,
right? Okay, so storage just in the environment
3908.46 -> where organizations are going to keep their
data. And then when we get into storage, we're
3914.24 -> going to be dealing with volatile storage,
and non volatile storage. And I'm going to
3919.79 -> tell you right now, that storage is an absolutely
critical component of your virtual private
3925.73 -> cloud environment. So we're going to be talking
about block storage, object storage, file
3934.64 -> storage, instead of just going into the AWS
terms, I want to make sure you understand
3941.15 -> these types of networks, because as an architect,
you're gonna have to architect around them
3944.93 -> and their weaknesses. And if you're an cloud
engineer, it's not going to be good enough
3950.14 -> to know how to click a few buttons. Anybody
can do that. You're going to have to know
3953.5 -> how to get around the performance problems
of block storage. Why can't use object storage
3958.63 -> for attaching into a system? What Why are
these services used? So I want to make sure
3963.779 -> you understand it, as I want you all to get
cloud hired someday as either cloud architects
3968.29 -> or solution architects or cloud engineers.
So we'll begin with block storage. Block Storage
3975.91 -> is non volatile, which means it doesn't go
away with system reboot, or instance termination.
3983.029 -> And why do organizations use block storage?
Well, block storage is a very common type
3988.559 -> of storage area network. What is the storage
area network everybody? It's basically a network
3994.359 -> full of machines called RAID arrays filled
with hard drives that are attached to a network.
3999.66 -> That's it, it's network attached storage.
Now, why do organizations like block storage?
4006.13 -> Well, for a couple reasons, block storage
decouples, the server and the storage environment
4012.69 -> what I mean by decoupled in a traditional
server, your storage is limited to what's
4018.26 -> inside of those hard drives in the server.
But with block storage, you can have your
4023.9 -> storage, you know, a kilometer away, and you
can have your servers over here. And they
4029.27 -> can access it via the IP network, or be a
Fibre Channel networks in the physical physical
4034.94 -> data centers. But by doing that, we're not
limited to the storage that's inside the server.
4041.099 -> So for a cloud provider means they can have
data centers just fill with storage, and connect
4045.751 -> them to a data center filled with servers,
or vice versa, or putting the stuff anywhere
4050.859 -> in the new. Now when you dealing with this
with block storage, and the storage area network,
4056.17 -> your data is taken and broken down. So the
little blocks, and each block is going to
4060.99 -> have an identifier. What makes it even better
is your blocks can be stored anywhere on the
4066.61 -> system anywhere on the network, which means
it's going to scale fast. And it's very dependable.
4074.109 -> And being decoupled enables your systems to
grow. So I like to look at it in this visual
4079.849 -> environment. To me, I always looked at it
and pictured it kind of like a calculator
4083.47 -> in my head. What do I mean by a calculator
in my head look, in this particular environment,
4088.96 -> we've got our systems, and our date is listed
as well, 01234, etc. And that's how we can
4096.18 -> identify our data. When we need it, we'll
get into the AWS specifics of the storages.
4101.15 -> After we do a quick overview of the data center
technology. Now while we're at it, let's talk
4108.41 -> about object storage. Object Storage is a
type of storage area network where your data
4112.56 -> is taken in broken down into objects. Object
Storage is very unique storage. Because one,
4120.58 -> each object has metadata. So what's made a
data, its data actually about the data, which
4126.56 -> is so cool. So when you're dealing with object
storage, if you want to find something, you
4131.04 -> can query the metadata and find it much quicker.
Now, because we've got metadata, we can start
4139.79 -> thinking of big data environments, data lakes,
which we'll talk about, and the ability to
4146.16 -> basically take your data, categorize your
data and query your data. And in most cases,
4152.08 -> with block storage, we can even use SQL queries
that can put it in a database. Now, object
4158.431 -> storage, we've got to be very clear on this
is not normal storage. We can't mount it the
4163.87 -> regular server like we could with traditional
storage. It's good for static files. The reason
4170.489 -> we can't use it by a regular computer is as
follows. Every time we deal with a new modification
4176.58 -> of a file or an object, it's going to create
a new version. So imagine, for example, we
4181.359 -> tried to use object storage and mounted to
a server, a server with you know, 292 cores
4186.63 -> and six terabytes around. Now, that server
will have a nine terabyte swap file. The swap
4192.06 -> file or virtual memory is typically 1.5 times
around the DRAM and the system. Now that file
4199.13 -> that swap file, may change 100,000 times per
minute. So if we were to try to map a swap
4205.56 -> file on object storage, we might have 100,009
terabit objects per minute. Now, obviously,
4213.24 -> that would cost an organization millions of
dollars a month for that kind of storage,
4216.92 -> it would bankrupt them. So object storage
is good for software, archival purposes, backups,
4223.84 -> static web files, static website hosting and
things. So the way I like to view it as this
4228.79 -> object storage is flat, flat flat storage,
meaning basically you've got your data and
4233.54 -> something like a database pointer pointing
to the data. And it looks just like this.
4237.83 -> Got a bunch of objects that are sitting there
with information pointing to the objects,
4243.33 -> and these little pieces of metadata or data
about the data, which you can see with little
4247.06 -> diamonds at the top. That's the way I visualized
object storage.
4251.83 -> Now we'll talk about file storage. This is
what you've got in your computer.
4258.6 -> If you're using a Windows system, it's NTFS.
For example, if you're on a Mac, it's the
4263.63 -> apple file systems, whichever file system
they're using at the time, is traditional
4268.47 -> storage. Now, also, if you've got a Windows
machine, you click Share Folder, it becomes
4273.64 -> a file server. So file storage is either the
hard drive that's in your systems, your physical
4279.04 -> hard drive, or you take a Linux machine and
you share a folder, and you create an NFS
4284.7 -> or network file system share. On a Windows
system, it's a Server Message Block share,
4289.83 -> pure file storage. And fire storage is hierarchical.
So typically speaking, here's what way it's
4296.64 -> going to look like. You're gonna have a parent
folder, and inside your folder, you're gonna
4301.04 -> have another folder. And that's where you're
storing your stuff, like many of you have
4304.219 -> in your environment. And now let's talk about
object storage on AWS. What's that called
4312.8 -> s3. Now, I want you to understand this, this
object storage is the same that you'd buy
4318.34 -> from Delhi MC in your data center. It's the
same stuff Microsoft calls blob, it's the
4324.44 -> same stuff that Google calls cloud storage,
is the identical technology is 20 plus year
4330.21 -> old technology, it's not new. And now you
understand how you would use it on any cloud.
4335.62 -> to Now let's talk about what is Amazon Simple
Storage, otherwise known as s3, it's AWS branded
4343.409 -> object storage, no different than anybody
else's object storage. It's integrated into
4348.81 -> tremendous number of AWS services. AWS would
call it high availability, because they'd
4354.08 -> say it's 99.99%. I don't necessarily consider
that to be high availability, because that
4361.81 -> means you're gonna have basically 50 minutes
of downtime per year. So you could call that
4366.56 -> high availability, the customers that work
with me would never call that high availability.
4370.7 -> But you know, it's your definition of high
availability, I'm fine with 99.99%, high availability
4377.239 -> for GovCon careers, because we're not mission
critical. But in a hospital, or a bank and
4383.07 -> a bank, millions of dollars can be lost with
this. And the hospital people could die like
4386.68 -> this. So depends on your needs. Now, what
I will say is AWS s3 is durability of your
4394.02 -> data is truly remarkable. It's 99.999999999%.
Durable. What does that mean? It means that
4406.92 -> even if I can't access it when I need it,
AWS systems are so backed up, and so well,
4414.42 -> that the chances of me needing it or not being
able to retrieve it later are basically zero
4418.739 -> 99.99 911, nine durability, which means 99.9
to nine decimal places out available. So this
4429.25 -> is truly extraordinary. And of course, if
something goes on, you'll be notified by event
4436.84 -> bridge. So when would we use Amazon s3 or
Amazon object storage, what a backup and archive
4446.81 -> our organization's data for static website
hosting, for distribution of content media
4453.52 -> or software for disaster recovery planning,
like I could take my whole data center, back
4458.56 -> it up to object storage to get into cloud
provider. We're for big data analytics when
4463.22 -> we're talking with things like data, lakes,
future machine learning projects, etc, etc,
4471.27 -> etc. were intentionally not using the branded
names because I want you to know with this
4477.56 -> is no matter what color you are, so that's
what we're going to talk about the concept
4481.59 -> because nobody is going to care if you go
in a job interview if you know the names of
4484.29 -> the services, but they aren't going to cares.
Do you understand how they work and do you
4488.76 -> know how to use them? On your exams, you need
to know the name of the proprietary services.
4494.14 -> So when you're dealing with s3, you understand
that basically what's happened is it's organized
4498.61 -> into buckets for you user to look at it. Now
in reality, it's flat environment where basically
4505.21 -> there's the data and a URL pointing to the
data. But that's just for us. For us, you
4511.34 -> know that we can put it in a bucket and make
it feel good. The bucket is really just a
4516.91 -> container for our stuff that's stored on AWS
three, what'll happen is the buckets are given
4521.79 -> a top level namespace, which is basically
speaking, a fully qualified domain name, etc,
4528.1 -> to Dotto, Cloud careers.com. Fully Qualified
Domain, we'll get into that in more depth,
4534.87 -> the fully qualified domain names when we talk
about DNS, and we're going to cover that heavily.
4539.14 -> And all the routing types when we get to that
search. Now, when you name the bucket, it
4544.52 -> can have upwards of 63 characters, including
letters, numbers, and hyphens and periods,
4549.77 -> so we can be pretty descriptive about it.
But remember, the path where you store the
4554.719 -> stuff is not necessarily where the actual
object or file is located. Now the URL that's
4563.66 -> used to access your file, again, it's just
a pointer in the database to where it's truly
4568.35 -> sorum. s3 is a lot like a database behind
the scenes as an all as object storage. In
4574.471 -> that you've got your data, you've got a pointer
to it. And here's the good news. Because it's
4578.39 -> so much like a database, you can run SQL or
Structured Query Language type queries or
4583.43 -> searches on your data. Now, that organization
can have 100 buckets per account. And if you
4590.639 -> need more than that, all you need to do is
reach out to AWS apart, and they'll give you
4594.12 -> a bucket in case you can have more buckets.
So let's talk about securing your data, you're
4600.38 -> gonna have two options. You can run a bucket
policy, which is the preferred method, because
4606.28 -> it's very granular and based on identity and
access permissions, what is identity and access
4610.8 -> management? Who are you? What are you allowed
to do, and then locking what you do. We'll
4615.57 -> talk much more about that when we get to the
security section. Where it can, you can use
4620.49 -> those same Unix Windows ACL based permissions,
which are basically readwrite and full control.
4626.99 -> So it matters. I'm going to tell you right
now, that lack of understanding of object
4632.64 -> storage, it causes most of the hacks on the
internet 16% of all held clock, how cloud
4639.31 -> hacks are related to misconfigurations. Anybody
can configure this with three minutes of training.
4645 -> What they can't do is know what to configure
and why they're configuring this, which is
4649.48 -> exactly exactly why we're focused so much
on the concept. Like I said, you can do those
4654.639 -> free lab downloads, sign up and do all those
labs and practice them. But if you don't understand
4659.94 -> what it is, you don't pass an interview for
the solution architect or the cloud engineer
4664.239 -> knowledge of how the systems work is the most
critical. Now we're going to talk about different
4672.699 -> storage classes, different storage classes
on s3. And why is this depending upon your
4680.42 -> needs, and your performance, there'll be different
options for your object storage inside of
4686.39 -> s3. By doing so, the whole point is to get
the lowest possible cost for your demands
4693.34 -> or your customers demands. And in this section,
we're going to be talking about a lot of object
4699.54 -> storage options. We're going to be talking
about s3 standard, your highest performance.
4704.02 -> We'll talk about s3 and frequent access. Then
we'll get into the scariness of s3 infrequent
4709.679 -> access one zone, which was Reduced Availability
Storage, then we'll get into s3, intelligent
4715.141 -> tearing, then we'll get into Amazon s3, Glacier
flexible. And of course, we'll deal with Amazon
4720.54 -> s3, instant retrieval as well. So what is
Amazon s3, standard, basic simple object storage.
4730.7 -> It's high availability, or at least 99.99%
available, which some people would call high
4735.65 -> availability. It's incredibly high durability
that 99 point 11 nines durability, which means
4741.42 -> 99.9 to 11 decimal places, to the performance
of it as acceptable, good for for most applications.
4748.949 -> And it's what you use for frequently accessed
data. And here's the reason if you're going
4754.58 -> to be accessing your data, you can access
it as much as you want. They don't pay you
4758.52 -> to to use it pull your data. Once it's stored
there to put it there pull up their like it
4764.05 -> won't know if there's transferring the network.
Yeah, there will be but in this case, there's
4767.11 -> going to be your cheapest option in most cases.
So while we talk about s3 storage tiers, let's
4775.449 -> talk about the next option. infrequent access.
Now, again, this gives you your same availability
4781.11 -> and durability as before, and performance.
Now, if you're using s3, standard infrequent
4787.81 -> access, you're gonna pay a lower rate to store
your data, which is great, but you're gonna
4792.7 -> pay to retrieve your data and your data has
to be available. So imagine it this way and
4798.48 -> we'll talk about lifestyle security lifestyle
lifecycle policies and why and how they can
4802.85 -> be used to optimize your customer systems.
But here's what we're dealing with s3, you
4807.56 -> pay less, but then you got to pay to retrieve
your data. Now, here's the thing, if you're
4811.35 -> not retrieving your data a lot, it's cheaper
to use s3. But if you're pulling your data
4816.29 -> constantly, it's too expensive. So this is
for data, that's infrequent access. And we'll
4822.07 -> show you the lifecycle policies before and
how you do this to really save an organization.
4826.46 -> And this is one of the things is transformational
in the cloud. Now, the next access we're talking
4832.01 -> about is s3, infrequent access one zone this
terrifies me, because now you reduce develop
4837.489 -> the availability of your data, which means
when you need it, you're not going to find
4841.381 -> it as easily. Now, when you deal with one
availability zone, you're typically dealing
4846.88 -> with 99.9% performance, which for the most
part is one day of downtime per year. So if
4853.3 -> you can tolerate that, it's cheaper if you
can tolerate it.
4860.04 -> And that's kind of our thing. Now, while we're
dealing with this, you get the cheapest pricing,
4866.62 -> but you got to pay for your data. And the
availability is going to be substantially
4873.312 -> less. So keep that in the back of your mind.
And there's something called s3, intelligent
4878.83 -> tearing. This is the automatic thing, where
AWS monitors your data, they automatically
4887.05 -> place your data on wherever they think is
the most cost effective performance for you.
4890.54 -> And this is cost optimization managed by your
service provider. Well, I think that's like
4895.68 -> having the fox guarding the henhouse. They're
gonna optimize it for you, the people that
4900.07 -> are getting paid to do it. So now, it's a
service. It's a machine learning based service.
4904.88 -> And they are now may not be great for you,
but kind of keep that in the back of your
4907.1 -> mind. If you know your data and your uses
policies, it's probably best to create something
4911.65 -> manually. Now, if you're looking for really
low cost, we've got s3 Glacier, which is good
4919.54 -> for long term storage. In fact, it's where
you put your stuff, and you pay less to have
4926.84 -> it there. Now let's instantly retrievable.
As a rule, it costs 68%, lower than s3. But
4936.52 -> to retrieve it, now you're dealing with some
heavy duty retrieval fees. It's kind of keep
4941.4 -> that in the back of your mind. But if you
don't retrieve your data for at least 90 days,
4946.5 -> then guess what you got, you've got much lower
cost up to 68%, lower. Now let's talk about
4957.37 -> s3, Glacier. Flexible, that's traditional
Gladers to Glacier storage, meaning you pay
4965.62 -> less to keep it there. But it's not instantly
available. In fact, you've got this really
4971.71 -> cool thing called the vault lock option, which
makes your data immutable. So let's think
4975.94 -> about that. And making your data immutable.
If your data is immutable, it can't be changed.
4982.62 -> So for a bank that needs to store their customers
records, the glacier vault peut, lookups,
4987.969 -> and beautiful for medical facility, it has
to store their patient records for seven years
4992.37 -> later, but puts it in a place where it can't
be modified, brilliant, brilliant option for
4997.909 -> the right places. Now, this is designed for
information that's going to be accessed one
5002.45 -> to two times per year. If somebody needs their
data, they can retrieve it in minutes, two
5008.04 -> hours. And it's really low cost. It's going
to be even 10% less than glacier Institute,
5015.16 -> I made it retrieval. And you can pay for the
data retrieval. But you're gonna have to request
5021.05 -> information when you're done. Now, we're dealing
with SC glacier deep archive, remember, it's
5029.81 -> the lowest course cost. But it's designed
for stuff that you don't need within 12 to
5035.239 -> 48 hours, because that's how long it could
take to get it. And your data is going to
5038.71 -> be stored in three or more availability zones.
And it's designed for long term storage of
5044.16 -> highly regulated industries. So let's talk
about lifecycle management. I'm not going
5048.35 -> to visual that we'll use for this. What are
we dealing with here? Let's say an organization
5054.87 -> knows their usage flows and their data. Let's
say that the organization knows they have
5061.91 -> data that they're gonna frequently access
for 30 days. So they're gonna put it in s3,
5068.52 -> let's say for the next 30 days, that information
can be accessed just a little, little bit.
5073.23 -> Guess what? That's terrific. They can put
it in infrequent access. Let's say 30 days
5080.31 -> later, they're never going to use that data
ever again. But they want to store it for
5085.34 -> archival purposes, maybe future machine learning
purposes. May be may maybe maybe, you know,
5093.04 -> backup purposes. Maybe they need it for regulatory
environments. So that's what a lifecycle policies
5099.55 -> mean. can manually set it up minutes, it's
simple to do, stick your data on one, migrate
5105.56 -> your data to the next and have it automatically
managed to pay the lowest price based upon
5109.63 -> an organization's uses of their actual data.
So, you know, while we're at it, let's talk
5118.139 -> about s3 versioning. You gotta love when a
manufacturer or a brand like AWS decides to
5124.84 -> create a feature out of the natural functionality
of the technology itself. So when you're dealing
5130.199 -> with object storage, all object storage automatically
creates new versions, every time something's
5135.489 -> modified. Now, of course, the cloud providers
have taken big, big gains to prevent that
5141.24 -> from happening, which basically means they
know that their customers would be really
5145.58 -> upset if they filled up their systems and
got multimillion dollar bills per month because
5151.429 -> their storage about them. So they automatically
delete old versions. But if you want to basically
5155.21 -> keep all copies of something, you can turn
on s3 versioning, which is the default behavior
5159.72 -> of object storage anyway. So let's say I wrote
an example of a CSA dot Certified Solution
5164.491 -> Architect dot doc. And let's say I worked
on it for an hour saved it, I'd have version
5170.02 -> one, then Alonzo, for my team worked on it
from our is version two, then Chow worked
5174.12 -> on it for an hour and version three. Then
Chris worked on it for an hour his version
5178 -> for Eddie, who's in Cameroon worked on it
is version five. Leo, who's in Brazil worked
5184.179 -> on it, it's version six. By doing that, you
would store each version and why is that good?
5189.239 -> Well, the version number 642 got corrupted.
If you go back to 641, you still got something.
5195.409 -> So that's what versioning is. And it's but
it's the default behavior on all object storage
5202.19 -> platforms. Now, let's think about security
of your data. Now, there's two ways that you
5210.16 -> can use your data, I could just let you delete
a file directly from my from my object storage
5216.58 -> bucket. No big deal. Simple, simple, simple,
easy to do. But imagine that. So let's say
5222.58 -> we're talking about Super Challenge, Charles,
this rockstar cloud architect on my team,
5226.95 -> she's amazing in every way. Let's say she
was mad at me one day, and she just wanted
5230.77 -> to delete a file. And she deleted the file,
Chow would never be mad at me, she would never
5235.36 -> do this. She's amazing in every way. But you
know, here's that. Now, if she had multifactor,
5241.48 -> authentication, delete set up, child tried
to delete a file, and I would get sent a challenge.
5247.39 -> And they would ask me for a one time password.
Now I could provide that one time password,
5252.58 -> and that file will be deleted, or I could
not provide that one time password and the
5256.56 -> file stays there. So that's it. But that's
what it works. Multifactor delete multi factor
5262.219 -> authentication, again, is nothing nothing
new. And it's done to prevent other bad actors
5267.77 -> from doing it or you yourself. How many times
have you have accidentally deleted something
5272.79 -> and then had to go into the trashcan to pick
it up. I've done it before. So that's the
5276.179 -> point of multi factor authentication, delete,
but it also gives you protection from others
5281.68 -> from others. So let's talk about organizing
our data into s3. You know, when you organize
5291.99 -> it, remember, s3 is flat, you just put your
stuff in the object storage. And the reality
5298.389 -> is there's the database pointer pointing to
it. But that's going to be hard for the user
5302.411 -> to use. It's going to be tough. But we can
use what's called the delimiter, which is
5309.44 -> a pointer to our data. And by doing something
like that, it can feel logically organized
5314.949 -> like a folder. I'm going to put one right
now basically fake one that I just made up
5319.67 -> in the chat box so you can see it. So here
if I use the limiter, which I did in the chatbox
5325.11 -> mic slash 2020, slash AWS video slash storage
slash s3 dot mp4, but I popped in that chat
5331.7 -> box, you can see it looks and feels just like
a Unix path. No, it's not. But I can make
5336.92 -> my users feel like they're using traditional
storage. And this is the same thing that happens
5341.63 -> if you use Dropbox, or Google's cloud storage,
or anybody else's storage, it's all the same
5348.05 -> because it's all object storage, the Apple
comm is all the same. I call for example.
5357.84 -> Now if you're gonna have your data on s3,
if somebody were to break into AWS, and steal
5363.07 -> their hard drives, for example, your data
would be there. And that would be bad bad
5368.96 -> that of course, your data would be spread
across RAID arrays, which make only partially
5373.54 -> the data active but still, that's a problem.
So you're going to protect your information
5379.26 -> with encryption. And encryption, basically
take something and turns it into something
5385.179 -> that's not usable. Unless you've got the decryption
key. Kind of like those old cereals. We could
5390.27 -> have a message and you need to buy the box
of cereal to get the secret decoder ring to
5393.96 -> read it. It's the same. So we're going to
protect our sensitive data with income option.
5401.25 -> And encryption will make your data completely
completely completely unusable. Without the
5406.96 -> decryption key or that secret decoder ring.
There's lots of forms of encryption throughout
5412.83 -> history, there was a martial art called Capoeira
in Brazil. And that was designed not to look
5418.95 -> like a martial art. There's languages like
Pac 12, in the Caribbean, which were languages,
5425.38 -> which were a form of groups in that, you know,
certain people that understand how to speak
5429.12 -> and other wooden. Now there's wooden. Now
we've got encryption via IPsec, saw 256, and
5433.81 -> many other encryption algorithms. Realistically
speaking, that's all we're talking about.
5437.83 -> Now, we can encrypt that on the client side,
before we send it somewhere, or we can encrypt
5442.86 -> it on the storage server, and we're going
to be talking about them.
5446.42 -> Now, you'll definitely see this in a Certified
Solution Architect Professional exam, you
5451.869 -> may actually see this in the Certified Solution
Architect Associate exam as well. The first
5457.389 -> type of key encryption we're going to be talking
about and I didn't make up these terms up
5460.8 -> is SSC dash kms. Again, I don't make up these
names. And this is realistically a customer
5468.55 -> managed key within the AWS key management
system. Now, this is a complete key management
5474.24 -> system, meaning the user manages the master
key. And the key management system controls
5479.639 -> the data key. And this provides a beautiful
audit trail of how, who and when the day data
5487.199 -> was accessed. And it's going to look realistically
speaking like this, got the AWS key management
5492.9 -> key, there's a customer manage master key.
And then data can use us to basically speaking,
5500.69 -> encrypt your data simple and effective. Now
let's talk about another version. And again,
5508.81 -> I didn't make up this neck, this term, SS
e dash s through AWS managed keys. Now, this
5516.77 -> is an incredible complete key management solution.
Now, it's not going to be for ultra high security
5522.85 -> environments where you need control of your
keys. But for most people, this is simple
5527.04 -> and elegant. Basically, the key management
systems will manage all keys, it will automatically
5533.179 -> rotate your keys. And every object is going
to be encrypted with a new encryption key.
5538.41 -> So wow, you implement this solution, the computer
system automatically manages it for you. And
5544.56 -> you know, your data is safe and secure. This
is probably one of the best solutions for
5548.699 -> average organizations, not good if you need
military grade security, or things like that.
5554.449 -> But under normal environments is a simple,
elegant and really effective. And it reduces
5558.739 -> your overhead. Let's look at it this way.
Basically, you've got the key management system.
5566.469 -> It literally, it literally manages the master
key, and manage the data key. And everything
5573.33 -> is done for you automatically, as I like to
say, and no, I never would use the term auto
5579.29 -> magic. But lots and lots and lots of people
like to use alternative tech. So I thought
5583.67 -> I'd give you something that would be a little
fun. Now the next option we have, and this
5590.03 -> is one of the big coasts was going to be used
in your critical environments, middle military
5593.98 -> grade security, is something that's going
to be called SS e dash c. And this is really
5599.27 -> customer provided keys. Now this gives the
customer complete autonomy over the encryption
5604.699 -> keys. Them customer is going to manage all
their keys. Now here's the downside of that.
5613.02 -> Lots, lots, lots of actual key management
going to kind of keep that in the back of
5621.51 -> your mind. So how do we optimize Intune s3?
Well, we're going to talk about pre signed
5630.909 -> URLs, multi part uploads, range guts, as well
as cross region replication. So what is a
5640.94 -> pre signed URL? Let's say I want to send super
child the amazing cut architect's information.
5649.21 -> I've got two options, you know, I could give
her the keys to get into the system. Or I
5654.47 -> could press on the euro, and send my priests
on euro to supertall, the amazing cloud architect.
5661.14 -> So how would I do this, I sign the object
with my own encryption key. And I send that
5667.85 -> URL directly to show the URL is a fully qualified
domain name. She could click on this and then
5674.27 -> she could download the photo of my cat, which
is probably what I would send a super child
5678.65 -> a photo of my cat, because I love to send
photos of my cats to everybody, especially
5682.78 -> the people on my team. Still love my cat.
But by doing this by presenting the URL, I'm
5690.1 -> giving super chill, secure and temporary access
to my content. Now how long does this content
5696.659 -> actually available? Well, it depends on the
method that I actually Sign it. So if I sign
5701.8 -> it with my Iam instance profile, again, identity
and access management is, who are you? What
5708.119 -> are you allowed to do? And what did you do
and we'll talk much more about that when we
5712.46 -> get into identity and access management. But
if I sign it straight with my profile, it's
5717.02 -> good for up to six hours. Now, if I use the
Security Token Service, and I promise you,
5722.57 -> we're going to get into a lot of detail of
the Security Token Service, when we get involved
5725.989 -> with security and identity and access management,
then it's going to be good for up to 36 hours.
5730.6 -> Now what if I sign it with an im user name
and Charles an IAM user of our systems? Well,
5735.82 -> you can have access to that link for up to
seven days, where I could issue a temporary
5740.239 -> token. And I love temporary tokens. And here's
why I give something that's available for
5744.659 -> a short period of time that it's not available,
and poof, it is done. And that's why we really
5749.79 -> love these things, the AWS temporary tokens
because somebody steals your token, they can
5754.28 -> only accept for a short period of time, and
then we're back to normal.
5759.52 -> Now, let's talk next about multi part uploads
and what they are. Well,
5766.75 -> with s3, we can deal with a file size, it's
up to five terabytes, but we can upload a
5771.48 -> file up to five gigabytes. Now imagine this,
you send 4.75 gigabytes over the wire, and
5782.56 -> the network connection goes, you know what's
lost, all 4.75 gigabytes. And that's not an
5788 -> efficient distribution system, it would be
much more efficient. If we can send little
5793.52 -> bits and parts of the file, and then reconstituted
in the end. See, there's so many things that
5800.37 -> can go wrong with large file transfers. And
that's why AWS recommends to use a multi part
5806.56 -> upload for all files over 100 megabytes. And
let's look at what that actually is. Again,
5812.08 -> it's a very, very simple concept. We've got
our file over here, our file gets split into
5818.18 -> multiple parts. And it gets put back into
the big beautiful file the same file it was
5823.179 -> in the beginning. And then since the object
storage, why do I love this so much? Why is
5827.5 -> this so great? Because let's say from the
top to the bottom, you've got four file parts,
5832.39 -> let's say file, part three, which is the second
one from the bottom gets lost in transmission.
5838.58 -> By doing so, we don't have to retransmit the
entire file, we only transmit file part three,
5844.219 -> which was the final part that was lost, making
our transfers more reliable and more efficient.
5848.75 -> And that's why we use multi part uploads for
all files that are greater, or uploads that
5854.12 -> are greater than one that are greater than
or greater than 100 megabyte. Making sure
5861.409 -> we don't have network transfer problem.
5866.29 -> So let's talk about the last one, which is
cross region replication.
5872.54 -> When we're dealing with cross region replication,
what we're doing is we're taking our data
5876.06 -> stored in one region, which again, is just
a large, large geography and replicating it
5880.66 -> to another one. Why would we want to do this?
Well, if I'm in the US East region, and I
5888.54 -> replicate to US West, well, guess what? Guess
what? Then, if US East dies, I still have
5897.409 -> US West. But what else are we talking about?
When we're dealing with with cross regional
5904.929 -> charges inside of the cloud provider, they
charge you to send your data across regions.
5910.71 -> And let's say you had some object storage,
it might be cheaper to keep your object storage
5915.099 -> replicated in two different environments,
then it would be to pay all those intermediate
5919.139 -> charges. Again, this is 100%, based upon the
use of your data, the specific use case and
5925.39 -> where your users are accessing thing. But
cross region replication gives us goods and
5930.679 -> disaster recovery abilities. But it might
be cheaper if we're dealing with a lot of
5934.739 -> interdepartmental chat transfers. And if we're
dealing with, you know, users in Japan, and
5940.409 -> then users in New York City, by replicating
the regions, the information from regional
5945.44 -> button one to region to the US and Japan are
gonna get fast, low latency access, because
5950.53 -> they're not going to be traversing the entire
AWS global network to get it, they're gonna
5954.47 -> go to something in Japan. Likewise, the people
in New York or New Jersey could go to the
5959 -> bucket and region that's closest to them.
So that's why we're dealing with this. So
5963.28 -> we talked a little bit about storage area
networks. We're going to talk more about storage
5968.58 -> area networks today. Get into instant storage
and block storage and all kinds of cool, exciting
5975.75 -> stuff. So now we're going to talk about instant
storage. So what is instant storage? Well,
5982.119 -> if you've got a virtual machine or a server,
it's the storage that's sitting inside your
5987.21 -> server. Now, here's the thing. It's fast,
real fast, real fast, real fast, fast, fast,
5998.639 -> fast, fast, fast. How fast is instant storage?
Well, let's put it into context, we're going
6005.6 -> to be dealing with EBS block stores, the fastest
storage volume you can get is a quarter of
6010.79 -> a million IPs. Now you can go to Best Buy
for about 100 bucks, and buy a Samsung 90
6017.03 -> Pro, which gives you about a million IPs,
which is four times the fastest block storage.
6022.08 -> Now when you're dealing with instant storage,
what you're dealing with as a RAID array is
6026.429 -> typically eight of these drives in a raid
environment. So you might have 678 million
6032.119 -> UPS just sitting inside the server. So instant
storage and fast, fast, fast fast. Were box
6039.639 -> storage is slow, slow, slow, slow, slow. So
why don't we use instant storage, instant
6046.96 -> storage. And here's the thing. The thing is
as follows. Whenever you store an instance,
6055.71 -> storage is deleted upon instance, termination.
So unlike your data center, where you store
6061.389 -> your stuff, and the NVMe Raiders that are
sitting inside of your servers in the cloud,
6067.08 -> every time you read, you delete your system,
it's all gone and you lose everything. So
6070.909 -> this makes it not feasible. So that's why
we need to get really, really, really through
6076.5 -> what we're talking about here. So let's talk
about elastic block storage. What is block
6085.07 -> storage, block storage, it's the same block
storage, it's been around for 20 years, in
6089.79 -> every data center in the world, nothing new.
Why do we use block storage as we talked about
6095.52 -> before decouples, your servers and your storage
environments. And by doing so it means that
6102.659 -> the data centers can scale easy. Now we're
gonna melt block storage in our devices. And
6109.099 -> remember, block storage is slow regardless
of what's taught in your certification course,
6112.71 -> it's going to act like a virtual hard drive.
So what are we going to use it we're going
6116.871 -> to be sticking it on our virtual machines
which otherwise called an AWS EC two instances,
6121.389 -> Azure calls them virtual machines. Google
calls them Compute Engine instances, it's
6126.199 -> identical technology is all calls for the
most part of the same thing. Network in a
6129.849 -> data center has been virtualized, when they
have new names for the same technologies.
6136.119 -> So block storage is scalable, real scalable,
and it's not deleted upon its termination.
6142.239 -> And this is high availability, storage, high
availability, storage. And what we're talking
6147.12 -> about this is, is 99.999% available, which
means it's there when you need it, except
6154.429 -> for about five minutes, and 15 seconds per
year. It's relatively good High Availability
6159.54 -> Storage, having said that, no cloud providers
been 99.99% available for the last couple
6164.989 -> of years. So it's really not going to be anything
that's that high availability and practical
6170.17 -> purposes. But according to the exam is 99.99%
available with teqsa. Now, on your exam, you
6179.179 -> can think of block storage was AWS Lexis took
the term elastic before and they call it elastic
6183.98 -> block storage, they'll sell it's free, or
for high throughput and high transaction workloads,
6188.909 -> it's the best you can do on the cloud. And
we're gonna teach how to work around the weaknesses
6192.119 -> of block storage too, because it's so critical.
With block storage, you're gonna get multiple
6197.41 -> performance options are slow, but compared
to datacenter technology, but some are slower
6203.219 -> than others. And some are cheaper than others,
and some are more expensive than others. So
6208.92 -> basically, block storage is going to be associated
with a single availability zone or data center.
6214.2 -> And basically, realistically speaking, it's
going to be backed up to another availability
6218.33 -> zone or data center. So that's good news.
What's in one data center will be copied automatically
6222.56 -> to another data center. That was also very,
very, very cool. Is the way your back your
6231.19 -> your block storage is automatically going
to be backed up in terms of snapshot bias
6235.84 -> is this so cool, it will be transferred to
object storage. Whoa. So your block storage
6243.27 -> automatically gets sent into s3 or s3 glacier
wherever you want to pop it. And now wow.
6250.06 -> If something happens to your systems, you've
got another one. Now these EBS volume snapshots
6256.28 -> are truly truly amazing. Because it's not
like you ran backup software, you backed up
6261.73 -> backed up and backed up stuff. Okay? That's
not what we're actually talking about. It's
6267.239 -> a full system image, like a ghost image, or
system image that can literally be rebooted,
6274.98 -> which can be just relaunched, and then poof,
a virtual machine will come up with the identical
6281.35 -> hard drive, and everything else you need.
So AWS gives you some of the most brilliant
6287.8 -> and beautiful backups all the other cloud
providers do too. But this is simple and elegant
6292.119 -> and typically speaking about 1000 times better
than most organizations and enterprises backup
6298.969 -> strategy. So love So how do you choose your
EDB? ES file types? Well, it's going to be
6306.13 -> your performance requirements. And your performance
can be trained as both latency and throughput.
6312.67 -> And they're not the same. So latency is going
to be measured in input operation and output
6319.239 -> operations per second. What does that mean?
How many times can you read write to disk
6322.34 -> read write, read, write, read write, the higher
the number of Read Write activities you can
6326.181 -> do per second, the lower the latency, by comparison
is throughput, which is how much stuff can
6332.79 -> you move per second, I like to use vehicles
to explain the difference between latency
6337.75 -> and throughput. So let's say I'm here, and
I want to take a car full of cat toys from
6348.159 -> Palm Beach, Florida, to New York City. So
I get in my car, I start my car full of cat
6355.639 -> toys. You know, my car is let's call it a
sports car. It's not it's an SUV, but it's
6361.79 -> a high performance SUV. So let's say I shove
my SUV full of cat toys. And they get to New
6366.739 -> York City. Now the reality is, it's in New
York City, I can drive my car probably at
6372.77 -> 100 miles an hour before the police stopped
me between Palm Beach and New York City. And
6378.139 -> I'm gonna get there relatively fast. My car
is designed to be driven in the left lane
6381.489 -> and the Autobahn where there's no speed limit.
But let's say I wanted to drive between Palm
6385.599 -> Beach and New York and I could average 100
miles an hour. The latency to get to New York
6390.62 -> is going to be lower. Now by comparison, let's
say that my buddy owns a tractor trailer.
6396.73 -> And he sells this tractor trailer full of
cat toys. Now he drives that tractor trailer
6401.71 -> at 70 miles an hour between Palm Beach in
New York City. When that tractor gets trailer
6406.83 -> gets to New York City, look at the stuff that
occurred every cat in New York, and New Jersey
6412.489 -> is going to be having a party time with their
cat toys versus my SUV that may take care
6417.56 -> of you know, a couple of cats in Brooklyn,
or Manhattan, you know, the throughput is
6422.54 -> greater in the tractor trailer. The latency
of the car is faster. So now you know what
6428.8 -> latency is the speed that you can do something
in terms of input output per second, how fast
6433.849 -> can you get somewhere versus throughput is
how much stuff. So input an output operations
6438.87 -> per second, which is inversely correlated
with latency is going to be measured in IO
6443.179 -> PS. And throughput is going to be measured
in the amount of stuff you can move. And that's
6448.949 -> going to be in gigabits per second or terabits
per second or megabits per second. So when
6455.21 -> we go through these things, we're going to
talk about latency and throughput.
6460.81 -> Now the fastest fastest block storage you
can get an AWS is EBS provision, IO PS is
6467.58 -> called IO two. This is their highest performance,
SSD storage. They consider it the lowest latency
6474.56 -> and it's designed for workloads that require
high input and output operations. They'll
6478.719 -> tell you, it's good for large databases, they'll
tell you it's good for applications requiring
6482.33 -> low latency. And they'll tell you it's good
for 4000 megabit per second, which is decent
6486.679 -> throughput actually. And a quarter of a million
IPs, this is acceptable. Now, this is nothing
6493.14 -> like you can get in your own private cloud,
like with any Nutanix cloud, for example,
6497.409 -> where you're running all of this stuff, all
of this stuff. And in these particular environments,
6507.91 -> that's what we're talking about. So, you know,
quarter million OPI is not very fast, but
6515.38 -> relatively quickly, you know, it's going to
be a problem in many business applications,
6519.6 -> because it's still too slow. And that's what
we're going to talk about raid rate is not
6523.659 -> covered in the Certified Solution Architect
Associate, but you need to know it for real
6527.21 -> life is also covered in the Certified Solution
Architect Professional. So we're going to
6531.31 -> be explaining that to you when the time comes.
So this is the fastest fastest fastest, it
6537.96 -> might be a few $1,000 per month to get this
in mind, he was going to be slower than $150
6542.869 -> drive, you could buy a best buy like a Samsung.
Now, by comparison, the old fastest drives
6550.91 -> that we can use EBS volumes, it's about two
years old, with the EP DS provision IO one
6556.76 -> devices. And that's going to be you know,
relatively high performance. I say that you
6561.97 -> know with cringing, SSD storage is designed
for low latency. It's designed for workloads
6567.679 -> requiring high input and output operations
per second, like databases and applications
6572.33 -> that require low latency look. The max you
can get here is 16,000 io PS, which is nothing.
6578.489 -> But it's the second fastest block storage
you can get on the cloud. The throughput on
6582.58 -> this thing is acceptable at 1000 megabits
per second look, that's not going to be problematic
6586.9 -> for most applications, but you're gonna have
massive problems when you're dealing with
6591.96 -> low latency in these environments. Now let's
talk about general purpose SSD. Instead of
6600.1 -> These other drives which are based upon non
volatile NVMe drives, this is going to be
6604.989 -> based on traditional SSD storage. Now, when
you're dealing with SSD storage, you get decent
6611.64 -> throughput, you get much lower latency, which
means higher i o PS, then magnetic storage,
6617.11 -> but much lower than you're gonna get from
NVMe. Moderate throughput, like 250 megabits
6623.08 -> per second, which is what you get a little
better than a standard magnetic hard drive.
6626.95 -> This is fine for a transactional workload.
It's good for development and test environment
6633.1 -> because it's cheap. And it's relatively low
latency, we can call it that. And now we can
6641.36 -> get into our magnetic storage options. Now,
this is an interesting one. We've got EBS
6648.85 -> throughput, optimized hard drive, relatively
low cost magnetic storage, because it's magnetic,
6653.739 -> it's going to be high latency, which means
low IO POS. Now, the throughput on these things
6659.34 -> isn't bad. 500 megabits per second, which
is right up there with the standard SSD drive.
6665.74 -> Because these are obviously sitting in RAID
arrays. So this is really good for frequently
6669.929 -> accessed workload or throughput intensive
application like video, for example. It's
6675.02 -> great, great, great when it comes to through
credit, intensive workloads, like a video
6679.349 -> editor will use transferring large video files,
great for large log storage, great for sequential
6686.04 -> reads and writes. So kind of keep that kind
of keep that in the back of your mind. And
6693.19 -> then the next option is EBS, cold storage,
which is going to be your lowest option, low
6699.639 -> IPS low throughput to under 50 megabit per
second. And it's going to be used for workloads
6705.969 -> that are not accessed frequently. And because
I told you right now look, what are you going
6712.1 -> to do when you have a business application
that requires 2 million IPS on the cloud?
6718.949 -> Well, you don't get high disk performance
on the cloud. So the only way you can work
6724.849 -> around it is either use a private cloud, like
OpenStack or Nutanix. In your data center
6729.409 -> for your high performance latency sensitive
applications, use the public cloud for non
6733.33 -> latency applications. Or if you're going to
be on the public cloud, no big deal use rate.
6738.87 -> So we're gonna do a brief and for a brief,
brief introduction of RAID. And then from
6746.489 -> there, you know, where are we going to go,
we're gonna go into things. So what is RAID?
6753.23 -> RAID, a Redundant Array of Inexpensive Disks
is really a means to combine multiple hard
6757.739 -> drives into a single hard drive for multiple
performance. And is there still going to be
6763.639 -> separate drives, we're going to take separate
physical devices and logically associate them
6767.389 -> as a single device. On the cloud, everything's
virtual, we're going to virtual box stores,
6771.8 -> and we're going to combine them in the same
way. So there's going to be multiple, multiple
6777.74 -> performance options. For redundancy, there's
going to be four main raid types that the
6782.91 -> entire world uses. Now, we're going to be
dealing with 01 and 10 on the cloud, not raid
6789.67 -> five. But if you're a cloud architect, or
a cloud engineer, and you're going to be moving
6794.29 -> stuff, from the data center to the cloud,
you better know what raid five is, because
6798.05 -> it's used everywhere. The only reason we can't
use RAID five in the cloud is because the
6802.17 -> Cloud Storage is so bad. In terms of performance
with regards to latency, you can't deal with
6808.01 -> the additional latency overhead of RAID five,
but widely used in the enterprise. So let's
6813.949 -> talk about raid zero. raid zero is called
striping. And I'm gonna say what that looks
6820.489 -> like. But basically, you're gonna be taking
your data into multiple hard drives, right
6825.349 -> 1234512345. And by doing it, your load balancing
the load across multiple drives. When you
6831.54 -> load balance, you get lots and lots and lots
of speed. Lots and lots and lots of speed.
6838.98 -> Because of that, you're there. So when you
do this, you get no fault tolerance either
6843.56 -> because if one of the drives in your RAID
array fails, you lose everything, everything,
6848.94 -> everything. So no fault tolerance, but it's
good when ultrafast speed is needed. But if
6855.099 -> you're going to use raid zero, backup, backup,
backup, and backups more, so what's it going
6860.79 -> to look like? It's going to look like as follows,
store your data from block one on one, drive
6866.54 -> one block to in the next drive, block three
on one, drive block four. By doing this, you're
6870.26 -> gonna get twice the throughput and lower latency.
So great way to accomplish around this. You've
6877.22 -> got four quarter million I draw io PS drives
in the cloud, not that will eat you equal
6883.349 -> to what you can get from that $150 drive at
Best Buy. Now, of course it might cost you
6888.02 -> $30,000 on the cloud to equal the performance
of $150 drive from Best Buy, but you can still
6893.449 -> do it. Like I said, it's all about knowing
as an architect, where do you put your stuff?
6899.44 -> How do you work? To check for maximum performance
at the lowest cost and what drives that, the
6904.409 -> business requirements, nothing else. So business
acumen is so critical for the Cloud Architect.
6911.079 -> So let's talk about raid zero in the cloud
computing environment, it's a little less
6915.53 -> bad than the normal environment. And here's
why. In the normal environment, if one drive
6919.68 -> fails, you're done. But you got to remember,
these aren't actually physical drives their
6924.75 -> virtual drive their high availability, so
they could be a little better. raid zero was
6929.389 -> generally too risky for the enterprise unless
we're gonna get into return assumption as
6934.5 -> temporary storage video editors use raid zero
all the time. When I used to edit my own videos,
6939.179 -> I had my own RAID array that was raid zero,
and I backed up to a raid five RAID array.
6945.57 -> Good news is we can backup a raid zero into
a single availability zone. And because they're
6950.829 -> logical runs, it's less risky, but still,
it's too risky for us for production environments.
6955.48 -> Now, this gets us into raid one, which is
going to get us into some really cool availability.
6961.9 -> And it's the secret to raid 10, which is coming
up. Now raid one is disk mirroring, Let's
6967.429 -> marry two hard drives in the system. Whenever
it gets written a hard drive one gets immediately
6972.25 -> copied to hard drive to and that way if harddrive
one fails, you just break the mirror and use
6976.8 -> the other hard drive is brilliant in terms
of redundancy, but it's slow. It's expensive,
6981.619 -> and it has low capacity. And here's what I
mean by this normally, in raid zero, you've
6984.961 -> got four two terabyte hard drives, guess what
do you have tuck capacity? Eight. Here, you've
6989.79 -> got two four terabyte hard drives, what do
you got capacity wise for? Because you're
6993.969 -> getting one and it's backing up to the other.
And that's it. So what's this look like visually
6999.74 -> and architecturally, you've got two drives
hard drive one and hard drive to hear all
7004.719 -> the data from hard drive one is exactly mirrored
and copy to hard drive two. I've got no throughput
7009.77 -> benefits, no latency benefits, and no storage
increases. But I've got brilliant high levels
7016.04 -> of availability. Now let's talk about raid
five. RAID five is really the best of both
7023.87 -> worlds. You can't do it on AWS, because the
storage is so slow, they won't let you raid
7028.79 -> five gives you speed and redundancy done.
RAID five is considered striping with parity.
7036.139 -> And it's high speed and it's highly redundant.
It's used by 90% 99% of all enterprises, some
7041.75 -> form of RAID 50, raid 60, or even raid five.
What does this look like? Here you go.
7050.13 -> We've got our block with let's say we split
it amongst four drives. If we've got four
7054.54 -> four terabyte drives, we get 12 terabytes
of total capacity, because what's going on
7059.13 -> is as follows. We lose one drive to redundancy
data. So here we go. In this environment,
7065.81 -> we basically copy block one to drive one,
block two to drive to block three to drive
7070.06 -> three, and we put backup apparently data on
drive for the next time we write our data
7074.88 -> to block one on our drive one, block two and
harddrive two now we put our backup data on
7079.099 -> the drive drive three here. And then we store
data on hard drive for now the next time for
7083.86 -> example, we put our data on drive one, backup
data in drive two data on drive three data
7092.909 -> on try four, and so much and so forth. So
you know, kind of keep that in the back of
7098.89 -> your mind raid five, speed and redundancy.
But here's the problem with raid five, the
7104.48 -> act of writing this backup data and can increase
latency. And because we're dealing with block
7109.79 -> storage, which is so so so slow, guess what
we're dealing with, it's not even allowed
7114.54 -> on the AWS cloud. So block raid zero is fast,
and gives us everything we need. But But redundancy.
7123.659 -> RAID one gives us all the redundancy in the
world. But no speed. Hmm, what if we blended
7129.679 -> them together? And that's raid 10. So really
raid 10 is a combination between raid zero,
7137.739 -> and raid one, in which case we'll create a
RAID array. That's raid zero for speed, a
7144.11 -> backup RAID array for speed and copy RAID
array one two right away to let's be fair,
7150.42 -> we lose RAID array one, guess what? We're
good on RAID arrays, 23456 and everything
7156.13 -> else. So we're going on the other drive. So
let's make sure we get this clearly. So I'll
7159.78 -> show you what it looks like. Here we've got
two RAID arrays. The first case we're combining
7164.32 -> raid 02 drives back and forth fast so fast.
raid zero on the other ones that copies from
7172.599 -> copies from raid zero raid one to raid zero
array to anything happens with our first RAID
7177.179 -> array. No worry about it, no big deal. We're
good to go. Why are we good to go? You're
7182.38 -> going to be on the second RAID array. And
that's why we're using RAID. I'm going to
7189.77 -> talk about a couple more file systems real
quickly. And then I'm going to get involved
7194.5 -> in answering some questions. So Let's talk
about the next thing. We'll talk about the
7202.98 -> elastic file system. What are we talking about
with regards to the elastic file system, nothing
7208.651 -> special other than NFS file system, meaning,
if any of you've been using Linux, or Unix
7215.04 -> storage environments for years file storage,
and you set up a network file system share,
7219.77 -> which was invented by Sun Microsystems own
30 years ago. That's what we're talking about
7224.989 -> that the same thing that AWS elastic file
system is, it's the AWS branded, fully managed
7232.02 -> version of Linux, Unix storage, that's it.
And of course, with this, we have the same
7238.489 -> kind of versions, like we do with any other
kind of storage, where we've got the standard,
7243.02 -> which is the highest performance option, and
frequent access, which is stuff where you're
7247.04 -> not going to access it frequently, but you
have to pay for it. When you retrieve it,
7250.48 -> we'll have our two options, which is burstable.
Here's what burstable means you've got access
7255.85 -> to this, but you can temporarily increase
your speed. Or guess what, you know, provision
7261.65 -> throughput, which is you say, I need this
and you pay for it ahead of time, and it's
7264.889 -> guaranteed to you, again, no different than
Frame Relay, with a committed information
7269.79 -> rate and a burst rate from 25 years ago, same
kind of thing we're talking about. Now, what's
7276.69 -> good about is the elastic file system is it's
like NFS, right? So it's post a composer is
7282.639 -> compatible, and it will work with your legacy
systems. It's considered high throughput,
7287.52 -> high OP is low latency. One thing that I really
love about the elastic file system versus
7293.42 -> building your own file store, file server
is it expands if needed. So normally, from
7300.91 -> an architecture perspective, you're planning
how much storage you think you need 10 years
7305.03 -> from now, five years from now, or three years
from now how long you're going to keep your
7308.699 -> systems, then you usually double it. When
you figure you have a good dose. I'm exaggerating
7313.159 -> the concept, but it's something like that.
It's, it's what's called the swag a scientific
7317.119 -> world something does. Now here, here's where
the cloud shines, the elastic file system
7323.929 -> will grow on demand. So we'll automatically
adjust size and capacity, I gotta tell you,
7330.23 -> for the people that do capacity planning and
systems administration, this is a huge, huge,
7334.372 -> huge thing, they'll be incredibly helpful.
Here's what it looks like. We use the elastic
7342.739 -> file system. So you can take your easy two
instances that are running Linux, for example,
7347.699 -> and mount them to an NFS SharePoint in a fully
managed environment by AWS, just like you
7354.02 -> would do in the data center. But here you
don't have to matter. Now, we talked about
7360.699 -> file services for for Linux, right. So what
do you think the next is file services for
7365.929 -> Windows? Now, if you wanted to deal with file
service for Windows, you could deal with a
7370.389 -> Samba share on a Linux system? Or you could
use Windows servers, Windows servers. So let's
7378.969 -> talk about Windows Server. When you're dealing
with Windows servers, you're dealing with
7383.81 -> a fully managed high availability Windows
file system. Okay? Why is it because they're
7390.699 -> Windows servers that AWS manages for you.
And because they're Windows servers, they
7395.349 -> use the Server Message Block protocol, which
means they're hosted on Windows servers. So
7401.31 -> because their Windows servers offering window
shares, you can get all those windows system
7405.719 -> features like quotas and Active Directory.
file systems window also provides encryption
7410.869 -> in transit and arrest. And what does this
really look like? It looks like this. Basically
7417.36 -> speaking, you've got your server. You create
your file system, you configure your file
7424.14 -> shares, you connect your file shares. And
that's it, you run your applications simple,
7431.13 -> simple and effective. While we're at it, let's
get to the point where we talk about Amazon
7438.71 -> FSX FSX for lustre. So now let's say you needed
a higher performance file system. Because
7445.99 -> block storage isn't good enough for you. For
some high performance computing, this is where
7451.04 -> we get into the Amazon FSX for lustre, where
you can get millions of IO PS and 100 gigs
7457.29 -> per second throughput, bi directional synchronization,
we can synchronize our data with multiple
7464.14 -> s3 buckets, for example. And this enables
some truly high performance transfers via
7469.95 -> multiple threads. Now we're gonna get back
to the training. So you'll recall yesterday
7475.64 -> we talked about the cloud and how it was organized,
and the type of connectivity we use to connect
7481.949 -> to the cloud. And we talked about storage
on the cloud. Now today, we're going to begin
7488.219 -> by telling you how do you get your stuff your
data to AWS? So realistically speaking, how
7495.8 -> are you going to get your data to AWS depends
on your options. If you've got a high speed
7501.71 -> link to you, and AWS like 100 Gig link, and
you don't have that much data or a 10 gig
7507.21 -> link, pretty easy, just send your data over
the wire, no big deal. But, you know, in most
7515.86 -> in some cases, that's not practical. There's
ways where we can send it over the network,
7520.71 -> which I talked about, which is a manual transfer.
There's ways where we can send the data over
7525.409 -> the network to the cloud over a more automated
transfer. And of course, the transfer appliances,
7530.199 -> we can talk about to get our data there, if
we lack network bandwidth, or we lack time,
7534.989 -> so we're going to tell you how to do all three
starting now. Now, when it comes to sending
7539.909 -> data to AWS, the first, you know, AWS officially
supported method is to use something called
7545.239 -> the storage gateway, I love the storage gateway
concept, because here's what it is. Effectively,
7552.3 -> you've got AWS, which sits over here, you've
got a specific virtual machine that you put
7557.79 -> in your data center. That data center becomes
a server, you connect all your devices to
7563.41 -> this server, and I'll show you graphically
what those going to look like. And then your
7566.619 -> data is just asynchronously copied on the
cloud, put a file server in your data center,
7571.63 -> it magically gets copied to the cloud. Now
what is this the storage gateway that AWS
7578.8 -> provides, it's just a simple virtual machine.
You pop it in your one of your VMware servers
7584.54 -> and your Microsoft Hyper V servers. And it's
an AWS manage virtual server. And basically,
7592.349 -> what you do is you mount the server, and I'll
tell you how you do it. And it just moves
7596.54 -> your stuff to the cloud asynchronously, dynamically
and beautifully. It's very, very simple. Now,
7601.809 -> if an organization has a hybrid cloud, which
is a data center connected to the cloud, the
7607.27 -> storage gate will keep the data synchronizes
magic. But if an organization wants to migrate
7613.7 -> their stuff to the cloud, they can also use
a storage gateway, copy all their stuff over
7618.1 -> and then launch their virtual machines in
the cloud. OK, three, they're up and running
7622.71 -> like nothing. So we're going to talk about
storage gateways. We're going to talk about
7628.67 -> the types of storage gateways. We're going
to talk about how they work and why organizations
7633.94 -> would use them. So the first kind of gateway,
we'll be talking about VIOME file gateways,
7640.15 -> VIOME, gateways and stored mode VIOME, gateways
and cache mode.
7645.559 -> And realistically speaking, there's also something
called a tape gateway. I don't know if you
7650.869 -> must have you hopefully not as old as me who
has been working in chuck for many decades,
7654.369 -> I have, where we started out by basically
putting these tapes and we use backup to a
7659.1 -> tape. And then the tapes got bigger and bigger
and bigger, as many organizations still have
7665.309 -> a tape gateway, which basically speaking,
we can get rid of that, we can create a virtual
7669.639 -> tape gateway. And we can backup and archive
like we used to using virtual tapes of tape
7673.889 -> backup machines, which we'll talk about. So
we'll talk about file gateways, VIOME, gateways
7678.139 -> and stored mode cache mode, as well as off
the ticket. So let's begin with the storage
7685.619 -> gateway, specifically, the file gateway, it's
a very, very simple, elegant solution. Let
7691.79 -> me show you what's really going on. In this
particular mile environment, what you have
7696.79 -> is you've got your servers. So we have them
the left side of the screen replicate representative
7701.46 -> application servers. Now we stick this AWS
virtual machine in either a Windows server
7707.969 -> using Hyper V or VMware ESXi server. And we
met, we basically use the Server Message Block
7714.65 -> or an NFS Share to the storage gateway, which
is represented by red. And then that storage
7722.349 -> gateway is going to use a direct connection
or your VPN connection, whatever when I'm
7725.59 -> done with you have, and it's going to directly
send your data to s3. And from there, you
7731.52 -> can have a lifecycle policy with your data
like we did where it stays on s3, then it
7735.98 -> moves to infrequent access. And it goes to
Glacier, we can keep it on s3. So very simple.
7741.44 -> Takes your stuff in your data center. You
mount a virtual machine just like it's any
7745.77 -> other file server in the world. And asynchronously
your data gets copied back to AWS simple,
7752.6 -> effective, elegant, very, very basic, very,
very simple. No, there are ways to truly optimize
7762.78 -> this. What if an organization really has a
hybrid cloud. And they want to use their data
7768.739 -> center for the majority of their computing,
because it's cheaper to operate the computers
7772.32 -> you own than it is to operate stuff on a cloud
where the cloud gives you more agility and
7778.87 -> enables you to design potentially cheaper
and we'll talk about that when we talk about
7782.929 -> auto scaling. But the best performance you're
ever going to have is in your data center
7787.431 -> because there's no latency. The cheapest cost
is going to be for the hardware that you typically
7793.19 -> have. So for organizations that have a higher
than one a real high availability call them
7797.54 -> and they are they have their own cloud and
they connect to one or two The public cloud.
7801.92 -> Now you're talking about VIOME gateways and
store matter why? Because the organization
7806.369 -> keeps most of their data in the data center.
And they're using the cloud either for bursting,
7810.77 -> which means added additional capacity. They're
using the cloud for what it's really good
7814.65 -> for, which is hosting, say, web applications
that dynamically scale on demand. Are they
7819.869 -> using the cloud for backup purposes like disaster
recovery purpose, and this is where the VIOME
7824.3 -> get restored mode comes in. But this machine
in our data center, everything gets backed
7830.81 -> up on to s3. And it's a beautiful, beautiful,
simple way to do it. Now the servers will
7837.73 -> connect via the I scuzzy protocol, basically,
an internet based scuzzy CL, it's because
7843.83 -> he took the attachment to the drives. And
it'll operate like any other type of storage
7849.34 -> area network. So basically, what is this gonna
look like? Now in this particular case, you
7855.219 -> could have your users, they're going to be
connecting to their stuff in your datacenter.
7862.21 -> And they'll be connecting to your application
servers, or whatever servers you have, your
7869.09 -> servers will have an ice cozy connection,
as you can see, between our application servers
7872.869 -> in orange, and this gateway virtual machine,
because operating restore mode, and then as
7878.96 -> data changes in our data center, you're gonna
see it's going to be pushed to Amazon s3 or
7884.809 -> snapshots. simple, elegant way, your data
is primarily in your data center, and you
7890.159 -> want to shift it and send it to the cloud,
beautiful, elegant and everybody. Now, what
7898.889 -> if you really had most of your stuff going
on in the data center, meaning the eight or
7904.56 -> I'm sorry, the cloud like AWS cloud, but you
still had some stuff in your data center,
7909.389 -> most of your data was stored in the cloud?
Well, there's a way to make this work to basically,
7915.889 -> you can keep your data center or your called
synchronized, while maintaining most of your
7920.309 -> data in the cloud. And bringing it back. Now
here's the first thing to remember, computers
7925.62 -> cannot mount object storage doesn't work.
We talked about all those reasons why yesterday,
7931.79 -> of swap files, and versioning, and lots and
lots and lots of challenges. So because of
7937.079 -> this, it's not like we can take our data center
servers, and mount them to object storage,
7942.19 -> or AWS s3, or Microsoft, Google's cloud stores
because the technology is not designed for
7947.39 -> them. But we can do this, we can store our
data into object storage on the cloud, which
7954.04 -> was nice and cheap. And create some little
virtual environment called the gateway that
7959.16 -> can then share it back to the systems in our
data center, and make it feel like it's real
7964.469 -> storage, not object storage. And that's where
this beautiful blind gateway cache mode comes
7969.389 -> in. And the VIOME gateway cache mode is designed
for organizations who predominantly keep their
7974.91 -> data in Amazon's object storage, otherwise
known as s3. And it's going to make the data
7980.05 -> steward stored on s3 feel like local storage
in the data center way this is going to work
7984.76 -> as a storage gateway virtual machine is going
to be installed. And I'll say what picture
7989.98 -> for this in a minute. And the data basically,
is going to be received and cached from s3.
7998.07 -> And by doing this, what are we really really
talking about, it's going to be pulled from
8002.83 -> s3, placed on this, the server that all your
devices mount to, and then you can pull information
8009.02 -> from the cloud and synchronize it. So let's
look at what this is going to look like architecturally.
8014.19 -> So imagine most of your data is on the right
side of this where it says Amazon s3, you
8019.461 -> can see the red data over here. And here in
our data center, we've got users that want
8024.19 -> to access the data. So basically put this
VIOME gateway in here. And the VIOME gateway
8030.099 -> connects us to the AWS Cloud for storage.
Now, when we pull data from the AWS cloud,
8035.8 -> out of s3, and it sits on our gateway virtual
machine, it's going to cache that data. And
8042.119 -> what do I mean by cache that data? So let's
say I was drawing a picture of my beautiful
8046.75 -> cat, Cindy, but my cat Cindy, I adopted her
theoretically, I was supposed to rescue her,
8051.56 -> but I think she rescued me by making me happier
after I adopted her. So anyway, so I picked
8056.42 -> up so so there's that. So kind of the way
you'd like to look at it is if I went into
8061.41 -> some pull my data from the cloud, and I wanted
to view a document of my cat, Cindy, who would
8067.619 -> be on the AWS cloud, sent to the Gateway virtual
machine, I will do my thing and it will be
8072.239 -> cached on the Gateway virtual machine. Now
my wife who really loves cats, decides she
8077.39 -> wants to look at the photo of Cindy. She's
gonna go straight to the Gateway virtual machine
8081.63 -> to access it, and it's going to be there for
me. So the data is not going to go back to
8086.48 -> the cloud. Now then my brother comes to my
house and he wants to look at photos of my
8090.88 -> beautiful cat Cindy. And again, he connects
to the Gateway virtual machine and the gateway
8095.591 -> virtual machine says I have it here and sends
it back. Now then, later that day, I want
8102.99 -> to look at a photo of Chris, his beautiful
orange cat, the Maine Coon Summit. And I go
8107.79 -> to the Gateway virtual machine, and it's not
there. It pulls it from AWS s3, stores that
8114.27 -> on that gateway virtual machine and sends
it to me. Now, Chris, from my team with the
8117.95 -> look of beautiful orange cat, sonny, he goes
to the Gateway virtual machine is there. So
8122.829 -> it's a lot like a content delivery network
concept. But for your data, your private data
8129.02 -> across your intranet versus the internet versus
web pages, but similar in content with regards
8134.119 -> to character. I'm aware that my pointer doesn't
show on screen I wish it really does. Because
8140.59 -> I tried to move my mouse, it just does not
show up with our broadcasting stuff. So the
8146.469 -> last thing I want to draw is really a tape
gateway. While we're at it, let's add, let's
8152.739 -> add a slide, we'll do it together. So what
is really going on here with the tape gateway?
8158.76 -> Well, it's pretty simple. What we have over
here is AWS object storage.
8166.21 -> And what we then have is, we've got the we've
got our data center. And most and a lot of
8176.91 -> data centers have this virtual tape machine,
where it's basically it's a tape to tape backup
8182.37 -> drive. And usually the way this works, the
AC backup. Typically what happens is we've
8192.62 -> got some user admin when they're doing the
backup, they're popping in these backup tapes
8197.2 -> to pop it in the back of tapes, and they're
shipping them off site. Now what happened
8201.32 -> is AWS came up with a virtual tape. And basically,
it's instead of being a physical tape that
8207.08 -> goes James, it says Virtual Tape. terrible
sound, so they put it in this virtual tape.
8217.849 -> And what happens the tape backup drive thinks
it's connecting to a tape, but it's literally
8222.42 -> a virtual tape. And then the virtual tape
will send it over your network directly to
8228.46 -> AWS, you have direct connection to AWS object
storage. And there you go. That's your virtual
8233.8 -> tape gateway. So those are the ways that we
can send our data over the network to AWS.
8242.639 -> Of course, we could put an FTP server or secure
FTP server in the cloud, you just place it
8247.28 -> there like we would in any other data center.
But these are the AWS you know, manage simple,
8252.16 -> elegant ways to do it. But what if you don't
have enough time? What if you don't have enough
8259.019 -> bandwidth, you need to get your stuff to the
cloud faster. Now we're getting into other
8264.01 -> options. The first option we're going to deal
with is something called the snowball. I love
8270.309 -> the snowball idea I really do. What is this
snowball? It is ruggedized computer, and in
8277.979 -> the ruggedized computer, and you can see pictures
of it in our book. They basically ship you
8282.519 -> a computer with a bunch of hard drive in a
RAID array. You plug this computer into your
8287.45 -> network over the 10 Gig network connections.
You copy your data to the snowball, copy,
8293.32 -> copy, copy. And then you ship the snowball
back to AWS. And they pop it on your object
8301.599 -> storage. No, when you copy it there, it's
encrypted. And it's very simple. You request
8308.26 -> a snowball from AWS. They deliver you the
snowball. You load data on the snowball, calm
8315.479 -> and pick it up and ship it back to them. And
then AWS take the data off of the device,
8322.03 -> puts it on your object storage platform, and
then securely erases that device for the next
8328.599 -> customer. And yes, they know how to securely
erase the device for the next customer. That's
8332.559 -> how the snowball works. And it's a nice, simple,
elegant solution.
8340.28 -> Now what if you needed to move a lot more?
So instead of shipping this ruggedized computer?
8346.399 -> What if you needed a whole shipping container?
So now we're dealing with the snowball bill,
8352.42 -> really, really cool concept. The snowmobile
is basically a data center on wheels, is this
8358.439 -> 45 foot shipping container, fill the storage
storage on more storage. And what happens
8365.51 -> is this data center gets driven to you have
tractor trailer connected snowmobile to your
8372.91 -> your network, copy all your data on and then
the snowmobile is driven back to AWS. They
8379.849 -> copy it onto your object storage, otherwise
known as your s3. And guess what? It's done.
8388.219 -> Well, let's talk about some of this a little
more realistic for the average user. Let's
8392.68 -> say you've got a small amount of data like
15 terabytes. In this particular environment,
8398.43 -> you could use just the very simple AWS Import
Export service, what is that Tarantal hard
8404.86 -> drive from AWS, copy your data to the rental
hard drive, ship the hard drive, and then
8410.1 -> they take it off. So again, you know, this
is where we're getting the nice and simple
8413.53 -> and elegant. Put your data on a hard drive,
ship it to AWS, they loaded for you, and you're
8421.93 -> good to go. Very simple. So, before we get
into computing, which we're going to have
8428.72 -> a lot of fun with. And we're going to even
show you under the hood, what's going on,
8432.96 -> because I want you guys to truly experience
it. As opposed to just seeing a lecture. We're
8438.58 -> going to talk about Amazon work docs, which
is the last key component of storage I need
8443.71 -> to do us. So if any of you have ever used
something like Dropbox before, or Google Drive
8450.39 -> before, a consumer oriented collaboration
toolset, that's what Amazon own work DOCSIS.
8456.8 -> It's a fully managed secure content creation,
storage and collaboration service, just like
8462.27 -> Google Drive or Dropbox. It enables collaboration
on creative projects, shared document editing,
8467.41 -> it's simple and affordable. And you can access
it via web client for specific client software
8474.21 -> for Windows and Mac operating systems. And
of course, it means you know, traditional
8478.319 -> security standards like HIPAA, PCI DSS and
ISO requirements. So, so far, we've covered
8485.31 -> storage. And in this bootcamp, we've covered
block storage, object storage, file storage,
8490.43 -> covered the AWS branded s3, EBS, we've talked
about raid the elastic file system slash NFS.
8497.93 -> File System for Windows, we talked about storage
gateways, the snowball, the snowmobile, and
8502.02 -> the import expert service, and work docs.
Now we're gonna get into compute next, which
8507.5 -> is one of my favorite parts.
8510.25 -> So now let's start talking about computing
upon the AWS cloud.
8519.52 -> And before we do this, I want to explain exactly
what's going on. I want to make sure you all
8526.77 -> truly understand what are virtual machines,
because if you don't understand virtual machines,
8535.56 -> all this stuff is basically going to all be
for naught. So I'm going to give you a visual
8540.93 -> description of a virtual machine, using one
of my favorite things in the world. I got
8546.01 -> Cindy. And then after we deal with this visual
description I'm going to give you, I'm going
8549.982 -> to bring you to one of our data center servers,
we're going to teach you how to create one
8556.31 -> in real life the hard way, so you get to see
it in the data center. And then when we talk
8560.551 -> about this Elastic Compute Cloud, you'll be
able to define it in one sentence, it's a
8564.77 -> couple words long, you're gonna all know it.
So in 1999, VMware came up with the first
8574.47 -> x86 hypervisor. And then it created the first
virtual machine, it was the coolest thing
8581.191 -> in the world at the time. And what a virtual
machine really was, is we would take a server,
8587.56 -> chop that physical server up into many servers,
and then be able to create multiple servers
8593.3 -> on that single server. Now, when I started
in tech, 25 years ago, this was not possible.
8599.77 -> And here's the reason the servers were slow.
They had a couple Meg's of RAM, maybe, and
8608.06 -> you know, that was a $20,000 device, one core,
or two one core CPUs, you know, a couple Meg's
8615.2 -> RAM, and that's 10 grand. Now on that, here's
what happened, we could only run one stuff
8620.88 -> on a server. And you know, every few years,
when computing power would double or so you'd
8625.67 -> be buying a new server because we were constantly
outgrowing our technology. Fast forward, you
8631.6 -> know, 25 years. Now we've got the servers
made by AMD, which can have a good 364 core
8637.899 -> CPUs in them, which gives us 192 cores, we
can pack these things with 610 terabytes of
8644.26 -> DRAM. Now that one server can power many servers.
So what happens is we're dealing with all
8650.54 -> clouds. And when we're dealing with AWS easy
to Azure virtual machines, Google Compute
8656.42 -> Engine instances, waracle virtual machines,
it's all the same technology. And basically,
8661.25 -> what makes this possible is as follows. We're
going to take a server, and I'm using my favorite
8668.33 -> technology demonstrators over here, and the
server is going to be represented by the physical
8673.29 -> hardware. And we're going to install this
very thin layer of software on the server
8679.64 -> called the hypervisor. Now the hypervisor
will let us take that server and create a
8684.6 -> bunch of mini servers all sitting inside this
server. Now, each Mini server will have its
8689.64 -> own operating system and its own applications
and their dependencies. So in this particular
8696.31 -> case, we've got three servers, server one
On is on the extreme left is my beautiful,
8703.16 -> sweet, adorable cat Cindy. She's running her
own application and she is in one of the virtual
8709.71 -> machines. Now on the same server, the same
physical device guess what we have? We have
8713.543 -> Chris, my chief operating officers fantastic
cat named Sonny, who's a beautiful orange,
8720.13 -> Maine Coon. And you can see she's in her own
virtual machine with her own operating system.
8724.59 -> Of course, she has the application. Now on
the right, we have this cat, which I named
8730.14 -> caddy. It's a Maine Coon black with green
eyes. It's a beautiful, beautiful cat. Now
8735.78 -> this cat comes to my house every single day
to go play with Cindy my cat. My cat Cindy
8740.24 -> is terrified of this beautiful Maine Coon
I don't know why even put out food for the
8744.5 -> Maine Coon because it's hungry a lot of the
times and it's sad. But my cat and her like
8748.899 -> each other. I don't know why. But you can
see this cat who I call a caddy is on her
8754.05 -> own virtual machine being on our own virtual
machine. Guess what, she is completely separated
8762.35 -> from Sonny the cat and Cindy the cat on the
same server. And that makes my cat Cindy happy.
8768.31 -> Because I don't know why Cindy doesn't like
caddy, I think she's a beautiful nameko. So
8773.66 -> that's what we're really talking about. But
let's take this conceptual drawing. And let's
8781.67 -> build a real virtual machine the hard way,
the datacenter way, and by doing it this way.
8787.9 -> Now, when you deal with any cloud provider,
you're gonna understand what is a virtual
8794.069 -> machine. So Chris, can you share my my web
browser you put the web browser on the screen.
8804.51 -> Okay, here we go, everyone, here you can see
my desktop. And right now I'm remoted into
8810.67 -> via a web browser, my one of my many VMware
servers that the students in the cloud architect
8816.79 -> Career Development Program use to really get
hands on experience real hardcore hands on
8821.24 -> experience, they build clouds on these things.
And the basis of all virtual machines is the
8826.14 -> following. In this particular case, we've
got a physical server. But tell me about the
8831.75 -> server, the Dell is a precision workstation,
which is basically a server. It's good Dell
8836.51 -> 7810, you can see it's got 24 CPU cores, you
can see that it's got two and the Xeon E 526
8845.07 -> 70. V threes, you can see that the system
has got a total of 128 gigabits around on
8851.49 -> the right hand side of this, you can see that
the total number of gigahertz in the system
8856.729 -> is 55 gigahertz. And you can see that we've
got this one terabyte of NVMe storage. Now
8863.319 -> when we're dealing with virtual machines,
all what we're really dealing with is as follows.
8868.97 -> We're really dealing with taking the server,
the hypervisor on the servers that VMware
8872.93 -> ESXi. And we create a virtual machine. And
we'll name the virtual machines. Let's call
8882.07 -> it Cindy's virtual machine. My cat is really
cute. And she'd like to get her hands involved
8887.14 -> in technology every day of the week. Unplugged
servers with their paws, great troubleshooting
8890.39 -> coach by the way, then we pick the operating
system we want. And then we give it some information
8898.46 -> about the operating system. In this case,
we'll use Windows 1064 bit, in case many of
8902.609 -> you haven't deployed service in your life,
I'm just gonna show you something real simple.
8906.15 -> And then the next thing we would do is in
the traditional data center environment, we're
8911.6 -> going to determine you know what we need,
okay, how many CPU cores are we going to use?
8916.09 -> How much memory does the virtual machine need?
How big is the hard drive we want to use.
8924.52 -> And then from there, we'll determine where
it's going to boot, we're going to boot it
8928.45 -> directly off of this ISO file, we're not going
to build the whole virtual machine, I just
8932.37 -> want you to get the conceptual knowledge over
here, we're going to make sure that we expose
8936.43 -> the operating system, the hardware, etc. And
this is basically the form basis of all easy
8941.81 -> to instances, Azure virtual machines. Now
you can see we just created this new computer.
8946.97 -> And if I click on this computer, wow, it's
going to boot up just like any other computer
8952.22 -> wait just like any other Windows computer
is going to press press any key to continue
8957.59 -> and will enable us to install it just like
it's any other physical computer. The only
8962.6 -> difference is I can have 20 of these things
sitting in my server, optimizing using space,
8970 -> power efficiency. And by doing it, guess what?
We're basically in a position where we can
8977.17 -> maximize our data centers. So this is what
we've been using for the last couple of decades.
8983.22 -> Grasping go back to me, we don't need to be
sharing any more of the screen. But I wanted
8989.46 -> everybody to understand under the hood, what
isn't easy children's. So now, let's go into
8996.35 -> the AWS related content. I want it to be meaningful
to you So AWS likes to call their virtual
9004.18 -> machines, Elastic Compute Cloud. I don't know
why they paid somebody in marketing somebody
9008.22 -> millions of dollars to come up with that name.
But so they call it now you know that Elastic
9013.021 -> Compute Cloud is nothing more than a virtual
machine. If you're interviewed by a CEO, a
9018.26 -> CTO or CIO, or any of these people, and they
say what's easy to you tell them it's a virtual
9022.47 -> machine, don't get rid of any of the sales
or marketing things, and they'll trust you.
9028.24 -> So when you're dealing with virtual machines,
and like Cloud, how do you size them. And
9032.821 -> the same way you do any other virtual machine.
So if you know that a virtual machine takes
9038.8 -> 24 cores, you size your virtual machine with
24 cores, if you know your virtual machine
9044.721 -> needs 256 gigs of DRAM, guess what you size
your virtual machine with 256 gigs. Anyone
9051.12 -> know when it comes to your storage? In terms
of hard drives? In your data center, you know
9057.1 -> what to get. But on the cloud, you're dealing
with slow blocks third, so again, you need
9061.101 -> raid, what kind of storage environments what
kind of block stored file if you go, there
9065.01 -> you go. And again, you're there. What kind
of network performance do you need? You need
9070.21 -> Gigabit Ethernet, 10, Gigabit Ethernet, 40
100 gig ethernet, exactly what do you need.
9075.22 -> So again, the same way you would make any
any any virtual machine in any data center,
9082.56 -> the same thing you would do in the cloud,
if I say learn the cloud, not there's not
9086.2 -> any vendors platforms, and then you're gonna
know all in the cloud. So let's talk a little
9092.93 -> bit more about them. Now, I showed you the
hard way. In the data center, you have to
9098.97 -> tell your servers exactly what you want. You
can tell your server this one has four cores
9104.38 -> and four gigs around or two cores and four
gigs of RAM. This next server has 64 gigs.
9110.18 -> And a terabyte of RAM, you can do that on
your virtual machine, but not on AWS,
9116.431 -> on AWS, these virtual machines are pre built
for you, they took all the thinking of it
9120.02 -> out of you. And all you need to know is which
family of virtual machines to use. And then
9125.47 -> you go to the chart to determine which works
on machines include your CPU D RAM performance.
9131.3 -> Now they made finally is like a one which
is used for ARM based workloads and sci fi
9135.48 -> which is used for compute optimization for
batch processing, media transcoding, and in
9141.319 -> G threes or GPU based machines, which you
use for say, machine learning. And then they've
9146.811 -> got the ID three, which is for high speed
storage for like data warehousing and high
9151.72 -> speed, high performance databases. They've
got an M phi, which is general purpose, ideally
9156.13 -> for databases and M six, which is more general
purpose stuff. Prakash isn't databases, they've
9161.93 -> got a CI three, which the basic burstable
computing platform, which is perfect for web
9166.47 -> apps and test environments. And then when
you need a lot of memory, for like big datasets
9172.109 -> and data science and data engineering things,
you're gonna have large datasets in memory.
9176.63 -> Then in memory databases, you've got the x
one family, because it's got the lowest cost
9180.97 -> per gigabyte of DRAM, because they're focused
on giving a maximum DRAM. But you know, kind
9186.891 -> of keep that in the back of your mind, you
should be good to go. So realistically speaking,
9194.59 -> when you're dealing with a virtual machine,
what are your operating system options? Well,
9200.479 -> EC to really support Lynda Linux and Windows,
basically, almost all your servers are going
9207.88 -> to be Linux, you'll have Microsoft Exchange
servers, Active Directory servers, some organizations
9212.93 -> have Windows servers, but for the most part,
most servers are going to do Linux. Now, AWS
9218.851 -> also offers virtual machines that run on Mac
Minis. For the Mac operating system, you're
9224.43 -> not going to host a mission critical application
on a Mac Mini, it doesn't have error correcting
9229.15 -> RAM. It's not a mission critical system. But
if you're a developer, and you need to compile
9233.92 -> code, for applications running on a Mac, you
need a Mac to do that. So instead of your
9240.37 -> developers having to buy Macs, they can get
a 24 hour AWS EC two instance that runs the
9247.99 -> Mac operating system. That's what that's for.
Now, you can create your own machines, you
9253.96 -> can take your virtual machines from the data
center, use a conversion tool, and take those
9257.859 -> same VMware virtual machines or KVM, or QEMU
virtual machines or Hyper V virtual machines,
9262.46 -> migrate them to the cloud provider of your
choice. Or you can use a pre built virtual
9266.62 -> machine, just pre built virtual machines from
AWS. But also, let's say you want real security
9272.43 -> on your environment. You're not going to be
using AWS WAF or any cloud providers native
9277.4 -> things. You're going to be going here extreme
security vendors Cisco Palo Alto Fortinet
9283.41 -> checkpoint, and then you're going to be running
their stuff on a virtual machine. And you'll
9288.3 -> be getting those virtual machines from the
AWS Marketplace, which is where you're going
9294.37 -> to getting these things to kind of keep that
in the back of your mind. But whenever you
9297.97 -> build the machine image, what's the going
to need a storage volume, where you're going
9303.02 -> to store your stuff that's my mother in law
would like to call it and just basically going
9306.93 -> to be your system and your Ebs.
9314.66 -> So we can get normally every every virtualization
device has its own name, though it's virtual
9320.729 -> machines, AWS cluster virtual machine images
and Amazon Machine Image. Everybody else has
9327.31 -> their own names. And basically in what I showed
you, I created a virtual machine and I'll
9333.1 -> have to install my own operating system. Windows
Linux would have the Red Hat Ubuntu to Oracle,
9339.24 -> Linux, Amazon Linux, CentOS Linux flavor of
your choice. So you'll see now with AWS, their
9346.5 -> pre made for you, all you have to do is click,
click, click three buttons and it comes up.
9351.76 -> That's why the cloud is easier because I mean,
it's so agile, he just clicked three buttons,
9355.22 -> and it's done in seconds. And launching one
of these virtual machines is easy. I chose
9359.569 -> a six year old I'm sorry, an eight year old
had to do it in less than five minutes, to
9362.721 -> his real cute with a couple bucks. So much
easier than the hardware I showed you, which
9369.2 -> is the datacenter. And we can get these machine
images from marketplace. If there are a firewall,
9374.33 -> we can generate them from our own machines.
And we can upload our own machines and use
9380.08 -> a conversion tool. Simply make a virtual machine
image. It's basically a system image or server.
9386.63 -> What are the components of this well going
to be your operating system, your launch permissions
9392.55 -> and a block device mapping that map's the
block storage tiers to your virtual machine.
9398.18 -> That's really it. I can make an AMI machine
image of my servers, I can copy it to different
9404.1 -> regions. In case of a disaster recovery, I
can take my image, modify the image and ship
9411.46 -> it to other clouds for disaster recovery purposes.
So it's great for new migrations, great for
9416.67 -> multi cloud environments. Amazon, Linux two
and Amazon AMI or prebuilt Linux images supported
9422.75 -> by AWS. And they're all based off of the Red
Hat Linux operating system. But Red Hat, you
9430.56 -> have to pay for their support, and AWS, it
kind of comes with. So now let's say you launch
9436.609 -> a virtual machine. So let's say I launch a
virtual machine and I want this virtual machine
9442.57 -> to update its operating system. upon reboot.
Maybe I want to install certain things like
9448.25 -> an Apache web server. So I can set up what's
called the bootstrap script. And there's a
9453.37 -> little box where you put command. So let's
say I've got a Linux machine, I could have
9457.64 -> the first command do sudo apt apt get update,
which will update the packages, then I can
9463.06 -> do sudo apt apt get upgrade, and it'll upgrade
the packages, then I could have it say like
9468.689 -> sudo apt install. I think it's Apache or httpd
for the web server. And coop, it'll install
9474.31 -> all that as soon as the server comes up. I
could use a script to basically launch these
9480.45 -> AWS machines, install applications patch the
software, with a Linux things, it's a simple
9487.47 -> bash shell script. With a Windows system.
It's a basic PowerShell script. Simple, simple,
9494.19 -> simple, easy stuff. Number one, we're getting
our virtual machines in the cloud provider.
9502.4 -> There's multiple ways we can get them. And
the way that we purchased these things can
9508.95 -> affect our cost dramatically. This is called
tenancy options.
9513.55 -> So let's talk about the first one.
9518.57 -> On Demand. And what is on demand instances.
By the way, this is realistically speaking,
9527.73 -> in many cases, why organizations love, love,
love to use the cloud. So with an on demand
9535.97 -> instance, you pay by the second and what's
your compute capacity, your compute capacity
9540.92 -> as follows whatever you need it to be, meaning
I don't know my demands. So basically speaking,
9546.939 -> I think I need a 16 core server with 64 gigs
around. I buy that on demand. If I need capacity,
9555.81 -> I use auto scaling a ton more of those servers.
And when I don't need them, the servers miraculously
9562 -> reduced their load. And I'm back to one server.
Now by doing this on demand. I don't need
9569.59 -> to know my exact capacity. Because I don't
need to know my exact capacity. Here's what
9576.272 -> I have to deal with. I have to pay more for
for the agility to scale up or scale down
9582.77 -> and that's actually technically scale out.
And scale in scaling up means using a bigger
9587.52 -> server. We're scaling out means adding additional
servers. So really what we're talking about
9591.83 -> is this on demand enables us to add what we
need when we need it. Now when we deal with
9598.18 -> on demand, work Hang the most. Now, why are
we paying the most with regards to on demand,
9605.21 -> we're paying the most for the following reason.
He can't guarantee Amazon what our customer
9610.14 -> costs are going to be. So they have more business
risk. Now by comparison, if I told AWS, I'm
9619.03 -> going to buy this server of this capacity
for the next three years, that's called the
9624.6 -> reserved instance, in this reserved instance,
here's what we're dealing, we're dealing with,
9633.01 -> I tell them, that I'm gonna buy this capacity.
Now, if I tell AWS, how much stuff I'm going
9639.02 -> to buy, they're in a better prediction and
how many servers they need to buy, to support
9643.761 -> my business needs, and they're gonna give
me a nice discount for this. So that's what
9649.05 -> I reserved instance. So on demand is, you're
going to pay the most, because there's business
9653.31 -> risk involved, for an AWS, you're gonna have
to keep extra capacity around just in case
9657.59 -> you need it. With a standard reserved instance,
you're basically telling them ahead of time,
9662.63 -> I'm gonna buy this for the next one to three
years, and they're gonna give you a nice discount.
9667.84 -> Now, what if you've got a very, very, very
strange environment, and in your strange environment,
9675.45 -> you know that every Friday, Saturday and Sunday,
your system is going to run a batch job, it's
9681.2 -> going to run 24 hours each day. And you only
need it from Friday, Saturday or Sunday. Well,
9686.68 -> that's where we deal with something called
the scheduled reserved instance. And what
9691.32 -> that is, really is you buy a set of compute
time, every week on those days. And because
9698.68 -> you're committing to it ahead of time, you're
gonna get a discount. Now, that discount won't
9703.649 -> be as great as if you reserve it 24 hours
a day, seven days a week, but it will still
9707.66 -> be there. Now the last option, we're going
to talk to something called the spot instance,
9713.97 -> a spot instance, is basically an auction of
where you're buying or renting an extra AWS
9723.58 -> capacity. So here's the thing, here's the
way a spot instance works. You know, you need
9728.74 -> extra compute capacity to do something, you
bid in an auction like manner, at a certain
9734.51 -> price. Now, if the price raises, while you're
using the systems, guess what your systems
9740.311 -> get shut down. Me kind of scary, Google causes
a preemptable. And for instance, basically,
9747.27 -> you're purchasing unused services, at the
lowest cost, AWS is willing to sell it to
9751.819 -> you. But if somebody else wants your compute
capacity, and they're willing to pay more
9755.689 -> than you, you are shut off. So kind of keep
that in the back of your mind. This is a little
9761.68 -> on the scary side, a little on the scary side,
to kind of keep that in the back of your mind.
9769.399 -> So reserved instances guaranteed to know what
they are cheapest, schedule reserved, you
9775.311 -> know, you need them on a couple of days a
week, you reserve the capacity at a time you
9778.38 -> get a discount that as big as if you buy it
all the time, on demand, get what you need
9782.02 -> when you need it, scale out, scale and go
and Spot Instances bidding with extra capacity.
9795.359 -> Now, what other options we actually have was
regarding tenancy, and that's more how you
9800.96 -> buy them. The next is really what they would
call tenancy is you want a shared tenancy
9806.25 -> instance. And what is that the shared tenancy
is when you launch a virtual machine, on a
9811.479 -> server that has a whole bunch of other people's
virtual machines, kind of like that. So the
9815.93 -> system I showed you were three cats on the
same virtual machine. Now that is you standard,
9820.529 -> you get a standard virtual machine. In any
cloud provider, it's called Shared tenancy
9825.479 -> and your your virtual machines and somebody
else's virtual machines on the same server.
9829.689 -> Who cares? It doesn't matter. They're, they're
logically isolated, they're secure. Now, what
9836.3 -> if you wanted to put have the whole server
for you, and make sure the entire server freak
9843.59 -> you exclusive of the entire server is guess
what? All your virtual machines nobody else's.
9851.28 -> That's where you get something called the
dedicated instance. So shared tenancy was
9856.359 -> multiple people share the same server. Dedicated
instances are basically when you have on the
9861.71 -> same system, multiple multiple, multiple customers
dedicated instances, you buy this instance,
9871.14 -> you only stick your virtual machine. Now what
if you need real performance, high performance
9879.6 -> access to the high performance disks in your
server? X. You've got an application that
9885.7 -> needs the serial number or your processor
or a serial number on your motherboard. You
9890.85 -> have to put a key in there for the USB key
and the server for a license and when you're
9898.21 -> dealing with this kind of stuff. So what you
really need is what's called the dedicated
9902.1 -> host, what's a dedicated host? It's a bare
metal server just like the one that I showed
9906.779 -> you. For which case you put your own hypervisor,
or you use their hypervisor, their nitro hypervisor,
9911.68 -> and you manage it yourself. So realistically
speaking, that's exactly what we're talking
9916.06 -> about with Amex needs my cats kind of given
the hours.
9928.98 -> Sorry about this, I adopted a cat. She's the
sweetest thing in the world, but she makes
9934.1 -> me sneeze from time to time. So when you're
dealing with a virtual machine, how are we
9944 -> going to deal with keeping it secure? Well,
all virtual machines in AWS have the ability
9951.61 -> to use something like a host based firewall
called a security group. The security group
9956.93 -> will allow you to keep stuff, unlimited stuff
outside of your server. And the good news
9963.83 -> is that security groups are stateful, which
means they track the connections going in.
9970.05 -> And basically, you can set up a firewall based
policy on the server. So for example, if it's
9975.609 -> a web server, allow port 80 and Port 443,
and to the server, anything else in? Why would
9984.4 -> you or if it's a high secure server, you competitive
basically to create a firewall rule that would
9990.75 -> say, Hello, allow any connection from the
IP address 190 2.1 68.1 dot 21 slash 32, an
9999.74 -> exact match or something like that. So let's
look about what we're really talking about
10006.09 -> over here. We're basically talking in an environment
where we've got our virtual machines, and
10011.45 -> put a firewall rule called the security group
right outside of them. And that's it. That's
10016.45 -> all we need to talk about. Everything is up
and operational. Now, when it comes to getting
10024.33 -> an IP address on an EC, two instance, how
do you think that happens? How's it happened
10029.12 -> in the data center? Well, in the data center,
you can manually assign them, or you can use
10034.68 -> DHCP. Now, in this case, in here, all AC two
instances are going to be given a name from
10042.06 -> the DHCP server. So they're going to automatically
be assigned, you're gonna have to tell it
10045.859 -> your cider range, and you'll create the subnets.
And an IP address is going to be assigned
10050.53 -> naturally for you know, when an IP address
is given to your your EC two instances, you're
10057.359 -> also going to get DNS service that's associated
to it, and a fully qualified DNS name. And
10064.479 -> that way you can attach to it Mike's EC two.this.test.com.
And that way, it can connect to it via the
10071.43 -> DNS name, as opposed to remembering 1.2 dot
3.4, which is his IP address. Now, when we've
10078.91 -> got a virtual machine, just like in our data
center, we can have multiple network interfaces,
10082.13 -> we can have multiple, multiple subnets on
multiple network cards on different subnets
10087.47 -> public ones, private ones, anything we need
to do, just like we would do in a data center
10091.85 -> environment. So that would be be created by
multiple network interfaces, which we'll talk
10097.45 -> more about later, especially in the network.
Now, typically speaking, anything that you
10104.8 -> don't want reachable from the internet should
have a private IP address, and be behind your
10110.53 -> firewall, your IDS, IPS systems, your access
control lists, etc. We'll talk more about
10114.51 -> that later. Kind of keep that in the back
of your mind. Now, instances are also going
10120.95 -> to be assigned at lunch, a public ipv6 address.
If you don't want to be reachable via public
10127.229 -> don't take a public address. So remove that
address and make sure you don't have a route
10132.79 -> to an internet gateway of some kind, which
gives you ipv6 router. And you see manually
10137.76 -> disabled anything you don't need. When it
comes to security, you've got a server and
10141.77 -> it's got 1000 services, and you only need
one, disable all 909 services and keep the
10147.99 -> one same thing. Now the only thing to remember
is when you've got multiple network cards
10152.979 -> on a server, generally speaking, each network
card needs to be on a different subnet. And
10157.6 -> you can't use the same IP address in two places.
So each interface is going to require a unique
10163.51 -> address space and a unique subnet that's not
going to be used in subnets that are going
10167.39 -> to be overlapping somewhere else. Bear with
me one second. Sorry, cat really gets my allergies
10176.18 -> even though I love her to death. Now how are
you going to manage your virtual machines?
10182.22 -> Well, lots of ways. You can use the management
console where you click click a few buttons
10187.81 -> just like I showed you with my VMware environment
other than the AWS one. If it's a Linux machine
10193.03 -> you can SSH or security occur cell Angela
and if it's a Windows machine, you're using
10197.79 -> RDP Remote Desktop Protocol. Of course, you
can do lots of management on these systems
10203.18 -> as well, via I wouldn't call it the the software
development kit or by pushing and pulling
10209.68 -> API's. So those are options. While we're at
it, let's talk about another compute platform
10220 -> called AWS outpost, which is realistically
speaking, a fully managed virtual machine
10226.18 -> service. Now, it's a little different. So
here's what the AWS outpost is, if you recall
10232.899 -> yesterday, I told you that the highest performance
is in your data center. Because it's no latency
10238.63 -> there, the cloud is going to be your highest
latency. And then we talked about these concepts
10243.65 -> of local zones, which were intermediaries
between your data center, and the ultimate
10248.59 -> cloud, the local zone for lower latency. I
also told you the by far, the lowest latency
10254.45 -> solution is this, keep your stuff in your
data center that you've low latency. Well,
10260.399 -> customers are demanding low latency. So AWS
decided to sell you the servers that you can
10265.55 -> stick back in your data center. Now they fully
manage the servers, which makes it simply
10269.93 -> easy for you. But you got to remember, it's
gonna cost you more to buy somebody else's
10274.96 -> fully managed server to run your data center.
That would be just to get your standard server,
10279.27 -> you can use like Microsoft Hyper V, or KVM,
or QEMU as a hypervisor, but it's your option.
10285.34 -> And by doing this, it's AWS outpost, it basically
is giving you that simplicity and elegance
10291.01 -> of the AWS cloud and sticking it in your local
data center and giving you the performance
10295.71 -> as if it's in your data center. But AWS is
gonna manage it for you, but they're gonna
10299.76 -> manage it for you, they're going to charge
you to manage it. So keep that in the back
10303.17 -> of your mind might be a great thing may not
be. So the AWS outpost is really just a server
10310.27 -> that acts like an extension of your Virtual
Private Cloud place where your own equipment
10314.29 -> is in your own data center. We're gonna get
to databases next. Hashtag AWS Certified Solutions
10322.3 -> Architect 2022. I know it's a long one. But
we want a lot of people to see this free training.
10332.13 -> I'm putting that kind of content there will
help as many people as possible, see the free
10336.479 -> training, ideally spell it out, no abbreviations.
Hit that like button and comment and subscribe.
10347 -> Tell friends, join us, we can help as many
people as possible with our free training,
10358.91 -> we are dedicated to making sure anyone that
wants education can get so know that you're
10367.97 -> awake, which makes me happy. I'm going to
start talking about databases. So what is
10372.79 -> a database? A database is a place where you
can store large amounts of information. A
10381.27 -> database facilitates the sorting, calculating,
reporting and Information Store sir. Databases
10389.82 -> are an absolute critical component to modern
applications. Mission Critical environment
10396 -> in today's world. AWS basically has three
forms of databases. They have relational databases,
10405.18 -> and we'll talk about them. They have no SQL
databases. They have data warehousing databases.
10411.46 -> And while it's not a database with to some
degree talk about a data lake, because they
10416.88 -> pop that into your exam. Now when we deal
with databases, we're gonna start out with
10424.72 -> relational databases. And relational databases
are the most common form of databases. And
10432.61 -> they give a business some really valuable
insight, data that's related to each other.
10437.47 -> Now, why would a business want to know data
that it's related to each other? Well, if
10442.05 -> I know that every time I use the coupon code,
panda bear with a 20% off discount, and I'm
10450.181 -> the CEO of a business, and panda bear can
enable an organization so 30 times their normal
10456.43 -> sales, then it's pretty important to know
that the coupon code panda bear drive sells.
10463.15 -> We can also find that made with a relational
database users geography. The more users in
10468.3 -> Florida buy this if so the company can target
their advertising money in Florida based upon
10473.1 -> itself. So organizations thrive on data. And
we can determine the relationship with data
10480.279 -> pricing and purchasing. Whoa, all kinds of
exciting stuff, too. That's why we need relational
10486.97 -> databases. Because data relational databases
provide information that's related to good
10494.29 -> business insights. And the way this works
is the data is going to be stored so similarly,
10501.45 -> to the way get stored in a spreadsheet, with
rows and columns, each row is going to have
10507.16 -> a unique ID. And the columns are basically
going to hold certain values, that's going
10512.88 -> to be the basis of how these things work,
just like a spreadsheet, that instead of being
10517.62 -> a spreadsheet database. Now when we're dealing
with databases, we're going to talk about
10523.43 -> something called atomic they adhere to the
acid model. And what does this mean? It means
10528.319 -> the transactions are all or nothing. It's
either on the database, or it's not. Now the
10534.43 -> next part of this acid compliance refers to
the consistency of data. If I write something
10540.07 -> to the database, and non relational database,
everybody else who accesses that database,
10545.479 -> a millisecond later gets access to the same
information. And something called isolated
10550.989 -> as well. Which means transaction one doesn't
affect transaction two. And it's also called
10556.359 -> dorable. Which means your data in the database
isn't going to miraculously just disappear,
10561.189 -> kind of like your email where you can find
something because you've got 10,000 emails
10565.32 -> that maybe if you're not a CEO, you don't
get 10,000 emails each day. But if you are,
10569.439 -> you know exactly what I'm talking about. So
I'm going to talk about relational databases,
10574.229 -> we talked about that a time, that acid model
atomic or nothing transactions consistent,
10580.14 -> immediately readable after a right, isolated
transaction, one doesn't affect transaction
10585.37 -> two, and durable data in the database will
not be lost. So let's look a little bit at
10592.53 -> relational databases, you know, how are these
things 200 structured, kind of structured
10597.72 -> as follows. You know, what do we have over
here we've got data that's related to each
10603.35 -> other, or customer order ID, customer ID and
information, information related to the name,
10609.95 -> their email address, and etc. That's what
we're dealing with relational database, getting
10614.399 -> data that's related to each other. Now, when
we deal with relational databases, there's
10622.51 -> plenty of kinds that we can use. We're going
to discuss Amazon, Aurora, Maria, DB, Microsoft
10628.92 -> SQL Server, MySQL, Postgres, and Oracle DB.
And, of course, you can create any database
10634.29 -> you want. By launching a virtual machine and
installing your own database software. I'm
10638.87 -> going to talk about the Aurora database, which
is a wonderful database that you probably
10642.93 -> should never use in your career. And here's
the reason you probably shouldn't ever use
10647.211 -> it, no matter how good it is. It's AWS proprietary.
So when you're using a hybrid cloud, you want
10654.14 -> to have your database and your private data
center and the AWS college account, when you're
10658.31 -> going to be using the Azure cloud and the
AWS cloud and the Google Cloud. You can't
10661.77 -> use this because your information won't be
there. So this puts you into one of those
10665.35 -> AWS proprietary positions, which we tech Architects
like to call vendor handcuffing, you're stuck,
10672.25 -> you're you can't get out of there. So generally
speaking, if you're an architect, you want
10676.26 -> your customers to have some blizzards, flexibility
and agility. Stay away from Amazon Aurora,
10680.649 -> I would tell you to do the same thing for
the Microsoft database, the same thing for
10684.43 -> the Google database because it's proprietary.
But for the purposes of your exam, it's the
10691.16 -> coolest thing in the world. It's a fully managed
database, which is my SQL and Postgres compatible.
10699.479 -> Its high performance and high scalability.
And the reality is, it's a very good performing
10704.83 -> database, it can be up to five times faster
than standard MySQL, or three times faster
10710.399 -> than Postgres. And what it really does, Amazon
kind of took, you know, some of the benefits
10714.72 -> of the commercial database, such as what you
get from Oracle, for example. And what you
10720.22 -> we can combine it with what you get out of
a freeware database, and they sell it to you
10725.22 -> as kind of a software as a service. And by
doing this, it's serverless, which means you
10730.22 -> don't have to manage at all, anything that's
going on, it's done for you, you're not thinking
10737.09 -> of your storage, etc. So, when you use Aurora
serverless, it's much easier for you to do
10742.72 -> it. Here's the problem with serverless, you
lose all control, you lose your performance,
10749.6 -> because you can tune your own systems, high
performance as you want. But once you go serverless
10754.109 -> you're at the mercy of somebody else. Mercy
of somebody else. So for any of you that are
10760.87 -> into performance cars, you've seen somebody
take a Honda Civic, and it's been 50 grand
10765.851 -> to that Honda Civic, and they turn it into
a race car that can outperform a $200,000
10770.5 -> car. It's because they customized it. When
you're going with serverless you're getting
10777.16 -> whatever the average performance is. It's
kind of like going to McDonald's or Burger
10781.33 -> King when they say Would you like fries with
that? Serverless a standard, you've got much
10786.37 -> less opportunities. In this case, it's simpler.
It's much easier to go to McDonald's and buy
10791.02 -> a hamburger than it is to cook it yourself.
But when you cook yourself may or may not
10794.87 -> be better based upon your taste. So kind of
keep that in the back of your mind. It's a
10799.631 -> great database but its proprietary. No, of
course, you can use the my SQL database. Now
10806.09 -> my SQL database is an extremely old, highly
popular database used in a tremendous number
10813.22 -> of wide variety of applications. Now, AWS
also supports Postgres. Postgres is an open
10823.17 -> source relational database, it's very scalable.
In many cases, people actually use this as
10828.33 -> a data warehouse, very advanced feature set
for MySQL, great database. Now, while we're
10836.25 -> at it, another great database is Maria dB.
And this is an open source relational database,
10842.51 -> which means I'm gonna pop this in AWS, Azure,
Google your data center, which is why we love
10847.43 -> it so much, is created actually by the developers
of MySQL, with the added additional features
10853.31 -> and functionality for the enterprise beautiful,
beautiful stuff. Now, many organizations use
10859.43 -> the Microsoft SQL database, specifically from
Microsoft related workloads. And of course,
10860.939 -> AWS RDS supports Microsoft SQL Server version
2008 2012 2014. Of course, you can create
10861.939 -> your own virtual machines install any database
you want. AWS, by, by having Microsoft SQL
10862.939 -> Server, lets the users really access Windows
workloads brought to the cloud in a very seamless
10863.939 -> environment allows for a very simple migration.
Microsoft SQL is different clustering options
10864.939 -> and failover options in most databases that
you would use. And you have to be familiar
10865.939 -> with those when you're using them. And the
forward ends of it are naturally supported
10866.939 -> our Express, web Standard and Enterprise,
the Microsoft SQL Server, but you got to remember,
10867.939 -> you can easily easily easily launch a virtual
machine and steal any database you want, and
10868.939 -> not use anybody's database management system.
Now let's talk about when it really matters.
10869.939 -> When it really matter. When businesses really
need a scalable relational database, for the
10870.939 -> most part, they go to Oracle, Oracle's the
600 pound gorilla when it comes to databases,
10871.939 -> and relational databases.
10872.939 -> It's one of the most popular relational databases
in the world. It's got a massively functional
10873.939 -> feature set and functionality. It's developed,
licensed and managed by Oracle, and AWS database
10874.939 -> management service offers, you know, standard
one, Standard and Enterprise licenses. And
10875.939 -> each of the versions of the Oracle database
will have different performance, flexibility
10876.939 -> and scalability options. And you can pick
these and these are great because they are
10877.939 -> standard databases. So use them across your
clouds. Now when you're dealing with the Oracle
10878.939 -> database, with AWS, there's two versions,
there's license included and bring your own
10879.939 -> license. So let's talk about what they are.
License included is basically we're using
10880.939 -> the AWS license to the Oracle database. And
you're only going to get two options, basic
10881.939 -> options, Standard Edition one, and Standard
Edition two. But if you've already got a paid
10882.939 -> license to Oracle, you can bring that license
directly with you to cloud and host your database
10883.939 -> on AWS. And then you get a lot more flexibility,
you can use the standard license, the Enterprise
10884.939 -> license, the standard edition one, and the
standard edition to do license. So that's
10885.939 -> really where you're gonna go. Now, we talked
about relational databases, which show the
10886.939 -> relationship between variables. Relational
databases are great. But there are other kinds
10887.939 -> of databases to serve different purposes.
The next kind of database we're going to talk
10888.939 -> about is a no SQL database. And a no SQL database,
which is an old school database developed
10889.939 -> by IBM, if I remember correctly around the
70s came up with not only SQL, that's where
10890.939 -> they got the nut, no SQL, not only SQL, and
the queue with no SQL databases, they provide
10891.939 -> a lot of flexibility and schema. So in addition
to being like that regulated, you know, columns
10892.939 -> and rows, like a spreadsheet, you get a little
more flexible here. We can do with structured
10893.939 -> data, semi structured data, because the structure
on these no SQL databases is very loose. And
10894.939 -> no SQL database can scale beyond things that
you can possibly imagine much, much larger
10895.939 -> than relational database. And you know, the
data stored in a key value kind of pair environment.
10896.939 -> And what are we talking about here, we've
got our keys and we've got our values. And
10897.939 -> of course, you know, anything that we're going
to give you is going to have a cat dog or
10898.939 -> a burden because we love things with fur or
feathers as an example. Now we're really talking
10899.939 -> about a lot of flexibility, a schema, which
enables you to do things that you could never
10900.939 -> do in a traditional environment. So let's
say you wanted to store video game state well,
10901.939 -> if players in a video game, that's a no SQL
database, let's say you need near unlimited
10902.939 -> scalability, that's a no SQL database. Let's
say you want to store your content provider
10903.939 -> and people are watching movies, do you want
to store the place where they stopped in a
10904.939 -> movie that's in no SQL database. We cover
no SQL databases, I'm going to talk about
10905.939 -> the three options that you have for the most
part, I'm going to tell you about the one
10906.939 -> that's going to be on your exam Dynamo DB,
I'm going to also tell you, you probably should
10907.939 -> never architect Dynamo DB into anything. And
here's the reason why. It's AWS proprietary,
10908.939 -> just like Google's cloud, big table, just
like Microsoft Cosmos dB. And being proprietary
10909.939 -> keeps you from building your high availability,
high performance clouds, like you would do
10910.939 -> in a multi cloud environment. So if you're
an architect, try to stay away from these
10911.939 -> things. Try to use an open standard, such
as MongoDB, or Apache Cassandra. But you know,
10912.939 -> this is up to you. You can always architect
anywhere you want. But it's on the exam. So
10913.939 -> we're going to talk a lot about Dynamo DB.
Amazon DynamoDB is the AWS branded, no SQL
10914.939 -> database. And truthfully, it's an excellent,
excellent, excellent database. It's a great
10915.939 -> database. But it's proprietary, which means
you can't use them or multi clouds, which
10916.939 -> were we architects are concerned about high
availability means it's not usable. But it's
10917.939 -> on your exam. And if you're only going to
deal with one customer, one client, and they
10918.939 -> don't care about system availability, they
don't care what happens if a single cloud
10919.939 -> goes down, then you can use it. Now, in this
case, Dynamo DB is another serverless fully
10920.939 -> managed by AWS environment. It's highly available
as long as the AWS called us up. And your
10921.939 -> systems are placed naturally in multiple availability
zones, no matter what, it's serverless. So
10922.939 -> that means you don't have to manage the servers,
the security in the stores information on
10923.939 -> high performance SSD storage, but again, block
storage, so it's not the fastest thing. Now
10924.939 -> DynamoDB is a good performing databases, it's
got low millisecond latency. And what we could
10925.939 -> use is we could use the DynamoDB accelerator,
which is basically in memory cache, that can
10926.939 -> lower latency just milliseconds. When we send
our data to Dynamo DB and encrypts all data
10927.939 -> by default, and one good thing that's pretty
amazing about Dynamo DB, as you can back it
10928.939 -> up, has almost no impact on performance. And
we can set up our Dynamo DB to replicate across
10929.939 -> regions, which is quite nice. But again, it's
proprietary. Now, the way Dynamo 10 Beacon
10930.939 -> tends to work is it tends to work with primary
indices. But it can also work with secondary
10931.939 -> indices in which allows applications to use
different query patterns. Now when you're
10932.939 -> dealing with a secondary index, it's basically
like you partition the database. And you can
10933.939 -> have a local or global secondary index, local
secondary indexes have the pane same partition
10934.939 -> key as the base table. Global indexes can
span across multiple multiple multiple database
10935.939 -> partitions. Relatively speaking, there's going
to be some limitations on sizing, the single
10936.939 -> key can exceed 10 gigabytes. But that's still
a pretty big and to increase scalability,
10937.939 -> then Dynamo DB is not doesn't hit here does
not that's a model at all, which means I might
10938.939 -> write to the database. And three seconds later,
it might be available everyplace else. By
10939.939 -> slowing that down just a little bit. It can
promote some extreme scalability. So it's
10940.939 -> going to be there. It's just not immediately
available. Now, if you truly needed to, you
10941.939 -> needed to make DynamoDB immediately consistent
with a second I write it, everybody else can
10942.939 -> read it. You can configure that if needed.
But remember, it's designed this way for a
10943.939 -> reason for scalability. Now, when you're dealing
with DynamoDB, you really want to provision
10944.939 -> the capacity of it ahead of time. In terms
of what capacity, what are we talking about
10945.939 -> readwrite access to the drive where it's stored.
So you're gonna have to provision your read
10946.939 -> and write capacity. And if you don't, it won't
be there when you need it. Now you could potentially
10947.939 -> actually use something called Auto Scaling
as it pertains to your database. What do I
10948.939 -> mean by that? Auto Scaling if you need more
input output operations per second, will scale
10949.939 -> up your stores to give you better performance.
Problem is that doesn't scale down when you're
10950.939 -> done. So if you needed it for a very short
period of time, hoof, it'll scale up up the
10951.939 -> capacity that you need. But then it wants
to go back down so you might be paying too
10952.939 -> much for long periods of time. So you need
to know your workload and optimize your throughput
10953.939 -> based upon your needs as a business. Now there's
now the ability to create infrequent access
10954.939 -> tables, which lowers the customer usage. But
Pentagon there's a 25% fee to save data and
10955.939 -> retrieve data. So not going to be useless
if you use the log. Now with Dynamo DB, we're
10956.939 -> dealing with pricing based on throughput.
And on demand capacity can basically is there
10957.939 -> with higher cost and if you pre provisioned
ahead of time, just like anything else. So
10958.939 -> where would you use DynamoDB? When you need
near unlimited scalability, when low latency
10959.939 -> is required, when you're storing data from
a large number of IoT devices, during the
10960.939 -> game, stay, the player data store, the leaderboard,
those kinds of things, but remember. So Dynamo
10961.939 -> did they, if you'd run a single cloud, you
could be used for large scale financial applications,
10962.939 -> shopping carts, inventory tracking customer
profiles. Now remember, that's your AWS proprietary
10963.939 -> database, which means you can't use it in
multiple clubs. Can't use it with your private
10964.939 -> cloud hybrid code. So keep that in the back
in mind. Now, if you needed a really good,
10965.939 -> no SQL database and a critical high availability
environment, you can't use this because it's
10966.939 -> single cloud. You could use Mongo DB, or Apache
Cassandra. And you'll select those based upon
10967.939 -> your read write information. Because Apache
Cassandra is better for certain things, and
10968.939 -> as well as MongoDB is better for others. And
that's why we architects, when we architect
10969.939 -> something, we always go to the database, people
may ask him to help recommend something. And
10970.939 -> if you're a database person, you're gonna
automatically know. And if you're a cut engineering
10971.939 -> you need, go ask a database person, they specialize
these things, they'll be able to tell you
10972.939 -> when to use Apache Cassandra versus MongoDB.
Generally speaking, you use Apache Cassandra,
10973.939 -> when you have more write activity, and MongoDB
when you have more read activity. But when
10974.939 -> it comes to architecture, it's never done
by a single person, leverage your team and
10975.939 -> make sure your team knows different skills
and that way you get the best overall skills
10976.939 -> and designs.
10977.939 -> Now, if relational databases show us the relationships
between variables, and no SQL databases give
10978.939 -> us a ton of flexibility. And scalability.
What about a data warehouse? Data Warehouses
10979.939 -> getting kind of cool to me. But data warehouses
where you store a tremendous amount of information?
10980.939 -> Why are we storing all this information? Tragically,
so we can make better business decisions in
10981.939 -> the future. So what data warehouse which is
typically Postgres is something that could
10982.939 -> be used to store large amounts of business
data that you can then process later, run
10983.939 -> a database visualization tool, run a business
intelligence tool, like Power BI, and get
10984.939 -> information from the data so you can make
better business decisions. Now, there's obviously
10985.939 -> lark, there's several types of databases.
Amazon, of course, has their own proprietary
10986.939 -> data warehouse, called redshift, which again,
I don't recommend you use because you can't
10987.939 -> use it in a multi cloud environment, I recommend
you look towards things like Postgres. But
10988.939 -> you do need to know the AWS available proprietary
services is definitely on your exam. And if
10989.939 -> you're going to only be working with AWS,
these services are truly great. They're very
10990.939 -> good. It's just that most customers want to
be on multiple clouds. And most innovation,
10991.939 -> the high availability systems require multiple
codes. So we don't recommend you use anything
10992.939 -> proprietary that locks you into a single column.
But you know, the way you would set up a data
10993.939 -> warehousing database would be, you would take
your object storage. You take your information
10994.939 -> and map it and reduce it with like a Python
spark script, with AWS, EMR, whatever. We'll
10995.939 -> talk about that system later. And then you'll
push your data into your data warehouse. And
10996.939 -> then you can pull your data out of your data
warehouse and use a tool like Power BI or
10997.939 -> AWS QuickSight. And be able to analyze your
data and make better business decisions based
10998.939 -> upon your data. So all this point why we're
collecting data to make better business decisions.
10999.939 -> Let's talk a little bit more. What is redshift
it's the AWS managed AWS proprietary database,
11000.939 -> data warehouse, get actionable insights from
your data use it for business analytics, etc,
11001.939 -> etc. And these kinds of things. And realistically
read specialist spectrum can provide real
11002.939 -> insights into your data, when combined with
other services such as
11003.939 -> AWS will tell you to use redshift because
it's fast, powerful and fully managed, fully
11004.939 -> managed does offer you the advantage that
you don't have to think about it. fully managed
11005.939 -> also means you take away your control which
hamburger is better than one of the Donald's
11006.939 -> or Burger King, or the when your grandmother
cooked you, or your friend who's a chef cook
11007.939 -> you, when you've got control, and it's cookie
cutter, those are fine. It's just it's up
11008.939 -> to you in determining what your needs are.
But if you're using redshift, they can scale
11009.939 -> to petabytes of full of data warehousing availably.
And because it's Postgres, you can run SQL
11010.939 -> queries on your data, your applications can
perform SQL queries on your data. Now, when
11011.939 -> we're dealing with redshift, we're dealing
with primary architecture based around clusters
11012.939 -> and nodes. Basically, speaking, you've got
a primary node, which was called a leader
11013.939 -> node, you got a bunch of compute nodes support
the leader nodes. And queries are directed
11014.939 -> towards the leader, you know, very, very,
very similar to what you're actually dealing
11015.939 -> with, in a traditional environment. We're
going to discuss data lake Chris, and then
11016.939 -> I think we'll take a break, and then we'll
go back into more database stuff. So what
11017.939 -> is a data lake? Love data lakes. So a data
lake is a repository that allows you to take
11018.939 -> structured data, unstructured data is stored
in the same place at any scale. If you're
11019.939 -> interested in data lakes, you know, I interviewed
a really great database architect, his name
11020.939 -> was Praveen and my team could put a link to
that video in the chat box, you can go back
11021.939 -> and learn all about data lakes. But a data
lake is a repository that enables you to store
11022.939 -> your data. And it's typically based in object
storage, you put large amounts of data. No,
11023.939 -> because you're creating a data lake, a data
lake is going to be created by taking the
11024.939 -> information out of your data warehouses out
if your no SQL databases, out of your relational
11025.939 -> database is not of your object storage. Now
this data is going to be smoothed out, it's
11026.939 -> going to be normalized. And you can keep it
in that format. Now in the data lake, we can
11027.939 -> query for certain data, we can run business
intelligence tools on these data, we can run
11028.939 -> machine learning on the data and the whole
point of creating data is so we can make better
11029.939 -> business decisions. So typically speaking,
what would it look like, we would typically
11030.939 -> take you know, three databases, we use proprietary
models, just to make those graphics a little
11031.939 -> simpler. We'd have data sources coming from
lots of places. And then what we would do
11032.939 -> is we would normalize the data. Now, AWS has
a proprietary service to normalize that data
11033.939 -> called Elastic MapReduce. Although what most
people actually do is they write a Python
11034.939 -> spark script, from their database team, and
that's used to normalize all of your data
11035.939 -> stored in the data lake. And once it's there,
you can make much better business decisions,
11036.939 -> inferences, and better predictions. So I know,
next thing, we're gonna, we're gonna get into
11037.939 -> storage options. Actually, let me go for let
me go for two minutes longer. Before I go
11038.939 -> to the next question, let's talk about database
storage options. If you're dealing with a
11039.939 -> database, where you're gonna store your stuff,
but I want you to think about this, databases
11040.939 -> are sitting on servers. What kind of storage?
Can we mount on a server in the Cloud Block
11041.939 -> Storage? So we're going to be storing our
data on EBS volumes. What kind of EBS volumes
11042.939 -> will provision IOP provision I ops plans meaning
the highest performance ones, if we need them,
11043.939 -> potentially a RAID array, or provision IOP
as volumes, we could use general purpose SSD
11044.939 -> and magnetic storage. If we use magnetic storage
for a database, the latency is going to be
11045.939 -> sky high. So for the most part we're not going
to be using. So if it really matters, we're
11046.939 -> going to be using provisioned IO PS. If it's
less important, we can use general purpose
11047.939 -> SSD. But you know, we're gonna be running
in some latency issues for the most part with
11048.939 -> the database. Lastly, let's talk about quantum
ledger databases. The Amazon quantum ledger
11049.939 -> database is a fully managed and serverless
central ledger database, which automatically
11050.939 -> scales for applications. Because it's server
list. You don't have to manage or about provisioning
11051.939 -> things, which is good. Because you don't have
to worry about provisioning things. You lose
11052.939 -> control over performance, which is not good.
So it's architecture. It's always going to
11053.939 -> be a trade off to get this but but as it cost
me all architectural decisions. Unlike a traditional
11054.939 -> database, when we're dealing with quantum
ledger databases, it creates what's called
11055.939 -> an immutable farm. So what does that mean?
Immutable means it can't be changed. So by
11056.939 -> using a ledger database, like this quantum
ledger database, you can take our stuff stored
11057.939 -> to the database and leave it there and nobody
can touch it. So we can't add or update out
11058.939 -> a record, update a record or delete a record
and that leads They're for auditing purposes,
11059.939 -> so it's really nice so now let's look at a
little more quantum database. The Quantum
11060.939 -> ledger database tracks data changes by stealing
a small amount storing small amount of changes
11061.939 -> inside of attraction transaction of the journal
in your checkbook. The data stored in the
11062.939 -> quantum ledger database journal is immutable
and cryptographically verifiable meaning the
11063.939 -> data has not been altered, modified or tampered
with, perfect for legal tracking. The Quantum
11064.939 -> ledger database can track all changes made
to any application while simultaneously providing
11065.939 -> verifiable change history. The Amazon quantum
ledger database can track all changes made
11066.939 -> by an application to any application while
simultaneously providing a verifiable change
11067.939 -> history. It's also acid compliant, meaning
atomic consistent, transactions are independent,
11068.939 -> and the transactions are durable. Like we
talked about before, completely before. And
11069.939 -> that means the information that's there is
going to stay no matter whether you had a
11070.939 -> network failure or not. Quantum ledger database
is ideal when you need a repository of secured
11071.939 -> accurate and verifiable immutable business
history. So prefer preserving the authentic
11072.939 -> legal documentation of say a vehicle ownership
vehicle title, vehicle registration, recording
11073.939 -> financial tracks and transactions for auditing
purposes. Fraud detections, forensic analysis
11074.939 -> and employee history. So let's take it from
there, I covered a lot of stuff, we'll stop.
11075.939 -> Let's talk about some database optimizations.
11076.939 -> Actually, before we do that,
11077.939 -> give me a hashtag AWS Certified Solution Architect
Associate and the top hog hashtag AWS Certified
11078.939 -> Solution Architect Associate, I'll know you're
awake, alert and oriented, paying attention
11079.939 -> because I want to know that everybody's paying
attention. That way I know everybody's going
11080.939 -> to get a great learning experience.
11081.939 -> If you've not subscribed or hit the belt,
or like the video, please do so now. So we
11082.939 -> can distribute our free content to as many
people as possible to truly help all those
11083.939 -> in need. Get some skills, they can build the
careers of their gene, Eric and Neela economy.
11084.939 -> I'm so happy to see you know, mascara in the
last day. It's good to see you, Eric. Alexander,
11085.939 -> so wonderful to see you.
11086.939 -> Super happy to see you all. Okay, I'm loving
this, you guys are paying attention. You're
11087.939 -> awake, alert and oriented. I know know that
you're there. And I'm going to keep keep keep
11088.939 -> going. So now let's talk about some database
optimizations. We're going to talk about some
11089.939 -> Amazon database optimizations. We're going
to be talking about backups, automated backups,
11090.939 -> database snapshots, which I love, by the way
on encryption. So let's talk about how do
11091.939 -> you scale a relation. And we're also going
to be talking about scaling relational databases,
11092.939 -> which means we'll be talking about read replicas,
caching, killing, high availability databases,
11093.939 -> and multi availability databases. And of course,
multi column databases is really what you
11094.939 -> want to do. Now, let's talk about backing
up your database. Let's say you put all your
11095.939 -> data in a database, right? And the database
or crash, that'd be a problem, right? If all
11096.939 -> the businesses data was lost. So we'll have
to backup our database databases are mission
11097.939 -> critical applications. And here's the really
cool things. If you're using any of the AWS
11098.939 -> database, if the backups are automatically
done, it doesn't just backup the entire database.
11099.939 -> It backs up the entire virtual machine. She
got a server, which basically is your Smith
11100.939 -> system, your your applications, like your
database and all your data. And it backs up
11101.939 -> the entire server into a single image file.
I love this. I love this. Because now you've
11102.939 -> got a full system backup. Now you can move
that backup to another cloud, you can move
11103.939 -> that backup to another availability zone,
another region. And poof, you can instantly
11104.939 -> launch this database, two or three clicks.
And it's brand new, and it's got all your
11105.939 -> databases and it's perfect. That's why we
love the way it's the best this is database
11106.939 -> backups. It is truly truly amazing. Now what
will happen is your databases will be backed
11107.939 -> up automatically. You can retain their backups
from one to 35 days work, we can move it and
11108.939 -> move into your own object storage bucket and
keep it there forever. And the backup is going
11109.939 -> to happen and during the define window each
day. And during the backup process means the
11110.939 -> performance of your data database is going
to be severely degraded or potentially even
11111.939 -> unavailable for a second or two. But that's
okay, because you're gonna have a full copy
11112.939 -> of your database. And the way this works is
you're going to, it's going to be creating
11113.939 -> a snapshot. And a snapshot is really just
a point in time copying an exact block by
11114.939 -> clock copy of the hard drive, the Bucks storage
you're going to use, which could be turned
11115.939 -> into another virtual machine. Now we can maintain
these database snapshots until we delete them.
11116.939 -> And that way, we can bring a database back
any time we want. Now, what's it really look
11117.939 -> like? It's very simple. We've got our database,
and poof, it just automatically makes the
11118.939 -> snapshot images. And as these images that
we can then use to launch a new database,
11119.939 -> we're running them worldcons.
11120.939 -> Now since we've got a database snapshot, what
happens if we ever want to restore it? This
11121.939 -> is where the beauty comes in. You restore
it by basically launching the instance, the
11122.939 -> machine image you just made. Magically, your
system comes up applications installed database
11123.939 -> installed and guess what? It's up and running.
And the only difference is, it's going to
11124.939 -> have a new IP address. Because it's going
to have a new IP address, it'll have a new
11125.939 -> DNS address. So if you if you have a catastrophic
backup, you come back to when your Ebs snapshots,
11126.939 -> your database snapshot, it's going to come
up but you're gonna have a new IP address
11127.939 -> and a DNS address. So whoever's doing your
applications will need to update the application
11128.939 -> to point to the new address. And it's up and
running, and you're back and your business
11129.939 -> is fully operational. So it's just going to
look like this. We take our snapshot, and
11130.939 -> automatically we've got a new virtual machine,
also called the new RDS instance, and everything
11131.939 -> is running beautifully.
11132.939 -> Now if we're going to store our data on the
database, what happens if somebody breaks
11133.939 -> into the data center and steals Amazon's hard
drives or, for example, or gets information
11134.939 -> from your account? They don't want that, right?
So we want to encrypt the data. by encrypting
11135.939 -> the data. It's meaningless. To anybody that
doesn't have a decryption key. So we're adding
11136.939 -> security. So let's talk about the encryption
types supported by the AWS database. We can
11137.939 -> encrypt the data at rest. What does that mean?
And the data stored on the server is encrypted.
11138.939 -> Basically, what happens is encrypting the
EBS volume, the block storage volume, which
11139.939 -> houses the database. This is very simple,
we turn it on by enabling the AWS key management
11140.939 -> system. That's it. Key Management Service.
And the key management service makes it really
11141.939 -> easy to concur URL, create and control your
encryption keys. AWS also supports transparent
11142.939 -> data encryption. And if you're going to be
using an industrial database like Oracle or
11143.939 -> Microsoft SQL, it's going to be transparent.
Transparent Data Encryption is also supported
11144.939 -> with Cloud HSM. I love transparent data encryption,
because it's a form of encryption that encrypts
11145.939 -> and decrypts your data on demand. So when
you write the data to storage, it's encrypted,
11146.939 -> when you pull it from storage is decrypted
automatically for you. Of course, we can use
11147.939 -> the cloud HSM which is a hardware security
module and device to manage your encryption
11148.939 -> keys etc. Of course, we can also use encryption
in transit. Kind of like when you use IPsec
11149.939 -> over over the internet for a VPN or IPsec
over direct connection for encryption over
11150.939 -> your private line. It's encryption in transit.
Now, in most cases, when you're going to do
11151.939 -> encryption in transit to a database, you're
going to be using the TLS transparent layer
11152.939 -> security protocol, which is going to use as
an SSL certificate. So there's a certificate
11153.939 -> created that's going to authenticate your
influence just like with an HTTPS website.
11154.939 -> Now let's talk about scaling your databases.
Since databases have become mission critical
11155.939 -> applications, it's a platform that's going
to grow dynamically just need the mounds of
11156.939 -> the application. Now there's two ways we can
scale databases. Or any device we can scale
11157.939 -> up and we can scale out. Know what is scaling
up means. We've had our database on a server
11158.939 -> that's got 16 cores and 256 gigs around. It's
not enough. We now put it on the beautiful
11159.939 -> AMD server powered by Epic CPUs, got 192 cores
and six terabytes of RAM as physical cores,
11160.939 -> which gives us, you know, over 303 100, virtual
close to 400 virtual cores, it's a beautiful
11161.939 -> system. But what's going to happen, it's something
that's not going to be enough capacity either.
11162.939 -> So we're gonna have to add systems. Now when
we're dealing with data bases, it's not like
11163.939 -> a web server, we can basically use it. Or
we can use a load balancer to load chakra
11164.939 -> servers. We're gonna have to do something
else. So there's different ways that we're
11165.939 -> going to scale out relational databases, and
no SQL databases. If we're dealing with no
11166.939 -> SQL databases, it depends upon the kind of
database. If we're going to be dealing with
11167.939 -> something like Dynamo DB, but just partitioner,
which chops the database into petitions, and
11168.939 -> it's great. If it's Apache Cassandra, we just
add more nodes that we can write to all notes.
11169.939 -> And Apache Cassandra is designed to run on
commodity hardware. And if it's MongoDB, we
11170.939 -> could do kind of a combination of things.
We've got options that we can use, based upon
11171.939 -> the databases. Now that's for no SQL databases.
Now, what about relationship relational database?
11172.939 -> They're a little different. With relational
databases, for the most part, except for Moniteau,
11173.939 -> we can only write to the master database.
But we can read from different databases.
11174.939 -> So how do we do we add read replicas. So right
now there's a bunch of truly amazing cloud
11175.939 -> architects that have blue wrenches that are
sitting here in the chatbox. I see even like
11176.939 -> you there, she's fantastic and exceptional
Cloud Architect. It's there. I see. Abigail
11177.939 -> marks a wonderful Army veteran and a terrific
cloud architect and see Alonzo Coleman from
11178.939 -> our team. I see Chris Johnson from my team.
I see Chow and Pham. She's the Cloud Architect
11179.939 -> extraordinaire. She's an incredible architect
and every single day of the week, and you
11180.939 -> know, there's many other people that are there.
And they're answering your questions while
11181.939 -> I'm presenting because I can't look at a chat
box talk and talk back at the same time, it's
11182.939 -> not feasible. So they're kind of like read
replicas, what I mean by read replicas, they're
11183.939 -> answering questions while I'm writing or presenting.
And I'm grateful to have these wonderful,
11184.939 -> wonderful, amazing people helping me today
as also being part of my community. So when
11185.939 -> you think about what's going on, the way you
scale, a relational database is as follows.
11186.939 -> You add additional people, to towels out there
helping people right now my child is answering
11187.939 -> people's questions. I don't have to think
about it. She's offloaded the read work for
11188.939 -> me, making life simple and elegant for me.
And because now I only have to focus on presenting
11189.939 -> not all that work. So read replicas are ways
we add additional compute, to help with scaling.
11190.939 -> Suddenly, Skeletor relational database, it's
by adding read replicas. So what is a read
11191.939 -> replica is a is a read only copy, except in
Maria dB of your database instance. Now let's
11192.939 -> synchronized in real time, meaning real time,
which means something gets written to me the
11193.939 -> master database, and ciao and even though
AQR and Chris, and Alonzo. And Abigail, they
11194.939 -> can answer you immediately because they can
see it. So now we've got five people answering
11195.939 -> your questions. I'm not thinking about the
questions. And what does that give me more
11196.939 -> focus on presenting mellophone relational
database, and I've got read replicas, I focus
11197.939 -> on writing. And they answer the questions
again, ticking load off. So read replicas
11198.939 -> are just additional service to take the reload
off of the database. So let's look at a little
11199.939 -> picture that I had drawn a while back. Here,
we've got traditional three tier environment.
11200.939 -> We've got our web servers, we've got our app
servers, and we've got a database. And to
11201.939 -> make the database skill, we added to read
replicas. So the queries are the information
11202.939 -> requests from the database can go to the read
replicas. Well, I one of the main database
11203.939 -> can focus on writing. It adds scalability.
So when do you add read replicas? Well, you
11204.939 -> got a lot of read activity. If all my chart
of activity is right, or if nobody was asking
11205.939 -> questions in the chat box, without read replicas
be helping a lot. No. But if there's people
11206.939 -> answering in the chat box, I can't do without
those wonderful, amazing blue wrenches. So
11207.939 -> thank you so much. They're functioning as
read replicas. So when there's lots of read
11208.939 -> activity, you need read replicas. If I told
you the read load is four times greater than
11209.939 -> the right load, I would use for read replicas.
So when the query or read traffic in the database
11210.939 -> is slowing things down, at a read replica,
if your database gets two requests a month
11211.939 -> chances are you don't need a read replica.
Now read replicas boosts performance, they
11212.939 -> don't provide disaster recovery. And I'm going
to put this together for you. Now let's talk
11213.939 -> about caching. Let's cache. Now let's say
we've got Chow would even do a kill over there,
11214.939 -> Chris, and Eddie, Patrick, and Alonzo, all
kinds of great people all over the world.
11215.939 -> And let's say that Alonso got asked the same
question 60 times per day. Question You got
11216.939 -> to ask is, do I need to code as an architect?
And he says, No. And they're going to three
11217.939 -> minutes later, do I need to quit as an architect?
And he says, No, then you got to ask the same
11218.939 -> question. 30 seconds later, you're going to
get code as an architect? And he says, no.
11219.939 -> It's some point it wouldn't make sense for
Alonzo to basically asked a question all the
11220.939 -> time. And he'd record if that's the only question
he got. He recorded in his iPhone, do I need
11221.939 -> to quit as an architect? And he'd say, No.
And as soon as somebody would ask the question,
11222.939 -> he would just play it and play it and play
it. And he would say, this voice who doesn't
11223.939 -> get learned just like me? No, that's like
caching does caching offloads, frequent requests
11224.939 -> from your read replicas. Now, let's say now
that Alonso has 20 questions. Question one
11225.939 -> is going to code. Question two is, so they
get a cat. Question three is, should I get
11226.939 -> a dog? Question four is do I need to know
the network? Question Five is do I need to
11227.939 -> know Linux? Question Six is how important
is business acumen question section seven
11228.939 -> is how important is leadership? Now, obviously,
he couldn't record to the same answer the
11229.939 -> same question and push the button every time
to answer the same question. The caching only
11230.939 -> works when your information requested is the
same. The same? In fact, if you add caching,
11231.939 -> and the questions are all different, it actually
introduces latency and reduces the functionality
11232.939 -> of your system. reduces it. So caching is
good going back to the situation for alignment
11233.939 -> invest 1000 times a day, going into code as
an architect, no, no, no, no, no, no, no,
11234.939 -> no, no. That's that.
11235.939 -> That's why we use it. And what is caching
really, it's a service where we take excess
11236.939 -> of frequently accessed information. And we
store it in D RAM or memory. So we can just
11237.939 -> serve it to people as needed without affecting
or compute capacity. And that's what we So
11238.939 -> caching or any kind of caching, whether it's
content delivery networks, whether it's five
11239.939 -> gateways and cache mode, or database caching
is really sending requests for the same information
11240.939 -> to an intermediary stop, before they get to
the ultimate people that are going to answer.
11241.939 -> Now, just like a content delivery network,
to protect against steal data, cash won't
11242.939 -> keep your information in there forever. But
remember, caching will not help if each request
11243.939 -> is unique. So you need to know your data pattern.
Before you recommend the caching in your architecture.
11244.939 -> You always need to know your business requirements,
otherwise, you never know what to do. When
11245.939 -> it comes to caching, there's three ways to
do this.
11246.939 -> You can build your own cache, your own virtual
machine, install a Redis cache on it, like
11247.939 -> you would do in data center. You can do this
nice and simply and elegant, and deploy the
11248.939 -> same cache across your three different clouds
all in the same virtual machine. Or you can
11249.939 -> take the AWS fully managed cache, and they've
got one called Redis, and elastic cache. On
11250.939 -> memcache D, they make the bread proprietary
term elastic cache is the name of their serve
11251.939 -> service that is just a cache, you can create
your own cache. Now Redis is basically speaking
11252.939 -> the most feature rich of all caches. And that's
typically what enterprises use in today's
11253.939 -> world. Now, the AWS elastic cache for Redis
is correct compatible with Redis. So you can
11254.939 -> bind regret your Redis let workloads to Elastic
cache or you can make your own elastic cache.
11255.939 -> Now memcache D is another type of cache. But
when you're dealing with memcache D, it's
11256.939 -> got a much reduced feature set. It's really
designed to be simplicity. So tools that are
11257.939 -> designed to be working with memcache D can
be used, but less organizations are going
11258.939 -> to use Redis. And many of them will just set
up their own car. Styles caching help one
11259.939 -> more time. it offloads frequent requests to
the database server or read replicas. It lowers
11260.939 -> CPU and memory requirements. Learn to use
caches to read to improve performance and
11261.939 -> reduce latency to improve scalability. When
there's a lot of requests for the same information.
11262.939 -> What's it going to look like? It's going to
look like this. You've got your web servers
11263.939 -> basically using two availability zones, hosting
through your app servers that are then passing
11264.939 -> your information to the database, read information,
instead of hitting the database, if it's frequently
11265.939 -> access to the same as gonna come straight
from the database, be stored in the cache,
11266.939 -> and you'll be good to go.
11267.939 -> Now, let's talk about killer.
11268.939 -> And we're going to talk about killing in the
capacity of databases. And it's really great.
11269.939 -> We're going to talk about the AWS proprietary
cue, which if you're going to be in a multi
11270.939 -> cloud environment you can't use and I'll tell
you what you could use instead. But we have
11271.939 -> to discuss the AWS proprietary technology,
because this is an AWS exam. So what is killer
11272.939 -> killing is just a means to schedule your delivery,
where we all have formed killing for the Americans.
11273.939 -> I'll give the example that's used in England,
because a queue is just a lie. So if you go
11274.939 -> to England, and you want to get on the plane,
they see, please form a cube, which is a line.
11275.939 -> And then they say anybody with health issues
gets on first. Anybody that's got a first
11276.939 -> class ticket gets on second. Anybody in the
rear of the plane that gets on third, and
11277.939 -> they migrate it on? It's killing your schedule.
Now, why do they do it? Well, when I was a
11278.939 -> kid, and I went to my home airport in Greece,
and they said, Everybody get on the plane,
11279.939 -> it was like we're all rushing to get on the
airplane, it was kind of scary. Everybody's
11280.939 -> trying to get in the same day or the same
place, it's going to the same time. So to
11281.939 -> manage and schedule the delivery, who gets
in the seats, the airplanes basically. So
11282.939 -> first, second, third. Now imagine we've got
a really critical mission critical business
11283.939 -> thing. Got our web server. And we've got let's
say Abigail is here. So Abigail had a blue
11284.939 -> wrench. Abigail has probably the most beautiful
cat in the world, Noni, even though Cindy
11285.939 -> might be jealous if I said that, but it's
one of the prettiest cats I've ever seen.
11286.939 -> And let's say Abigail, I'm running a business
and she wants to buy cat toys for her beautiful
11287.939 -> cat Noni. And she hits the website, which
is opening. And then she hits my application
11288.939 -> server and logs in. And then she buys 10 Fuzzy
cat balls, three fuzzy cat mice. And that
11289.939 -> message has to be sent to the database. Now
if the database is busy when Abigail is trying
11290.939 -> to buy cat toys, and only the beautiful cat,
I don't get the order, which means as a business,
11291.939 -> I lose money. And Abigail's cut, Noni is sad
because she didn't get her fluffy cat toys.
11292.939 -> So we can have that split, the Q news is an
intermediary stop. So first, the girl has
11293.939 -> the website makes beautiful cat toys.com.
And then that go to the application server
11294.939 -> where she logs in. Then she orders the beautiful
cat toys, the message stops in a queue. And
11295.939 -> as soon as the database has capacity, it gets
taken out of the queue placed into the database.
11296.939 -> And that way the business doesn't lose any
orders. So that's why organizations use killer.
11297.939 -> So killing is just a means to schedule your
data delivery, choosing us using lots of applications
11298.939 -> as well. We do it to decouple the traffic
environment from our systems. Here's a picture
11299.939 -> that we drove cash sender sending, I'm sorry,
I have a cube I'm sorry, sender sending message
11300.939 -> into the queue. I've been talking about a
queue, the message deposits in Nikhil, when
11301.939 -> the receiver is ready, they pull it from the
queue. And then the data the message is removed
11302.939 -> from the queue. So simple, elegant environment
killing is used in everything from networking,
11303.939 -> to applications to databases to jumping on
an airplane. Now, when you use Amazon, you've
11304.939 -> got two queues, they've got the Amazon Simple
queuing system, which is their proprietary
11305.939 -> queue. It's a prebuilt queue, which means
you shouldn't be using it if you're dealing
11306.939 -> with multi cloud. If you're dealing with multi
cloud, you've got Apache Kafka, you can set
11307.939 -> up the same queues across all your clouds.
But this is the AWS proprietary one, which
11308.939 -> is going to be what's on your AWS exam. Now
with a standard glue, they use what's called
11309.939 -> FIFO. As soon as the message has come into
the queue, and they can be drained or drained
11310.939 -> out of the queue. Fastest and first and first.
I'm sorry. So first kind of queue is a simple
11311.939 -> queue. Fastest in fastest out fastest in vs
out. And why do we use a standard kill? It's
11312.939 -> most scalable, and it's the fastest? What's
the problem? There's no guarantee of message
11313.939 -> delivery. Now does it really matter? If I'm
getting 100,000 orders for cat toys if Abigail's
11314.939 -> cat comes in before Christmas cat who comes
in before Michelle's cat who comes in before
11315.939 -> Mike's cat? As long as all the cats get the
cat toys? No, it doesn't matter. But if I
11316.939 -> had an application that was dependent upon
the messages being correct. We could with
11317.939 -> SQS, we could create what's called the FIFO
queue or first in our first out queue where
11318.939 -> message one comes in, the message goes out,
that message still comes in and goes out.
11319.939 -> But when you do that we're losing the cost
of performance. Because what if message two
11320.939 -> is 10 times greater than the size of message
three, four, and five, and it slows everything
11321.939 -> down. Now, how does this queueing help? Well,
let's walk through an example. Let's go look
11322.939 -> at look at the CPU performance of systems.
So let's go back to our three tier architecture
11323.939 -> here. We've got our web servers, app servers,
our queue going into a database. And here
11324.939 -> we go, we're going to be coming into the database
that is nothing other than cat toys. So if
11325.939 -> we don't have a queueing system, our traffic
orders aren't going to be normal. Maybe we
11326.939 -> got more orders at breakfast during lunch
and those kinds of sectors. So what have we
11327.939 -> chosen to do? You'll see your CPUs are going
to spike up and down and up and down, up and
11328.939 -> down. And we're going to be reaching times
where our CPU performance is 100%. And we're
11329.939 -> a disk performance will be 100%. And we'll
lose messages. And we're going to have other
11330.939 -> times where systems are going to be sitting
idle, and everything's good. That's not a
11331.939 -> good situation. By adding the queue, which
you can see, as we can smooth out the CPU,
11332.939 -> and disk performance, it may be 40%, as opposed
to going from basically 20% to 100%. And as
11333.939 -> you can see, messages come in from the web
server to the app server, they get dropped
11334.939 -> in this queue. And they get placed in the
database when needed. So when do we use it
11335.939 -> to increase scalability, and there's lots
of right requests to decouple our application
11336.939 -> architectures. So that if one thing goes wrong,
we don't lose messages, extra assurance that
11337.939 -> you don't lose messages. Now we're going to
talk about a couple of AWS tools. Now, somebody
11338.939 -> asked me about, hey, how do you take your
information from Monday to base could you
11339.939 -> backup to another database, and I said, you
wouldn't want to. But what if you are migrating
11340.939 -> your data out of one database to put it into
another database, or you're pulling data out
11341.939 -> of your database to do something else. Typically,
you need some form of tool that's designed
11342.939 -> to do it, you can extract your data, meaning
it pulling it out, transform your data to
11343.939 -> be in whatever format, it needs to be another
database and then loaded into another database.
11344.939 -> Now, every database has their strengths and
weaknesses. One database might be able to
11345.939 -> be more scalable, one gives you better information
between variables to make a different kind
11346.939 -> of business decision. And we're going to need
to be pulling information from databases to
11347.939 -> another. Now, the less of this we do, the
better. Because anytime we translate something
11348.939 -> to something else, we lose something. Now,
in Greece, if someone says, I'm going to change
11349.939 -> your life, and he's they're going to beat
the living daylights out of you, and it's
11350.939 -> not a good thing. But if I told Chris, let's
change, I'm gonna change your life, you'd
11351.939 -> say, Oh, you're gonna come to my house and
choose lightbulbs. I mean, so yeah, I'm gonna
11352.939 -> come bring you fancy LED light bulbs. Never
have anything negative to say about Chris,
11353.939 -> my chief operating officer. He's amazing.
But what we're talking about is, you know,
11354.939 -> that's the problem with these ETL tools. When
we pull something and go somewhere else, things
11355.939 -> don't always translate. Now, Amazon has their
own fully branded ETL tool. Of course, there's
11356.939 -> other very good commercial tools in the industry
that are designed by database companies and
11357.939 -> special ETL companies what to use, that's
up to you. But Amazon has an ETL tool called
11358.939 -> glue, and is their branded ETL tool. And it's
used to pull information from one database
11359.939 -> and put it into another one. Amazon has a
fully managed serverless ETL cool, they call
11360.939 -> it glue. And basically speaking you pine glue
to where your data is stored. It discovers
11361.939 -> your data creates a metadata catalog. And
after the data's catalog is courier searchable.
11362.939 -> And from there, whether you want to copy your
data loaded into a database, data warehouse,
11363.939 -> that's kind of your thing.
11364.939 -> Pretty simple here.
11365.939 -> Can see we're using three databases. And we're
trying to use something to take the information
11366.939 -> from one source of information and put it
into another source of information. That's
11367.939 -> what we're doing.
11368.939 -> Now let's next talk about the schema
11369.939 -> conversion tool. The schema conversion. The
schema conversion tool is something that will
11370.939 -> help you migrate databases. So the AWS schema
conversion tool as CTE is an AWS managed service
11371.939 -> that simplifies the moving of lende database
and into another. So if you are going to your
11372.939 -> Oracle database in the data center, and you
want to move it to Amazon Aurora, you're going
11373.939 -> to need to get your data out of Oracle and
into Aurora. And that's what the schema conversion
11374.939 -> tool is designed to do. When you migrate a
database to AWS, the schema of your source
11375.939 -> database is going to be analyzed. Typically,
there are OLTP slash O lab, and they need
11376.939 -> to get converted into a format that's used
by the target database. And the schema conversion
11377.939 -> tool gives you a graphical interface to do
these automatic schema conversions. Trust
11378.939 -> me, these schema conversions are never going
to be perfect, you're going to do the conversion,
11379.939 -> and then you're going to have to fine tune
your data before you stick it into the next
11380.939 -> database. We can use the schema conversion
tool for migrating data between different
11381.939 -> databases and convert them it's a helpful
way to to migrate your data from one database
11382.939 -> to another. And because it's an ETL, tool,
extracts, transforms and loads existing. Let's
11383.939 -> talk a little bit about high availability
network design. Sorry, database design. Now
11384.939 -> how do you design a database for high availability?
Well, truthfully, he put it in three clouds.
11385.939 -> But minimum minimum minimum, you put your
database in multiple data centers, otherwise
11386.939 -> known as multiple availability zones. Remember,
AWS defines their network and their systems
11387.939 -> and the regions and availability zones. Regions
are a large geographic area, like a continent
11388.939 -> or part of the continent. And availability
zones or data centers inside of those continents.
11389.939 -> And high validate database design minim uses
multiple availability zones, so copies from
11390.939 -> database one to database two. Now by doing
this, you're not increasing your performance.
11391.939 -> You're creating an active database in one
place, and a failover database someplace else.
11392.939 -> So if data center one goes down, data center
two comes back. If the primary database fails
11393.939 -> on the system, the primary server fails, the
backup comes up. It's pretty cool. You're
11394.939 -> right to the main database, and it synchronously
copies it to the backup.
11395.939 -> So what's it look like? Looks like this.
11396.939 -> We've got our web servers or app servers in
our databases. And you can see we've got our
11397.939 -> main database and availability zone one, which
is data center one, we've got our backup database
11398.939 -> in availability zone two.
11399.939 -> So what will cause your multi availability
zone database to failover? Well, your database
11400.939 -> dies or fails, which is kind of beautiful.
One of the data centers has a power outage
11401.939 -> or network outage or any kind of outage, switch
over the next data center. He changed the
11402.939 -> database instance type. Poof, it's gonna switch
you over to the backup, which is beautiful.
11403.939 -> You put the database under maintenance, like
upgrading the operating system or patching,
11404.939 -> it's going to send you the backup. If you
manually reboot the system like with a reboot
11405.939 -> with failover. And poof, you're going to go
to the backup system. Now the next topic that
11406.939 -> we're going to be covering is networking.
I'm going to basically talk a little bit about
11407.939 -> IP addressing a little bit about the OSI or
open systems interconnect modeling. I'm going
11408.939 -> to touch on subnets without getting deep into
them. briefly talk about route summarization.
11409.939 -> And then we're going to stop there. I'm going
to tell you right now, we know that this is
11410.939 -> going to be glancing over these things. I'm
also going to tell you that the AWS advanced
11411.939 -> networking is too Junior for what you guys
need to know. So next month, we're going to
11412.939 -> do an AWS advanced networking course plus
the stuff you need to know. We're going to
11413.939 -> have a lot of subnetting and super netting
and BGP and routing things. So let's briefly
11414.939 -> talk about the OSI model. So what is the OSI
model? Well, for network Architects like me,
11415.939 -> network engineers like I used to be and anybody
that's designing systems, we need to have
11416.939 -> a common language or lexicon. You want to
get kicked out of a Chief Information Officers
11417.939 -> office and fired and Bell three minutes. Tell
him about your EC two instances and s3 buckets.
11418.939 -> He's gonna laugh at you or she's gonna laugh
at you because they're gonna say, I don't
11419.939 -> know what that marketing variable is. No by
comparison, if you'd walk in that Chief informations
11420.939 -> office, and you talk to them about their 10,000
10,000 virtual machines, and their six pet
11421.939 -> bytes of object storage. Now you're speaking
the same language. When we speak different
11422.939 -> languages we have Earth. So when it comes
to system design, or system troubleshooting,
11423.939 -> we must speak the same language. While we're
at it since we're going long, everybody please
11424.939 -> give me a hashtag AWS Certified Solution Architect.
So now we must speak the same language a common
11425.939 -> language a common lexicon. So Alex is here
Alex is great. If I say Alex posts isa scimitar
11426.939 -> he's gonna say EMA Doxie postseason Mikey's
because we're speaking the same language.
11427.939 -> But if we had to translate that into another
language, things get lost in translation.
11428.939 -> So when we communicate the network, we have
to communicate it in terms. So we've come
11429.939 -> up with a seven layer model that describes
networking. Now I'm going to tell you right
11430.939 -> now, networking professionals like me, work
at layers one through four, we don't go above
11431.939 -> that at all. But we also have to know about
all of it. So let's talk about the seven layers
11432.939 -> at layer one. That's the physical layer. Now
what are we talking about? If the physical
11433.939 -> layer is a wire, what are we transmitting
over this physical layer? Electrons right.
11434.939 -> Now, if we're going to be dealing with a fiber
optic cable, what are we going to be transmitting
11435.939 -> laser light, which is what photons Okay, so
the physical layer is the physical connection
11436.939 -> between our devices. Now this physical connection
can be a wireless thing too, but that's the
11437.939 -> now we're getting into some weird stuff. So
let's just talk about wire. Physical layer
11438.939 -> is wire or you're transmitting photons or
electrons to send bits, bits and pieces of
11439.939 -> data. Now, if you have ever had a computer,
you notice that you plug it in to the Ethernet
11440.939 -> card, right. And the Ethernet card is layer
two of this, that's the actual physical device,
11441.939 -> you're plugged into layer one wire called
the physical layer. Layer two, we've got a
11442.939 -> MAC address and your Ethernet card. It's called
the data link layer. What do you send at the
11443.939 -> data link layer frames. That's where the first
club that I worked on in 1996 was called frame
11444.939 -> relay. Because we send frames, layer one wire,
layer two Ethernet card, MAC address. Now
11445.939 -> layer three is where the fun begins. For network
engineers and architects like me, this is
11446.939 -> where we put a logical address, the IP address
manually gets assigned to your system. It's
11447.939 -> not hard coded into it like the MAC address,
which is your Ethernet card, that's your data
11448.939 -> link. So layer one wire, layer two card layer
three IP address. Now when we send our data,
11449.939 -> we have to determine the optimum way to send
it. If we need reliability, we use TCP or
11450.939 -> transmission control protocol. And we'll cover
this much more in depth in the AWS advanced
11451.939 -> networking plus what you need to know course.
Now what if we wanted to send real time data,
11452.939 -> we would use the uniform data gram protocol
or UDP traffic. So that's how we send the
11453.939 -> data called transport. So layer one wire there
to card layer three IP address, layer four,
11454.939 -> the method that we send it. So layer one bits
layer two packets, layer Earth, I'm sorry,
11455.939 -> layer one bits, layer two packets, layer three
frames, layer four, we're sending segments.
11456.939 -> Now there's this weird layer five session
protocol. Basically, this controls the connection
11457.939 -> on both sides. What's being sent here as data,
me think of an example as a socket. Then we're
11458.939 -> gonna get to layer six, which is presenting
our data at the presentation layer, which
11459.939 -> presents all this lower layer stuff to the
application. Layer six of the presentation
11460.939 -> layer also does encryption. And layer seven,
what we're talking about at the application
11461.939 -> layer, which is the application so you go
to a web browser, that's a layer seven application,
11462.939 -> layer one wire, layer two card, layer three
IP address, layer four transport protocol,
11463.939 -> TCP, UDP, ICMP, layer five session controls
the connection, layer six presentation deals
11464.939 -> with encryption. And the layer seven is application.
Now when we're dealing with the system, we
11465.939 -> need to address the system. So if I want you
to send mail, to super chat over here, I need
11466.939 -> to know Charles IP address and tell his mailing
address, because if I didn't, I took a letter.
11467.939 -> And I wrote child T fam, Cloud Architect extraordinaire,
and I didn't have her I've heard her heard
11468.939 -> city state street address. You know, the mailman
or mail woman might not know how to get the
11469.939 -> child Cloud Architect extraordinaire, though,
she probably wouldn't. So because of that
11470.939 -> we need an address. But if I want to send
data to if a dog gets computers, another fantastically
11471.939 -> Technical Professional over there in Europe,
I need to know her mailing address or her
11472.939 -> IP address. So when we're dealing with data
on a network, we must know the destination
11473.939 -> address we're sending it to. And that's why
many of us, for example, can do the following.
11474.939 -> They can do one of these three things. For
example, they have the ability, you can have
11475.939 -> an address 123 Main Street, right. But somebody
else has a different zip code, or postal code
11476.939 -> for those of you that are not in the US. So
every device needs to have an IP address,
11477.939 -> and it needs to be unique. There's going to
be two versions of IP addressing 99% of what
11478.939 -> we're dealing with is ipv4. ipv4 has been
around forever, it's still 90% of what we're
11479.939 -> dealing with. But there's also ipv6, which
we're gradually slowly adopting. When you're
11480.939 -> dealing with ipv4, we have public addresses
and private addresses. So here's the problem.
11481.939 -> When ipv4 was invented many, many years ago,
nobody knew what the internet was going to
11482.939 -> look like. Nobody thought of Internet of Things,
whether just other sensors, IP enabled refrigerators,
11483.939 -> IP enabled, Mark phones, six houses having
IP TVs in their house printers. So the problem
11484.939 -> is, if we do two to the 32nd power, there's
not that many IP addresses. There's a couple
11485.939 -> billion but now we're dealing with an environment
where many people have five to 10 different
11486.939 -> IP addresses per person, little businesses.
We ran out of IP addresses a long time ago.
11487.939 -> So the Internet Engineering Task Force and
if you want to learn networking stuff, you
11488.939 -> got to go to the Internet Engineering Task
Force ietf.org created a specification, otherwise
11489.939 -> known as a Request for Comments called 90,
the RFC 1918. And they established three places
11490.939 -> that all organizations internally use their
IP addresses. They're called private addresses,
11491.939 -> RFC 1918, addresses. Those addresses are as
follows the 10.0 dot zero slash eight, the
11492.939 -> 172 16 dot 0.0, all the way to the 172 dot
16, I'm sorry, the 172 dot 31 dot 0.0 slash
11493.939 -> 16. So what that really comes down to is 170
2.1 68 0.0, slash 12. And the 192 168 dot
11494.939 -> 0.0 supernet. And those are private addresses.
They're only allowed on internal systems.
11495.939 -> Now you're gonna hear the term cider range.
Now, a long time ago, back when the dinosaurs
11496.939 -> roamed the earth. And, you know, I first started
working in networking, which was lots of fun.
11497.939 -> You know, we had this thing called Classical
IP addresses, we don't have them anymore.
11498.939 -> And that basically meant there were things
that would apply to classical boundaries,
11499.939 -> I'll see what these boundaries are, they don't
exist anymore. And what they used to be is
11500.939 -> no class A addresses all how to slash a. Class
B addresses all how to slash 16. Class C addresses
11501.939 -> will fit in this space. And we're slash 24.
Class, these were used for multicast, we still
11502.939 -> do use the multicast addresses. But here's
the point, any class A address, but actually
11503.939 -> use up burn 16 million IP addresses, almost
17 million. And now remember this every device
11504.939 -> on your server, if you've got three network
cards needs to be on a different subnet. So
11505.939 -> if you use three Class A addresses inside
of your server, you would ultimately burn
11506.939 -> over 49 million addresses on a single server,
which is obviously a problem. So what happened
11507.939 -> was IP classes all went away about 20 years
ago used to have to put on the Cisco router
11508.939 -> IP classes until it became the default. And
classless meant we no longer have AC or by
11509.939 -> standard subnet boundaries, and we can subnet
or supranet as needed. I'm going to cover
11510.939 -> that extensively in the AWS mass networking
plus what you need to know. So what happens
11511.939 -> is modern routers enable us to subnet or superordinate
or change the castle masks on our network
11512.939 -> boundaries. And it's called classless inter
domain routing. All that means is we're not
11513.939 -> bogged down from the cost a Class B Class
C type things that you actually
11514.939 -> so consider AWS, let's use classless inter
domain routing, like everything else. Now
11515.939 -> normally speaking, you're gonna be given a
cider block that you use for your IP address.
11516.939 -> And you're gonna have to subnet that down.
So I can't in this discussion go over subnetting.
11517.939 -> But I can't actually give you some examples
of it. In order to use our address base, we've
11518.939 -> got to chop it down. So what does this really
really mean? Submitting? Well, let's say right
11519.939 -> now, let's say you had a whole pizza, right?
And you were just one person, but chances
11520.939 -> are, you're not going to eat this extra large
18 inch pizza by yourself. If you do, you're
11521.939 -> probably have some health issues long term
eating that way. You might divide that pizza
11522.939 -> into three pieces with your buddies or four
pizzas with your buddies. The subnetting is
11523.939 -> basically taking a large IP block and chopping
it down to the smallest thing. Maybe you've
11524.939 -> got some skinny friends that eat a quarter
of a piece of pizza. And you could chop it
11525.939 -> into 16 pieces, and each one of your skinny
friends eats 116 to the pizza. Maybe you got
11526.939 -> a couple of big friends need to split it into
two half of the pizza. Maybe got some hungry
11527.939 -> friends. And you need three pizzas for two
people I don't care. subnetting is really
11528.939 -> about taking your IP address blocks, chopping
them down and making them exactly what you
11529.939 -> need. So for example, this was a Class C network
192 168 dot 1.0 slash 24. It's a Class C that
11530.939 -> means 254 addresses on this single subnet.
But it might make sense if we don't need all
11531.939 -> those to chop it down the small segments.
So for example, I created one subnet 192 168
11532.939 -> 210 and created another subnet 192 160 8.1
dot 16. I created a third subnet 192 168,
11533.939 -> one dot 32. I can create another subnet 192
168, one dot 48. And what you're seeing is
11534.939 -> picking this one classful address, chopping
it down the multiple ones and got it. Now
11535.939 -> that's called subnetting. Here's another example.
I can show you this exact subnet that I just
11536.939 -> did. I can take this one night this one subnet
and chop it into multiple little things. Now
11537.939 -> when you subnet an address, you always have
to remember that you normally lose two addresses.
11538.939 -> So normally use you need as the first address
and the last address. So let's take this first
11539.939 -> subnet. The 192 168 1.0 is actually used by
the router as the network. That's what's going
11540.939 -> to be in the routing table. The end of that
subnet is what's called a subnet directed
11541.939 -> broadcast or an IP directed broadcast. In
which case, I would set it to 192 160 8.1
11542.939 -> dot 15, which is all hosted set because I
couldn't use those two. And then we'd have
11543.939 -> 14 usable addresses. Now when you're on the
AWS cloud, basically they reserved five addresses
11544.939 -> out of out of them automatically, the network
one and the broadcast one plus three others.
11545.939 -> So they always lose five IP addresses per
subnet with AWS.
11546.939 -> I'm just going to end on this route summarization
concept. So if you're connecting to AWS, you've
11547.939 -> got to give him routing information connecting
back to you. If AWS doesn't know how to reach
11548.939 -> your data center, and you don't need a reach,
or something that's an AWS, nobody's talking
11549.939 -> to anybody, it seems no matter how much stuff
you have in the cloud, you got nothing. Something
11550.939 -> my grandmother would call book is nothing
zero, no matter. All the beautiful cloud no
11551.939 -> network, you got nothing. So super netting
is basically how you take the route in your
11552.939 -> some in your routing table. And you aggregate
those routes. And therefore you can send a
11553.939 -> little bit of information to the cloud provider
versus all of your cloud provider. And what
11554.939 -> does that really look like? Well look at it
this way. If you've got four subnets, these
11555.939 -> are four Class C subnets. That you have. And
you want to only send one route AWS, you can
11556.939 -> route summarize, or aggregate these routes,
pop it into BGP until AWS, hey, to reach my
11557.939 -> data center, all you need to reach is when
I need to 168 dot 0.0 slash 22. That gets
11558.939 -> you to the data center. What does that really
like? Love any of you flown overseas, flown
11559.939 -> to a new city, you don't know where you're
going in the New City. So let's say I want
11560.939 -> to go to Denmark, I think he would like is
in Denmark and I want to go visit her. I get
11561.939 -> to the Denmark airport. And then I get a kid
into a taxi. And he give the taxi even like
11562.939 -> is not IP address or the street address. And
the taxi knows how to get there. I don't know
11563.939 -> how to get there. I just need to know how
to get to the airport. From the airport, I
11564.939 -> need to get to a taxi and the taxi driver
needs the intelligence. Why is this so critical?
11565.939 -> Well, too many routes in the routing table
you have routing problems. But also AWS only
11566.939 -> takes 100 routes. Normal enterprise might
have 30 or 40,000 routes in the routing table.
11567.939 -> So if we don't summarize, we can't we can't
really deal with AWS because they have very
11568.939 -> limited networking. Not because they're bad
at all. Because you know, when I connect to
11569.939 -> the internet or a normal router, and run BGP,
I'm taking an eight or 1000 routes. But when
11570.939 -> I connect to the content of the cloud provider,
imagine them taking 3000 routes 10,000 routes
11571.939 -> from 50 to five and 1000 different companies.
The routers wouldn't handle it so they make
11572.939 -> you route summarize and only send 100 rounds.
So for an architect Sukumaran being submitting
11573.939 -> route aggregation is a really critical skill.
Last thing I'll end with today is just ipv6
11574.939 -> addresses. ipv6 addresses are just a newer
form of IP addressing. Normally speaking with
11575.939 -> IP addresses, we have two to the 30/32 power
of addresses. When we're dealing with ipv6,
11576.939 -> we've got 120 bit hex and decimal address.
So normally binary is zero and one hexadecimal
11577.939 -> is 0123456789. Alpha Bravo, Charlie, Delta
Echo Foxtrot. So that's how we get to 16.
11578.939 -> So it's 16 to the 120/8 power, infinitely
more address spaces much more scalable, typically
11579.939 -> used by mobile phones. Every interface in
AWS is automatically assigned an ipv6 Global
11580.939 -> Address. Most people remove this global address
because you don't want to dress as a turd
11581.939 -> Not using and just use the IP before
11582.939 -> we're going to talk about my absolute absolute
favorite part of the cloud. You know what
11583.939 -> it is. It's the VPC or the virtual private
cloud. Why? This is where we get to do as
11584.939 -> much networking as possible. And you guys
know me, I'm a network person. Back when the
11585.939 -> CCIE was a complicated examine, it was challenging
when it used to be two days. I remember taking
11586.939 -> mine my CCIE number 7417. And I love love,
love love networking. Today we're going to
11587.939 -> talk about the VPC. Now, under the VPC, we're
going to talk about a lot of things. But we're
11588.939 -> going to talk a little bit about routing.
And we're going to talk about much more about
11589.939 -> routing, when we actually go through the AWS
advanced networking plus what you need to
11590.939 -> know. So we'll talk about that. That is a
little now but a lot when we do that, we'll
11591.939 -> discuss internet gateways. today. We'll discuss
egress only internet gateways. We'll discuss
11592.939 -> NAT instances, but also NAT gateways. We'll
discuss elastic IP addresses, VPC endpoints,
11593.939 -> VPC, peering, access control lists, security
groups, and we'll have some more fun as well.
11594.939 -> But I want to begin with, let's begin with
the routing tables. What is a routing table?
11595.939 -> Well, it's really a map of how your traffic
gets to its destination. And routers build
11596.939 -> maps the way routers typically build maps,
they run a routing protocol. Inside the network.
11597.939 -> It's called an Interior Gateway Protocol.
Typically speaking in today's world, it's
11598.939 -> using something called OSPF or intermediate
systems that our immune systems, routers identify
11599.939 -> with each other, and they tell each other
the state of their routes. When we connect
11600.939 -> to external entities, we use BGP, and I'm
going to show you graphically what that looks
11601.939 -> like. And it builds a table that says how
do we get from point A to point B? What's
11602.939 -> this table look like? It looks like this.
To reach Joey, go out my right arm to reach
11603.939 -> Nick go out my left arm to reach Sally go
north to reach Blake go out my my leg. So
11604.939 -> it's basically building a table. Now I built
the routing table for you in an Excel just
11605.939 -> so you can get a feel for it. And it's going
to look like this. The routing table is going
11606.939 -> to tell you the destination subnet and where
to send it. Now when it comes to routing,
11607.939 -> we're talking about the most specific route.
And if you notice, I have two routes, which
11608.939 -> are very similar. I've got the 192 168 dot
0.0 slash 16. And I also have the 192 160
11609.939 -> 810 slash 24. For those of you that know subnetting
and super netting and route summarization,
11610.939 -> you're aware that 192 168 dot 1.0 Slash 24
falls within the 192 168 dot 0.0 slash 16.
11611.939 -> That which one's more specific. The one with
a longer subnet mask the 192 168 dot zero.
11612.939 -> So if we want to reach the 192 168 1.0, we're
going to end up using the interface PC x dash
11613.939 -> 654321. But if we want to reach any other
subnet inside of that range, we're going to
11614.939 -> use the interface PC X 123456. And of course,
we have a default route, what is the default
11615.939 -> route mean? If you don't know where to go,
take the default route. And here you can see
11616.939 -> we've got a default route pointing to an Internet
Gateway. And there you go. So that's realistically
11617.939 -> what we're talking about. Now the VPC has
a routing table. But let's talk about what
11618.939 -> they really look like in real life. Let's
assume on the left side of this, this 64513.
11619.939 -> This is your entity, your data center. And
let's assume for right now, on the right side
11620.939 -> of this, we've got the AWS cloud, the Azure
cloud, the Google Cloud or other data center,
11621.939 -> another company, it doesn't matter, it's all
the same way. Now inside of your data center,
11622.939 -> or the AWS cloud, they're going to have to
calculate the routes in between their stuff.
11623.939 -> And that's us visit an IGP or an Interior
Gateway Protocol. We'll discuss that much
11624.939 -> more when we cover the AWS events network.
But for right now, understand, inside of an
11625.939 -> organization, routers have routing protocols
that determine the best path for the traffic.
11626.939 -> Kinda like your GPS does. When you go to somebody's
house, make a lot goes two miles make a lot.
11627.939 -> Go three kilometers, make a right kind of
keep that in the back of your mind. Now you'll
11628.939 -> note that we Have where it says EBGP peering
between the two organizations. Now BGP is
11629.939 -> a path vector routing protocol that's used
to connect to external entities. When you
11630.939 -> connect your cloud providers, they are not
your organization. They are an external company.
11631.939 -> And you're going to use BGP. Now we're going
to be using BGP to exchange certain information.
11632.939 -> I'll talk about what that is. But understand,
internally, all organizations have an Interior
11633.939 -> Gateway Protocol. And in between them, they
use it, they use an exterior gateway protocol,
11634.939 -> because BGP, and when you connect to AWS,
you are going to be using BGP to exchange
11635.939 -> routing information, especially if you're
using a direct connection with the required.
11636.939 -> And if you're using, if you're using a VPN,
you could use the you could use BGP or create
11637.939 -> a static route, but you're gonna want to use
BGP, because otherwise you're gonna be manually
11638.939 -> updating route and that is a night. I can't
get into a full BGP discussion here. But I
11639.939 -> can tell you this right now, when we do the
AWS events that are coming very soon, I will
11640.939 -> spend hours on BGP hours on subnetting of
super nine will spend time on interior gateway
11641.939 -> protocols, we'll spend substantial time on
switching. And then we'll cover the silly
11642.939 -> easy AWS advanced networking, which is honestly
an intro to junior level networking, we're
11643.939 -> going to add our critical networking up front
so you guys understand it because it's critical,
11644.939 -> critical knowledge. So let's talk about a
little bit about dynamic routing with BGP.
11645.939 -> BGP is the de facto standard, your exterior
gateway protocol. And because AWS, Azure or
11646.939 -> Google, you connect with an external externally,
you'll be using BGP to connect to them. Now,
11647.939 -> the reason we use BGP as opposed to an Interior
Gateway Protocol as a solid, the tunability
11648.939 -> of it is incredible. The scalability as an
increment is incredible. Then I connect to
11649.939 -> three different internet service providers,
the BGP, I'm taking in about 800,000 routes
11650.939 -> per internet service provider. I mean, it's
incredibly incredibly, incredibly there. So
11651.939 -> it's scalable. Whereas interior gateway protocols
like OSPF kind of die once you hit 30,000,
11652.939 -> subnets or so. And then there's lots of tuning
and manipulation plus, we can't filter routes
11653.939 -> between us. And BGP gives us the ability to
filter routes. And why does this matter? If
11654.939 -> you don't have a path to it, you can't reach
it. So let's say I've got a buddy over there
11655.939 -> in England, I got lots of friends in England.
And here I am in South Florida. Now, if there's
11656.939 -> no airplane, and there's no bridge, I couldn't
visit my friend. There's no route. So with
11657.939 -> BGP, you can provide the paths that you want
people to access. And you can provide no route
11658.939 -> to the pets that you don't want to access.
Now, how would I get from Florida to England?
11659.939 -> Well, I could try and swim. But that's not
going to happen. I'm going to run out of fuel
11660.939 -> and beaten by sharks. I need a path, I need
a route. And BGP provides the task, it provides
11661.939 -> the routes the knowledge intelligence and
how they get your data from point A to point
11662.939 -> B. Now, when an organization wants more than
one connection to the internet, like two of
11663.939 -> them, they can either have one default route
and the backup default route, in which case
11664.939 -> they use one another one since they're sleeping.
Or they can use BGP and they can load share.
11665.939 -> So BGP enables you to load share, traffic
engineer and tune your data. It's magical,
11666.939 -> magical. I spent over 10,000 hours learning
BGP, and working on BGP, and trust me, people
11667.939 -> like me, that are network architects can do
really cool stuff with us. And if you want
11668.939 -> to be a great cloud architect, you must be
able to understand BGP, otherwise your systems
11669.939 -> will fall apart. So we'll cover that in more
depth with the AWS advanced networking. It's
11670.939 -> not covered in the AWS events, networking,
but we'll cover it anyway. We do that completely
11671.939 -> free. Now, when you use BGP, you kind of have
to identify yourself. So you know, basically
11672.939 -> saying, Hey, yo, Mikey, yo, Joey, let's be
friends. And that's really what has to happen.
11673.939 -> You actually have to connect to each other,
identify yourself and set up your policy.
11674.939 -> So like I said, when you use a direct connection
to AWS, you must use BGP. Now BGP has got
11675.939 -> a lot of tuning, tuning things. We cover the
AWS advanced network, we're gonna get deep,
11676.939 -> will prepend a ss and leak specific prefixes
and change the weights, play with the local
11677.939 -> preference is going to be party time, party
time, party time. That's the belt the only
11678.939 -> time when they talk about networking, we get
to put my propeller hat on and get real geeky
11679.939 -> anymore, and I love it. Because I started
out as a techie, it's just that I can't be
11680.939 -> a techie as an architect. I gotta be a business
executive. But I'm gonna talk about BGP, but
11681.939 -> my techie hat on and it's fun, fun, fun.
11682.939 -> So Well, one thing we'll talk about as AWS
supports the BGP community, no export. I'll
11683.939 -> show you what that means in a second. The
AWS BGP implementation supports the proprietary
11684.939 -> Wait, which is great because lots of other
routers due to local preference as pass specificity
11685.939 -> routing information. So it's a pretty standard
BGP implementation. But, but but AWS only
11686.939 -> allows you to inject a very small number of
routes, like 100. Zero, it's basically nothing.
11687.939 -> So when you're going to be connecting to AWS,
you better have somebody that understands
11688.939 -> IP addressing subnetting or supernova. So
you can use summarize and route aggregate.
11689.939 -> Now, let's briefly talk about what note export
means. So normally speaking with BGP, let's
11690.939 -> say you've got three of us that want to talk
to each other. Look up my data center, my
11691.939 -> superstar architect, Cloud Architect, child,
Alonso, also from my team, my chief content
11692.939 -> officer on our team, and we will exchange
information between us in a normal environment
11693.939 -> if I connect a child and now tell collect
so Alonso I know how to reach Alonso through
11694.939 -> child, Alonso knows how to reach me through
child. So what happens as Alonso is traffic
11695.939 -> wants to reach me. And here's what it'll happen.
It'll go through child to me, and then I'll
11696.939 -> respond, and here's what ultimately is going
to happen. I'm going to respond back my traffic
11697.939 -> will traverse trial and go through Alonso.
And we're all happy, right? Because we've
11698.939 -> got routing. But here's the problem. What
if child doesn't want to be the entire destination
11699.939 -> for the entire Internet to connect me through
Alonso? What would happen to make the simple
11700.939 -> is we tell Chow our routes. And Chow doesn't
tell anybody else our routes. So if, if by
11701.939 -> comparison, I tell show my routes, and Alonzo
Till's child hurled his routes around and
11702.939 -> child tells me her routes which are not putting
the arrow and and I tell chama routes, I can
11703.939 -> reach Jo know if Alonzo tells child harap
who Israel's and then child tells Alonzo his
11704.939 -> or has harassed they can talk to each other.
But if child doesn't send along those routes
11705.939 -> to me, I can't reach Alonzo. And that's typically
done via BGP community called no export. There's
11706.939 -> many other ways to do this. But AWS does support
that no export community to kind of keep that
11707.939 -> in the back of your mind. Alright, so we had
a little introductory BGP, we're gonna do
11708.939 -> it a lot better in a lot more depth when I
actually have, you know, four plus hours to
11709.939 -> do it. We do the AWS events, networking. Like
I said, it's not covered in AWS events, networking,
11710.939 -> but we're gonna cover it because you need
to know it. So how do you get to the internet?
11711.939 -> Well, you need a router that connects to the
internet. Now, what's the alternative name
11712.939 -> for a router? It's called the gateway. So
this is one of the few places where AWS didn't
11713.939 -> have their marketing people spend millions
of dollars to create a fancy name. That's
11714.939 -> doesn't mean any mean anything to anybody.
Internet Gateway, what do you think it is,
11715.939 -> it's a router that takes you to the internet.
I love this name. Because it's reality. And
11716.939 -> an Internet Gateway is going to be a virtual,
because it's cloud its own virtual router.
11717.939 -> And because it's a virtual router, not a physical
router, it can't go down. So this is going
11718.939 -> to be a highly available internet router.
Now AWS for certification points will tell
11719.939 -> you there's no bandwidth constraints or performance
limitations. Like there's always a bandwidth
11720.939 -> constraint or performance limitation. And
you'll have to figure that out as it as it
11721.939 -> takes to testing your applications. But at
the end of the day, the Internet Gateway is
11722.939 -> nothing more than a router that connects you
to the internet. So the way you create an
11723.939 -> Internet Gateway, as a very simple thing to
do, is you you attach an internet gateway
11724.939 -> to your V PC. You create a default route which
looks like 0.0 dot 0.0 slash zero. Planning
11725.939 -> to the Internet Gateway. You put a public
IP address on the Internet Gateway, why does
11726.939 -> it need a public address? It's going to reach
stuff on the public Internet needs a public
11727.939 -> address. And there you go, you're good. Now
here's the thing to remember. You've used
11728.939 -> an Internet Gateway. Now your stuff will be
accessible from the internet. Now, if your
11729.939 -> stuff is available from the internet as possible
from the internet, and you don't do something
11730.939 -> about it, you'll be hacked in about 15 minutes.
So when you're connected to the internet,
11731.939 -> you're going to need to do some serious security
things. Otherwise you're gonna get out. So
11732.939 -> let's look a little bit about what this looks
like. At least in concept and principle. Okay.
11733.939 -> Here you can see, we've got our stuff in our
VPC, where we have the term instances, you
11734.939 -> can think about them as maybe a web server,
an FTP server, whatever we want reachable
11735.939 -> by the Internet. The instances all need to
have a public IP because they're not behind
11736.939 -> a load balancer here. And the Internet Gateway
needs to have a public IP. And there you go.
11737.939 -> Our systems are going to be reachable through
the internet. And people can attach to our
11738.939 -> web servers, FTP servers, or any other kind
of server were put there. Everybody's happy.
11739.939 -> Let's say we've got a cat. My cat Cindy made
a website, www dot Cindy the cat.com. She
11740.939 -> puts it on some of these servers. And we've
got photos of my cat Cindy dancing, like cat
11741.939 -> Cindy sleeping, my cat Cindy climbing the
walls sitting on the roof running away from
11742.939 -> her scary friend, the main goon, which is
a beautiful cat that she doesn't like. So
11743.939 -> she hides on the roof and the cat comes and
it's all on our website. So kind of keep that
11744.939 -> in the back of your mind. Now your systems
are available from the internet.
11745.939 -> Now let's talk about something different and
egress only Internet Gateway. So let's talk
11746.939 -> about this ingress is traffic coming in? egress
is traffic going out. When this was first
11747.939 -> explained to me, it never made sense. So I
like to think of it as a parking lot. When
11748.939 -> you enter a parking lot to go to your favorite
pizza place. That's Ingress. And after you
11749.939 -> had your pizza, and you're full, you leave
that parking lot that egress. So let's talk
11750.939 -> about egress only internet gateways, they
allow your ipv6 traffic, not ipv4, which is
11751.939 -> 99% of your traffic, to go out to the internet,
and have stuff come back to them but not be
11752.939 -> reachable from the internet. So why on earth
would you ever want egress only internet traffic?
11753.939 -> Because it sounds crazy, right? Well, it's
not. So let's say you want all your systems
11754.939 -> secure behind the firewall, so nobody can
come into them. But you want your systems
11755.939 -> that are behind the firewall, and your users
to be able to go out to the internet to go
11756.939 -> by the by training from www.go, Cloud careers.com.
And then you want them to go to www dot cine
11757.939 -> the cat.com to look at some cat photos. And
then you want your person to be able to Google
11758.939 -> and Google something. And then you want your
system to be able to update their operating
11759.939 -> system from Red Hat, Ubuntu, Microsoft or
whatever. That's where you need egress only
11760.939 -> internet access, where you want your systems
to go out to the internet, be able to do something,
11761.939 -> allow the return traffic back in, but not
allow other traffic to come in. So that's
11762.939 -> what we're talking about when we talk about
an egress only Internet Gateway. It's for
11763.939 -> ipv6, it enables the traffic to go out to
the internet and come back. But your systems
11764.939 -> are not reachable. To how's it work? Well,
it's stateful. Just like a firewall, traffic
11765.939 -> goes out, comes back. Internal other traffic
externally tries to come in block block block.
11766.939 -> But here I am. And I want to go look at my
Facebook account where I've got cat Cindy
11767.939 -> photos, I don't have any cat photos on Facebook.
But let's say I want to go to my Facebook
11768.939 -> account, I would go through the egress only
Internet Gateway. And when the traffic comes
11769.939 -> back from Facebook, it would hit that fire
it would hit that egress only on our gateway,
11770.939 -> which acts like a firewall here and says yep,
Mike requested it send the traffic back to
11771.939 -> Mike. So no inbound electricity, traffic out
traffic back us for ipv6 systems to go out
11772.939 -> to the internet and come back. Now, we're
going to talk about a net instance, which
11773.939 -> was kind of an AWS managed service, which
has been sort of we don't recommend gi do
11774.939 -> this anymore. But there's still times where
you're going to need to create these on your
11775.939 -> own. So let's at least talk about what it
is. And not instance is basically a system
11776.939 -> like a virtual machine that's got two Ethernet
cards in there. To translates a private address
11777.939 -> into a public address. Now this was available
from AWS as an AMI, so basically a system
11778.939 -> image and it runs on an EC two instance. I
knew in this particular case, NAT is only
11779.939 -> going to the internet. You have to put part
of it in a public subnet. And part of it in
11780.939 -> a private subnet. And what happens is and
I'll show you later, Nat instance will then
11781.939 -> translate your private addresses to a public
address so they could go out your internet
11782.939 -> gateway. So no inbound internet access. And
the way this The work is as follows. Let me
11783.939 -> draw you a picture, you would keep your systems
in a private subnet, you would create this
11784.939 -> NAT instance, which is just a virtual machine
with two or four network cards. This NAT instance
11785.939 -> would do something called NAT overload, otherwise
known as port address translation. And it
11786.939 -> would translate your private IP addresses
into a public IP address, your system would
11787.939 -> have a default route to the NAT instance,
that instance would have a default route to
11788.939 -> the Internet Gateway, the NAT instance would
have an external IP address, the Internet
11789.939 -> Gateway will have an external IP address,
and all your systems would have access to
11790.939 -> the network, the internet. That's a standard
AWS NAT instance. Now what if you want to
11791.939 -> translate between two IP addresses? Well,
you could obviously create a Linux machine
11792.939 -> on your own, put two Ethernet cards in there
and translate between a private address and
11793.939 -> another private address. And why might you
want to do this? Well, let's say I address
11794.939 -> my system 10.0 dot 0.1. And about a company
who address their system 10.0 dot 0.1. Wait,
11795.939 -> they can't talk to each other, but if we nap
between them, and we can. So there's lots
11796.939 -> of use cases to use not only the ones that
were mentioned. Now, if you notice that NAT
11797.939 -> instance, requires an Internet Gateway to
work. So AWS likes to make people's lives
11798.939 -> simple. The whole point of the cloud is it's
simple. We lose features, we lose functionality,
11799.939 -> we lose performance. But it's simple. We go
to the cloud, because it's agile, it's fast,
11800.939 -> we don't need as much sophistication, because
they manage three quarters of the workload
11801.939 -> for us, which is kind of beautiful. That's
why we all love it so much. So AWS came up
11802.939 -> with a simpler, more elegant solution for
most people. And it's called the NAT gateway.
11803.939 -> And the NAT gateway kind of combined the NAT
instance, and our internet gateway in the
11804.939 -> same device. So my NAT gateway is a fully
managed not service. And not get was redundant
11805.939 -> inside of an availability zone, every availability
zone will require its own gateway. So what
11806.939 -> happens, you create the NAT gateway, in a
public subnet, it will have an we'll call
11807.939 -> it an external public IP address which AWS
likes to call it elastic IP for the life of
11808.939 -> the gateway, you'll put a default route in
your system to the NAT gateway. And then your
11809.939 -> systems will can reach the internet and your
traffic come back. But they will not be reachable
11810.939 -> from the internet. Remember, this is egress
only, just like the egress only Internet Gateway,
11811.939 -> except for the egress only internet gateways
for ipv6. And this is for IP version four.
11812.939 -> Simple stuff, simple stuff, simple stuff.
So let's look at this. Under the concept of
11813.939 -> what we're doing here, can see here we've
got our systems private subnet, we've got
11814.939 -> our NAT gateway, and they can go to the internet.
But remember, our systems will not be reachable
11815.939 -> from the internet, our systems, our servers
can go out there and update their operating
11816.939 -> system, click new operating system patches
and all kinds of good stuff goes through the
11817.939 -> firewall and get out to the internet, our
traffic and come back. simple, elegant solution.
11818.939 -> So now let's talk about the elastic network
interface. This, to me is the most ridiculous
11819.939 -> name in the world. When you have a server
to connect to network, you plug it into its
11820.939 -> Ethernet card. When you have a virtual machine,
guess what it's got an Ethernet card in it
11821.939 -> a virtual one usually, although it could be
a physical one if we talk about single route
11822.939 -> IO virtualization, which I'm sure will address.
But what's going on is, if you ever want to
11823.939 -> put your virtual machine connected to the
network, you need an Ethernet card. So let
11824.939 -> us AWS called the Ethernet card, your virtual
machines, they call it an elastic network
11825.939 -> interface. So by default, your systems come
up with a single elastic network interface.
11826.939 -> But if you want two systems to be on two different
subnets, well, then you could use two of them.
11827.939 -> Now in many certifications, they teach you
how to create something called the bastion
11828.939 -> host, which is about the fastest way to get
hacked, fastest way to get fired. So I'm not
11829.939 -> going to teach you how to do that. There's
a way to do it intelligently but 99% of them
11830.939 -> that I've seen out there are hacking events.
I've seen people get fired for putting these
11831.939 -> things up there. So I'm not going to teach
you how to do that because I want I don't
11832.939 -> want you getting fired, and then they keep
sending a lot of certification courses, but
11833.939 -> there's good reasons not to do it. We've got
a video on why you should never create a bastion
11834.939 -> host and my team could pop that in there.
But if you had a server that you wanted to
11835.939 -> have on two different subnets. So you could
put two network interfaces in there. And that's
11836.939 -> what we always used to call a dual home server.
Now, we can put them have a management subnet
11837.939 -> on one side versus another side inside outside
of our network. So there's lots of reasons
11838.939 -> we might want to do these things. So let's
talk a little bit about elastic IP addresses.
11839.939 -> Okay, now, AWS could just say public IP address,
and I'd be happy, happy, happy, happy, happy,
11840.939 -> right. But, you know, they don't. If you want
a public IP address from AWS, they have to
11841.939 -> stick the word elastic and everything. Because
they have to stick the word elastic and everything.
11842.939 -> They call it an elastic IP address, it just
means a public IP address. So here's a normal,
11843.939 -> you would get a public IP address, you've
got a network architect, like me, I need a
11844.939 -> public IP address, I go to my ISP, and I request
11845.939 -> one. And I own it until I'm done with them.
Now, by comparison, with AWS, when you need
11846.939 -> a public IP addresses, you get one of their
elastic IP addresses, they own the address,
11847.939 -> they give it to you for as long as you need
it. And when you shut your system down, it
11848.939 -> goes back into the pool. And they can go and
resell that IP address to somebody else. And
11849.939 -> elastic IP address can have a single public
IP address mounted to it like at the edge
11850.939 -> of a load balancer. Or it could be used in
a NAT overload situation like you wouldn't
11851.939 -> a NAT gateway, which provides port address
translation a
11852.939 -> little bit of an appearance of what's an elastic
IP address look like very, very simple and
11853.939 -> elegant, very simple and elegant. Here we
go. We've got our private systems. We've got
11854.939 -> our instances, which are sitting behind the
firewall, all using the public IP address,
11855.939 -> otherwise known as elastic IP address 3.3
dot 3.3 goes out to the internet, and we should
11856.939 -> be good to go. Pretty simple and elegant.
So let's get into the next thing. If you guys
11857.939 -> can give me all a hashtag that says AWS Certified
Solution Architect Associate and the chatbox.
11858.939 -> I know you're awake, I need to know you're
awake. I'm teaching here with laryngitis to
11859.939 -> try and make sure you guys have a good learning
experience. And I want to know you're awake.
11860.939 -> So now let's talk about VPC endpoints. VPC
endpoints are essentially devices that are
11861.939 -> high availability, and enable you to connect
to things. There's two kinds of endpoints.
11862.939 -> There's gateway endpoints. And there's interface
endpoints. Let's first begin with Gateway
11863.939 -> endpoints. Gateway endpoints are high speed,
high security access to AWS services. And
11864.939 -> what happens is it places a route in your
routing table. And gateway endpoints are typically
11865.939 -> to things such as Amazon s3. And what happens
it will put a router routing your routing
11866.939 -> table in order to reach AWS s3. So you'll
create an endpoint, it's going to create a
11867.939 -> prefix list. And I'll attach you to the endpoint.
The reason we're using the endpoint is it's
11868.939 -> going to provide secure access. Let me show
you what it would look like without the endpoint.
11869.939 -> So let's say we were inside of our V PC or
virtual private data center, how we want you
11870.939 -> to connect to Amazon s3. There's really two
ways that we could do it. way one would be
11871.939 -> to go all the way up to the internet, cross
the internet, and come back to AWS and reach
11872.939 -> your s3 bucket. Let's talk about why that's
ugly. Well, we have to go to the internet.
11873.939 -> And that's outbound traffic. And guess that
one's we're gonna pay for all that traffic
11874.939 -> to go to the internet. Now the internet is
not secure. So we're going to have to encrypt
11875.939 -> that traffic, then it's going to come back.
And so cost is a reason we don't want to do
11876.939 -> this. But the internet is not guaranteed as
no guarantee so the performance of the internet
11877.939 -> isn't good. And the internet's not secure.
So now we got to have to encrypt it. So let's
11878.939 -> think about Alternatively, if we didn't want
to go to the internet, per se, and we just
11879.939 -> wanted to use the AWS private network, and
network with guaranteed speed, guaranteed
11880.939 -> performance, and guaranteed capabilities,
we could just send our traffic directly over
11881.939 -> the AWS private network. And that's what the
endpoints are for. Endpoints provide secure,
11882.939 -> private, high performance communication. And
now gateway endpoints are to reach AWS services,
11883.939 -> like s3. So let's talk a little bit about
gateway endpoint security. We can set up an
11884.939 -> endpoint policy that can be set out to limit
resources like to the s3 bucket, we can limit
11885.939 -> routing information so that not everybody
knows about the endpoint. If you don't have
11886.939 -> a route, you can reach it. It's some of the
best security in the world. And we network
11887.939 -> architects and network engineers, we're providing
security for decades, and you're here's what
11888.939 -> we're doing it, it's then give somebody a
route. If they didn't have a route, they couldn't
11889.939 -> reach it. And then we would use access to
this firewalls and other cool things. But
11890.939 -> first part of security is don't give somebody
a path you. So if you wanted to build a really
11891.939 -> secure house, right, and you and you created
an island in the ocean, and you needed a boat
11892.939 -> or a helicopter to get to you, it'd be more
secure than if you stuck it in the built your
11893.939 -> house in Philadelphia, for example, I'm from
Philadelphia, pretty high crime area. So I
11894.939 -> can tell you right now, if I had a house in
the middle of the ocean, it'd be less likely
11895.939 -> to get hacked and if it was in Philadelphia.
So keep that in the back of your mind. Now
11896.939 -> let's talk about the next kind of, kind of
endpoint, the interface endpoint. Now, interface
11897.939 -> endpoints are a way to connect to several
AWS services like EC two systems manager Kinesis,
11898.939 -> for streaming data, elastic load balancer
API's, or external services hosted by AWS
11899.939 -> partners or other customers in their own V
PCs. Now, the interface endpoints gonna work
11900.939 -> differently. And it's really kind of cool,
actually. Basically, what's going to happen
11901.939 -> now, if we had an a Gateway Interface, what
happens to the previous con, the puts a route
11902.939 -> in the routing table. Now here, when you create
an interface endpoint, it effectively puts
11903.939 -> another network interface or an elastic interface
on your V PC. And your interface is local
11904.939 -> to the VPC. And when you create this interface
endpoint, AWS will create this network interface
11905.939 -> in your subnets, that you want to have access
to this, which is going to be pretty cool.
11906.939 -> And then when you create the endpoint, AWS
will automatically generate a fully qualified
11907.939 -> domain name. So people can connect to it via
domain name, what's the domain name? mike.go,
11908.939 -> cod careers.com. That's a fully qualified
domain. And it's going to give you something
11909.939 -> just just just like another really cool point
of interface endpoints if they use a service
11910.939 -> called AWS, private link. Look, I love private
land, I've been working with the equivalent
11911.939 -> of private link now for 30 years, or 25 years,
feels like 30 and dog years, so to speak,
11912.939 -> because I've been doing it forever. And private
link is basically what's called a Virtual
11913.939 -> Private line. And what is a virtual, and it's
going to restrict all traffic between the
11914.939 -> Virtual Private line. So let's let me draw
it out what a Virtual Private line looks like
11915.939 -> for you. Because you know, if you're not used
to private lines, then you're definitely not
11916.939 -> going to be used to virtual private lines.
Let's go back to my fancy drawing board. So
11917.939 -> let's say you've got we used to call it the
frame relay cloud can be the internet cloud,
11918.939 -> it really doesn't matter. So we've got we've
got us over here our VPC. And we want to connect
11919.939 -> to somebody else's VPC over private. Now,
realistically speaking, there's two ways we
11920.939 -> could do this. Option one, we could connect
to the internet. And back to the internet,
11921.939 -> and woohoo, everybody's talking to each other.
Now, we have to understand that by doing this,
11922.939 -> we've got internet security issues. And the
performance of the internet is not guaranteed.
11923.939 -> So we have no guarantees that the Internet
are there. But what we could do instead is
11924.939 -> if this is the AWS private network, and they
control the private network, AWS. What they
11925.939 -> can do is they can create us a Virtual Private
line directly cost and we'll call this private
11926.939 -> link. And it's basically a pseudo wire, a
fake wire they're creating for you. It's no
11927.939 -> different than an MPLS te tunnel, GRE tunnel
across a private network. They're building
11928.939 -> you a private wire, so they're giving you
much, much better access to their own network.
11929.939 -> The reason we can't control our traffic on
the internet As our traffic goes to 10 or
11930.939 -> 12 different entities. When it comes to private
link, we're only using the AWS network. And
11931.939 -> you can guarantee performance across your
network using signaling things like resource
11932.939 -> reservation protocols, things which you don't
need to know about for this. But we can't
11933.939 -> guarantee performance across the public Internet.
And this is when you're already on your systems.
11934.939 -> Not for example, if this was a direct connection,
getting to AWS. So there's, let's say we're
11935.939 -> doing this. Let's say we've got a VPC over
here, to the left side of the screen, another
11936.939 -> VPC, we can basically create a private link
connection between us. And everything is done.
11937.939 -> This is done internally. This is the equivalent
of a pseudo wire, and we're good to go. I
11938.939 -> didn't show let me share this photo with you.
So in this particular case, we've got a service
11939.939 -> customer. And we've got a VPC and we're creating
that pseudo wire in between them. And that's
11940.939 -> the way they can talk to each other very simple,
very elegant solution. Very elegant solution.
11941.939 -> Now, there are other ways to get our systems
to communicate to each other. And the other
11942.939 -> way is VPC peering, and I'm going to get into
VPC peering in a minute. But before I do,
11943.939 -> I'm going to give you some backup information
about the difference between private link
11944.939 -> and VPC peering. Private link is only going
to allow you allow access to a single service.
11945.939 -> So I can create a private link connection.
And then I can only give people access to
11946.939 -> the sydney.com website and nothing else. My
cuts Cindy, she's pretty popular these days.
11947.939 -> She's like internet famous. She's always doing
fun stuff. So access to just Cindy's beautiful
11948.939 -> photos of her doing silly cat fix. By comparison,
VPC peering is a little different. I have
11949.939 -> my V PC, I connect to supercharged the amazing
cloud architect V PC. And she and I can exchange
11950.939 -> everything between. So private link, I give
child access to just send me the cat photos.
11951.939 -> And she's happy looking my silly cat Cindy.
But now I want to connect to tell. And I want
11952.939 -> to share information. I use VPC peering. We're
gonna get into VPC peering in a minute. But
11953.939 -> when you use V PC or fpfb V PC peering, every
organization must have private addresses.
11954.939 -> I mean, must be must have not have overlapping
addresses. So if I'm using the 10 dot 0.0,
11955.939 -> slash 16 space, and Charles using the 170
2.0 dot 0.6 16.0 slash 16. Once we hit a 16
11956.939 -> dot 0.0, slash 16. Yeah, we're both. We have
different addresses, Chow and I can use VPC
11957.939 -> peering, and we're all kinds of happy.
11958.939 -> Well, let us tell my super architect, and
she's an amazing architect read RFC 1980.
11959.939 -> And I read RFC 1980. And we decided to both
use 10.0 dot 0.0 Slash 16 on both of our system.
11960.939 -> And now we've got overlapping IP addresses,
much more commonly a thing. Now my systems
11961.939 -> and channel systems are not eligible to use
VPC peering. Because VPC peering is not does
11962.939 -> not work with overlapping IP addresses. Now,
when we've got overlapping IP addresses, our
11963.939 -> systems can talk to each other. No big deal
for we network people, we just use NAT to
11964.939 -> translate between them. But VPC peering doesn't
let you use NAT. So when you need to deal
11965.939 -> with overlapping IP addresses with organizations,
which is extremely common, because all organizations
11966.939 -> use RFC 1918, private address space, private
link automatically does not will keep that
11967.939 -> in the back. Now VPC peering, which we're
gonna get to in a minute, enables you to connect
11968.939 -> to other virtual private clouds or virtual
private data centers. But you can't get more
11969.939 -> than 125 connections. That's nothing. Nothing,
nothing that's like zero me then deep with
11970.939 -> it. But this is my grandmother would say,
nada, zilch. Nothing. We're private link gives
11971.939 -> you much more scalability. Private link, they'll
tell you the limits are based on the max throughput
11972.939 -> achieved by your low balances and servers.
There's some other stuff beyond that if your
11973.939 -> test private links limits are only based upon
the limits of your load balancers and servers.
11974.939 -> One last thing. Chauhan I have VPC peering
between us. She can get access to all my information,
11975.939 -> I get access to all of her information. And
it's unidirectional. I could set it up where
11976.939 -> child could only see photos as any of the
cat and I can't even reach her. Whereas the
11977.939 -> VPC peering is like opening a full conversation
between two people. Both sides can get access
11978.939 -> to everything So now let's talk about what
is VPC peering? VPC peering is simply a means
11979.939 -> to connect two private virtual data centers
to each other. Now VPC peering provides a
11980.939 -> non transitive connection and we'll do some
demos and explanations are what is non transitive.
11981.939 -> That means if I connected shell and shell
connects to Alonzo, I can't connect to Alonso
11982.939 -> through Chow, I can just connect a child and
child can just connect the lines that's called
11983.939 -> non transitive. VPC peering always uses private
IP address space. And inter region VPC peering,
11984.939 -> meaning going from like the US region to a
UK region or Asian region is encrypted. Let's
11985.939 -> look at basic, basic basic VPC peering. And
then we'll talk about some challenges and
11986.939 -> workarounds. This is normal VPC peering, I've
got one V PC, I've got another V PC. And we
11987.939 -> do VPC peering between us. And we can exchange
organizations information. Now, it's common
11988.939 -> to have a lot of V PCs, you might actually
find 1000 of EPCs, in your own organization,
11989.939 -> let alone external organizations. And here's
the reason why. In my data center, I can do
11990.939 -> beautiful micro segmentation, I can create
different subnets for different systems. And
11991.939 -> I can route between those subnets and put
ACLs, between every subnets or access control
11992.939 -> lists. Very simple and elegant. In my VLAN,
I can do rate limiting admission control and
11993.939 -> all kinds of cool stuff. Yes, I have greater
security in my data center in the cloud. If
11994.939 -> I design it, right. I don't have access to
any of those cool security features in the
11995.939 -> cloud. None. So sometimes, the only thing
that I can do in the cloud is to chop my company
11996.939 -> into multiple virtual VPCs, virtual multiple
many organizations, and then use BGP and routing
11997.939 -> to connect between them. This is some of the
complexity that we're trying to do in the
11998.939 -> cloud to try and equal the security we naturally
had in our data center 1015 years ago. So
11999.939 -> we're going to be dealing with a lot of VPC
peering. Now, as I mentioned VPC peering is
12000.939 -> not transitive. I'll explain what that means.
Which means you've got two options, hub and
12001.939 -> spoke and fully met. Now, if anybody wants
a funny math challenge, I want you to understand
12002.939 -> why 125 VPC peering connections is Deepa nada,
zilch, zero, event, Zaba, bubkis, whatever
12003.939 -> you want to call it. The formula for determining
how many VPC peering connections you're going
12004.939 -> to be is n times n minus one divided by two.
I hate math. Let me explain this to you. If
12005.939 -> we've got three V PCs that we're going up
here, and I'm going to show you this in a
12006.939 -> minute. It's simple. Three times three minus
two through n times n minus one, so three
12007.939 -> times two equals six divided by two, and we've
only got three peering sessions. Simple, simple,
12008.939 -> simple. Right? Now we've got 10 VPC peering
sessions we need to do. So 10 times nine is
12009.939 -> 90 divided by two is 45. Wait, only 10 VPC
is what about organizations that have 1000
12010.939 -> VPS 25 V PCs 25 times 24. Now you're getting
there divided by to see we've already exceeded
12011.939 -> 225 peering sessions that we're allowed to
do. So let's talk about hub and spoke when
12012.939 -> you'd want to use it and when you wouldn't
want to use it. So let's first talk about
12013.939 -> an environment where we want everybody to
talk to everybody. Here we go. We've got three
12014.939 -> V PCs here. A B and C. A is on the bottom
being in syrup top. Because we have VPC P
12015.939 -> V peered with VPC A and C. VPC D can talk
to a and c because the PCC is paired with
12016.939 -> a&b VPC, TCP, VPC can talk to BNA and because
VPC A is paired with VPC B and C. VPC a can
12017.939 -> talk to B and C. So here we go, everybody.
Now everybody's talking to everybody. Pretty
12018.939 -> simple, right? Simple, easy. But what if we
didn't want everybody talking to everybody?
12019.939 -> Mike that occur. So now let's pretend that
I'm a computer manufacturer. And I want to
12020.939 -> connect to other organizations. Perhaps I
want to connect with DRAM manufacturer, let's
12021.939 -> call them V PCB, and an NVMe drives manufacturer
called them V PC, and a CPU manufacturer called
12022.939 -> V PC D. And an SSD manufacturer called V PC
II. You and a GPU manufacturer called VPC
12023.939 -> F. And another GPU manufacturer called BPC
G? No, do I want to lie to GPU manufacturers
12024.939 -> Nvidia and AMD talking to each other through
me? Of course not. So here's a perfect place
12025.939 -> where I can do hub and spoke by doing hub
and spoke and having non transitive routing,
12026.939 -> I can connect to everybody. But they can't
connect to each other through me. So here's
12027.939 -> where security is good. But now what if I
want everybody to talk to each other? For
12028.939 -> example, what if I wanted B to be able to
stuck to see through A and D to connect to
12029.939 -> a through through E. And ADA connected? See,
well, I've got two options. Option one, option
12030.939 -> one is they fully mesh them. But as I told
you very quickly, we're gonna get through
12031.939 -> those 125 peering connections very quickly.
Option two, I break the rules. And there's
12032.939 -> two ways where we can break break the rules
over here, or rule breaking options, or something
12033.939 -> called transit gateway and cloud hub. For
the certification providers that are gonna
12034.939 -> make it sound very different. For the people
that build their clouds, no networking, they're
12035.939 -> pretty much the same thing that I'm going
to show you the difference is subtle differences.
12036.939 -> So in iBGP, or an interior bit with BGP, we
have the same problem called non transitive,
12037.939 -> we get into the same silly Hub and Spoke environment
that I talked about before, where the PCB
12038.939 -> will tell a and a cantos C, so they couldn't
reach each other. So for those of you that
12039.939 -> are networking and understand BGP, you may
recall that there's this thing that you can
12040.939 -> use to break the rule, and it's called the
route reflector. And all a route reflector
12041.939 -> tells BGP is Hey, be transmitted by the way,
and it would tell VPC B when it tells the
12042.939 -> PC A Israel's to tell it to see. So we need
some form of Route reflector kind of technology
12043.939 -> on the cloud in order to do this, in order
to do so. So this is where cloud hub comes
12044.939 -> in. And transit gateway. When you need to
break the rules of non transitive routing,
12045.939 -> you need a route reflector. Same solution
we've used externally forever. And what happens
12046.939 -> is you've got multiple V PCs, you want to
create a hub and spoke network, Hub and Spoke
12047.939 -> networks are used everywhere. They're used
in airlines. For me, for example, if I want
12048.939 -> to fly to New York, and I live in Palm Beach,
I fly to Atlanta, and I go from Atlanta to
12049.939 -> New York, and spoke, I want to go to California,
I fly to Dallas. And then I get to San Jose
12050.939 -> or Houston and I get to San Jose, and spoke
networks.
12051.939 -> And networking, they exist forever, connect
to the New York office. And that connects
12052.939 -> you to other places connect to the San Jose
office. And that connects you to other places.
12053.939 -> So what we're dealing with in the cloud is
they decided to rename the route reflector
12054.939 -> and call it cloud hub. And Cloud hub enables
your systems that are connected via VP ns.
12055.939 -> To have transitive routing on the cloud, each
site will use EBGP to connect to this little
12056.939 -> device in the center. And then our routing
will work. So what's it going to look like?
12057.939 -> Here we go. We've got our cloud. We've got
a Boston office, the New York office, or Washington
12058.939 -> office. In the San Francisco office, we all
connect into the cloud. We use Cloud hub over
12059.939 -> here, which means it can only support a VPN
connection, transit gateway supports, obviously,
12060.939 -> direct connections and some other things.
And now we've enabled our cloud to allow transit
12061.939 -> networking. So no Boston can talk to San Francisco
through the cloud, Washington and Boston can
12062.939 -> talk to each other through the cloud, we've
effectively created a transport network with
12063.939 -> VPN cloud. Now the only problem with just
VPN caught up is it only works with VPNs.
12064.939 -> What happens when you need high performance
networking, high performance computing, you
12065.939 -> don't want to use V pans. So that's where
AWS came up with a concept hug transit gateway.
12066.939 -> But realistically speaking is the same, same
same thing. But transit gateway is the following.
12067.939 -> Now we can use private lines, for example,
and connect to these systems still using EBGP,
12068.939 -> which doesn't have the non transitive routing
properties of iBGP. It's not forcing people
12069.939 -> to become familiar with route reflector technology.
It's simple and elegant technology. And we've
12070.939 -> created a transit environment. So unlike cloud
hub, with transit gateway, we can still use
12071.939 -> VPN, we can use private lines and other network
forms of transport. And that's why transit
12072.939 -> gateway is pretty much the way to go. Now,
Chris, I'm gonna get into access control lists
12073.939 -> and security groups. Okay, so let's get into
access control lists. So, normally speaking
12074.939 -> on a router, we create multiple subnets. And
we put an access control list between them.
12075.939 -> an access control list effectively says Cindy
subnet is allowed to talk for Cindy subnet
12076.939 -> is allowed to talk to caddy subnet. That's
what we're talking about. No reality is in
12077.939 -> here, we're going to do it via subnets. So
network ACLs. Keep unwanted traffic out of
12078.939 -> a subnet. And network ACL allows or disallows
traffic based upon a configured policy. The
12079.939 -> default policy by definition is to deny all
traffic. So an access control list is gonna
12080.939 -> have to specify the source and destination
address protocol and port number. Access Control
12081.939 -> Lists are stateless, and because they're stateless,
and they don't have any knowledge of the state,
12082.939 -> they can be configured inbound and outbound.
Inbound on out. So let's talk about how you
12083.939 -> put an access control list in order. You do
the following. You create a rule and I'm going
12084.939 -> to show the world and reason the rules matter
so much. Rule 100 denial traffic rule 110
12085.939 -> lol TCP port 80 traffic, what do you guys
think is going to happen? Tell me in the chat
12086.939 -> box. What's going to happen? Tell me right
now what's gonna happen? I can tell you right,
12087.939 -> right now. But tell me in the chat box, what's
going to happen? Rule 100 deny everything.
12088.939 -> Rule one channel. Well, TCP port 80? What's
going to be denied? Everybody? Tell me tell
12089.939 -> me tell me.
12090.939 -> It's going to deny everything. Why is it going
to deny everything? It's going to deny everything
12091.939 -> because it already says deny, deny, deny,
deny, deny. So it has to be done intelligently.
12092.939 -> correctly, we have to put it in sequence.
So now let's change the sequence. First, we
12093.939 -> don't need to put any denies. And here's the
reason why. It's implicit. The only time we
12094.939 -> do in tonight, we will do it at night. And
then a permit is maybe we have one bed host
12095.939 -> that we want to deny. And we want to permit
the rest of the subnet. So yes, then we would
12096.939 -> do certain things or we could just deny a
single IP address. Now what if I told you
12097.939 -> to just create a single rule? Rule 110 allow
TCP port 80 from any source to any destination?
12098.939 -> What's going to be allowed in tell me what's
going to be allowed in rule 110 allow TCP
12099.939 -> port 80.
12100.939 -> And while you typed that Fe the problem before
was the reason the order matters. If we have
12101.939 -> a deny before and allow and the deny is everything,
everything would have been too large. Okay,
12102.939 -> Alex, we're going to allow web traffic into
the web servers. Yes. Do you need port any
12103.939 -> web traffic is going to be in JSON port 80
web traffic is going to be really mad and
12104.939 -> allow web traffic. So good, good, good. Now,
because what you're dealing with is the AC
12105.939 -> ACLs are not stateful. Meaning they have no
way to track that you went out and to allow
12106.939 -> your traffic back. That's why you need to
apply them in both directions. That's why
12107.939 -> That's why That's why
12108.939 -> so now let's say we're going to do it together.
Everybody give me rule 110 allow TCP port
12109.939 -> 443. What's going to be allowed in specifically,
what kind of web traffic is going to be allowed?
12110.939 -> Basic unencrypted web traffic or only encrypted
web traffic? Tell me in the chat box everybody.
12111.939 -> Alexandros political HTTPS Good job. JSON
HTTPS app. G HTTPS Okay. Perfect. secure HTTPS
12112.939 -> web traffic. Okay, you got it. This guy's
got it. It's encrypted. It's encrypted. Now
12113.939 -> I'm feeling excited. I'm happy I'm happy.
So we have to put them in order. We have to
12114.939 -> apply the inbound and outbound because there's
no Do Now let's see what it looks like. Because
12115.939 -> this is gonna be a test question test test
button and more test question. Here's what
12116.939 -> we're gonna see, we're going to see our network
access control lists are used to keep traffic
12117.939 -> in unwanted traffic out of a subnet. And then
we're going to talk about a security group,
12118.939 -> which is to keep unwanted traffic out of a
host. Access Control List. unwanted traffic
12119.939 -> out of a subnet network access control, as
they like to call it. Security Group keeps
12120.939 -> traffic outside of a host. Now a security
group. So while an ACL protects your subnets,
12121.939 -> your security groups protect your host. So
let's talk about what that means. A security
12122.939 -> group as a stateful ACL, what's the stateful
ACL called a firewall everybody. So we'll
12123.939 -> security group is similar to a host based
firewall, does this mean you shouldn't put
12124.939 -> a host based firewall on your server as well?
Of course not, you're going to use both. Because
12125.939 -> when it comes to security and availability,
one is none two is one and three is greater
12126.939 -> than two. But a security group keeps unwanted
traffic out of a subnet, I'm sorry, out of
12127.939 -> a out of a host and a network access control.
This keeps security groups out of a subnet,
12128.939 -> which you're going to use both of them, you
can't just use one, you're going to need both
12129.939 -> and then some more. So all good system designs
are going to include both, both both and more
12130.939 -> both. So keep that in the back of your mind.
A security group being your Host Based firewall.
12131.939 -> Now when you write a security group, you don't
need any denies you just do allows. Why? Because
12132.939 -> you're only allowing stuff into a server,
the minimum amount of stuff that you need
12133.939 -> to if I want to allow FTP, I'm going to allow
FTP, not that we allow FTP anymore in today's
12134.939 -> world. If I wanted to allow TFTP, which we
don't do anymore, we would allow TFTP for
12135.939 -> the most part, which we don't do. If I wanted
to allow secure FTP, I would just permit a
12136.939 -> rule to allow secure FTP to allow HTTPS or
HTTP. So we just create a security group,
12137.939 -> which tells now when we create a security
group, they're smarter than access control.
12138.939 -> All rules will be evaluated prior to denying
traffic. So if we made the mistake of saying
12139.939 -> deny any any and then from an afterwards,
well, at least all rules are going to be evaluated.
12140.939 -> So it'd be wearing a better suit. But only
inbound rules are necessary. Why only inbound
12141.939 -> rules allow this stuff to come in. Because
once it's come into us, we know where it's
12142.939 -> coming from. We're tracking the state of the
connection, we allow the return traffic element.
12143.939 -> So let's going back to this diagram, what
are we really talking about here? We're talking
12144.939 -> about the following. We've got our network
access control is protecting this subnet.
12145.939 -> And our security group probably thinks and
practice protecting our hosts, our virtual
12146.939 -> machine, our instances are any name that we
choose to call it. Now what if we wanted to
12147.939 -> create a network and use the cloud. So there's
two ways you can create your own network,
12148.939 -> you can hire somebody like me, and say, I
need a network with 10,000 locations. And
12149.939 -> I'll design your beautiful wide area network,
they'll determine the routers, you need the
12150.939 -> switches, you need routing protocols. I've
been doing it for decades. And when I design
12151.939 -> a network, it's going to work it's going to
be high performance, but it's going to cost
12152.939 -> you money. Because you've got 30,000 locations.
Realistically speaking, you need 60,000 routers,
12153.939 -> these routers could be 30 $40,000 Each, each
router is then going to need its interfaces
12154.939 -> might need to win connection, each WAN connection,
say it's 1000 bucks a month, then I'm going
12155.939 -> to need three CCIE is at $300,000 a year to
be able to maintain this thing, at least at
12156.939 -> the design and high level stuff. I'm going
to need a network operation center, I'm going
12157.939 -> to need some basic network engineers that
can keep stuff up and running and build the
12158.939 -> stuff that we and architects do. And it's
gonna get real expensive, real fast. Or, if
12159.939 -> we're connected to the cloud, we can actually
use the cloud to build our entire wide area
12160.939 -> network. What that's called as a transit VPC,
it's another way to create a hub and spoke
12161.939 -> environment through the cloud. So with transit
VPC, it pretty much is an intermediary that
12162.939 -> allows you to kick Multiple V PCs, multiple
customers, multiple organizations through
12163.939 -> something, but about a service provider. For
let's not go that path for this class. It's
12164.939 -> essentially the way to use the cloud as a
private network. Now remember, you could create
12165.939 -> multiple VPNs on the internet, you could do
it. Each VPN is going to need a router and
12166.939 -> a connection to the internet. But here's the
thing. Internet bandwidth is not guaranteed,
12167.939 -> because it traverses multiple internet service
providers to get to your destination, but
12168.939 -> you can guarantee the performance on your
network. AWS can guarantee the performance
12169.939 -> on their systems. So we can create this transit
VPC, we can basically connect to anybody who's
12170.939 -> connected to the cloud already. And we can
use the cloud as a conduit as if it's a router.
12171.939 -> So a transit VPC acts like a cloud router
and directs all traffic, and a much the similar
12172.939 -> way of VBC peering in cloud hub. When we use
a transit visit the V PC. All it has hubs
12173.939 -> and spokes. And we use BGP as the routing
protocol to exchange information. The data
12174.939 -> is never going to be routed through the public
Internet, but use the AWS private High Performance
12175.939 -> Network. It's an elegant elegant thing. The
transit VPC, VPC has all spokes directly using
12176.939 -> it. And it's going to be using our exterior
gateway routing protocol, otherwise known
12177.939 -> as BGP. Data keeps flowing. And it's privately
and it's automatically encrypted across the
12178.939 -> private networks and private network with
encryption, high performance, high security,
12179.939 -> elegant, elegant, elegant.
12180.939 -> Very elegant. Okay, let's talk about implementing
network performance and placement groups and
12181.939 -> what they are. So let's say you had a low
latency application. And I'll tell you right
12182.939 -> now, most of your critically low latency applications,
you probably shouldn't put them in the cloud,
12183.939 -> you should keep them in your data center.
By putting them on the cloud, you've got the
12184.939 -> latency of your wide area, network connection,
multiple network hops, slower storage, and
12185.939 -> all the challenges that come from a virtualized
environment. But if you wanted to, how do
12186.939 -> you achieve the best performance in the cloud,
and this is where we get into placement groups.
12187.939 -> Now, placement groups are logical groupings
of your servers inside of a single inside
12188.939 -> of a single area, that availability zone.
instances in the placement group are close
12189.939 -> to each other are proximate to each other,
I'm by putting your stuff close to each other,
12190.939 -> which really get is lower latency and high
performance. Kind of keep that in the back
12191.939 -> of your mind. And so we're going to talk about
the kinds of placement groups you can actually
12192.939 -> deal with. So the first kind is a clustered
placement group. Cluster placement group is
12193.939 -> the way you get your best performance at your
lowest latency. Now, in architecture, everything
12194.939 -> is a trade off. Everything is a trade off.
So if we put our stuff close together, close
12195.939 -> together close together, the latency to connect
to our devices is nothing, right? Yes. But
12196.939 -> let's talk about what can go wrong. Generally,
placement groups are where your servers are
12197.939 -> all on the same physical server, you're not
traversing the network at all, just the backplane
12198.939 -> of the server. So you've got very low latency
and incredible performance. But but but you've
12199.939 -> got very, very little redundancy. So let's
talk about what we're dealing with. If you
12200.939 -> put all your servers and the same rack and
they're connected to the same network port
12201.939 -> to the same power distribution unit, hopefully
to power distribution units. And there's a
12202.939 -> power failure in the rack. Your whole placement
group has gone can't have that the circuit
12203.939 -> breaker blows can't have. Now what if this
your all your stuff is in the same server
12204.939 -> and the server encounters a hardware failure?
Whoa, okay, now you're still down. What if
12205.939 -> the switch that's connected to the server
fails? You're still down still down. Still
12206.939 -> though. So cluster placement group critical
performance look, I've worked for banks when
12207.939 -> they needed critical, low latency. And here's
what we did, we had two racks side by side,
12208.939 -> each plugged into different outlets, two different
power supplies, two different power distribution
12209.939 -> units, multiple switches plugged into the
back of these things. And that way, if one
12210.939 -> died, which fell over the other one kind of
instantly, we couldn't even use regular routing
12211.939 -> to get through the route. And we had to come
up with specialized routing to tune this to
12212.939 -> get maximum failover performance. So cluster
placement group, lowest latency, highest performance,
12213.939 -> single point of failure, scary if you're going
to create one, create a second one. So let's
12214.939 -> talk about a way that's going to give us good
performance, but not necessarily optimal performance.
12215.939 -> This is going to be a purchase and placement
group. And in a partitioned placement group,
12216.939 -> our instances are grouped across racks. Are
this perfect protects against failure of a
12217.939 -> rack, rack power or network switch. And because
we're providing systems across racks, we've
12218.939 -> got a little more latency, not much, but excellent
performance, which much lower risks. So what
12219.939 -> are we really talking about with regards to
latency, the speed of light, which is 186,000
12220.939 -> miles per second, then we go 1000 kilometers
or more to the cloud, that is latency. But
12221.939 -> if we go 20 feet into data centers, that lakes
we're talking about it's not. So partitioned
12222.939 -> placement group is, you know, inside of the
same data center, split across racks, excellent
12223.939 -> performance, not quite as good as a cluster
placement group. But you know, we're getting
12224.939 -> into some serious stuff here, good performance,
high quality networking, rack one rack to
12225.939 -> rack three, all in the same building, same
data center. So good performance, we don't
12226.939 -> lose much. Now, let's say we want a little
more availability, what if the data center
12227.939 -> fails? All right? Data centers. So now let's
talk about a spread placement group. Okay.
12228.939 -> So here's what a spread placement group is.
AWS has these regions, these large geographic
12229.939 -> areas, and they've got a bunch of data centers
in the same region. And a lot of their data
12230.939 -> centers can be across the street from each
other or close to each other. So a spread
12231.939 -> placement group is when you put your stuff
and spread it across availability zones in
12232.939 -> the same region. So by doing so, what can
we do for you here, we can put two in buildings,
12233.939 -> one, two, and building two, we've got a fiber
optic connection between them. So the latency
12234.939 -> is still relatively low latency, we've got
a much higher availability system. Believe
12235.939 -> me, this is higher latency in a cluster group.
But it's got much more availability. So when
12236.939 -> it comes to architecture, there's never ever,
ever, ever a single thing that we can do,
12237.939 -> the key is as follows. What do we need for
this application? What's the need that we're
12238.939 -> going to do, I don't know if I should share
my screen, but the cluster spread placement
12239.939 -> group is going to look like this. Now I understand
what we're actually dealing with, with a spread
12240.939 -> placement group. Now let's talk about some
kind of network performance and training.
12241.939 -> I'm going to use some complicated terms that
I hate it. I hate marketing fluff. So if you've
12242.939 -> ever worked in a virtual machine environment,
in a data center, and let's say you were dealing
12243.939 -> with a VM or server, and you needed really
good performance, like GPU performance, well,
12244.939 -> a virtual GPUs performance is terrible. But
a physical GPU performance is great. And if
12245.939 -> you've ever built a virtual machine that was
designed for machine learning, you might take
12246.939 -> your virtual machine, you might push for quadro
1000 cards into a single virtual machine.
12247.939 -> And that's called PCI pass through and what
that does is enable you to put a physical
12248.939 -> card directly into your virtual server. And
we've been using this for machine learning
12249.939 -> for awhile, people that would create lots
of devices that needed high performance. Now
12250.939 -> the problem is, is we deal with a network
card in a virtual environment. It's not the
12251.939 -> physical Ethernet card that's in the system.
It's a virtual card that's created in software.
12252.939 -> I want you to think about this hardware fast.
Software slow. So for people that were buying
12253.939 -> mining Bitcoin on their GPU, they might be
able to do a few 1000 hashes per second. But
12254.939 -> I think about an ASICs or hardware they could
do trillions of calculations per second 1000s
12255.939 -> versus trillions hardware is fast, fast, fast,
software slow, slow, slow. So if we needed
12256.939 -> high performance networking, the first thing
we could do was push a physical network card
12257.939 -> directly into our server. See, you think they'd
call it physical network card. But no marketing,
12258.939 -> people get paid a lot of money to come up
with crazy names to make it sound cool. So
12259.939 -> the first network performance option we have
is something that's called single route IO
12260.939 -> virtualization SR dash IO V, here's what it
means pop a physical card, and have the physical
12261.939 -> card in and push the physical card in the
virtual machine. And there's that. Now the
12262.939 -> next thing that we're actually going to talk
about is as follows The Virtual Fabric adapter,
12263.939 -> for organizations that need real high performance,
the other alternative with AWS is they've
12264.939 -> created a specialty software driver. And the
software driver can offer some incredible,
12265.939 -> incredible performance. And the performance
can go up to 400 gigabit per second, it's
12266.939 -> not there yet, but the drivers designed to
afford this to support this. So we're dealing
12267.939 -> with here is very, very cool stuff, network
performance options. And there, we're gonna
12268.939 -> go.
12269.939 -> I see there's something about a puppy in the
chat box. I've always wanted a puppy in my
12270.939 -> entire life. But my wife would only support
cats, and I'm allergic to everything. So I
12271.939 -> have a cat named Cindy. Now we're gonna get
into DNS next, Chris. And DNS is going to
12272.939 -> be a topic that I'm going to need to spend
30 to 45 minutes on. Now give me a hashtag
12273.939 -> AWS Certified Solution Architect Associate.
So I know you're awake, alert and oriented
12274.939 -> member of a medical person in medicine, somebody
falls over we say, Hey, what's your name?
12275.939 -> Who's the president? What's going on today?
Where are you? Because we want to know that
12276.939 -> you're oriented towards person, place and
time. So give me a hashtag AWS Certified Solution
12277.939 -> Architect Associate.
12278.939 -> And then we'll get back to the content as
long as I know that you're there. It's hard
12279.939 -> to do this, I've got I've had laryngitis now
for two weeks. And I want to make sure that
12280.939 -> we're doing it uh, you guys are paying attention.
So I want all of you to have the best possible
12281.939 -> career. Fantastic, fantastic. I know you guys
are here. Now let's talk about DNS on route
12282.939 -> 53. What is DNS everybody? DNS is simply a
way to map a name to an IP address. So let's
12283.939 -> say you wanted to connect to an IP address.
You could do it any day of the week, you can
12284.939 -> put the IP address in your browser, and it's
just going to work. No big deal. Now the question
12285.939 -> is, can you remember everybody's IP address?
My wife? Yeah, she couldn't remember everybody's
12286.939 -> IP address. Here's what is the phone number.
Lisa, the phone number is 256345789 10. And
12287.939 -> I asked Lisa, what's the phone number, and
she'll tell me a year later, 10 years later,
12288.939 -> 30 years later. Now me, I don't remember what
time I'm supposed to be somewhere. Sometimes
12289.939 -> I'm exaggerating the concept. But you know,
for me, it's very easy to remember Cindy the
12290.939 -> cat. That will be easier than to remember
her DNS sequence or DNA sequence, it will
12291.939 -> be hard to remember. So since every device
needs to be reachable, that you want to be
12292.939 -> reachable needs an address. You could either
be a genius, like my wife with 170 IQ and
12293.939 -> remember everything like an elephant, or give
you some sort of mapping agent. And this is
12294.939 -> where DNS comes into play. It's very easy
for me to remember amazon.com. But out of
12295.939 -> curiosity, let me do an NS lookup and actually
find the IP address of amazon.com. The IP
12296.939 -> address of amazon.com is one six 2.21 9.22
5.118. Now, which do you think is easier?
12297.939 -> Remember amazon.com Or one six 2.21 9.22 5.118?
Well, I'm going to tell you right now, I can
12298.939 -> remember amazon.com And I already forgot the
162 after the 219. Now remember it a week
12299.939 -> later, and now we've got challenges. So DNS
is really a means to map a name to an IP address.
12300.939 -> Here I go I'm Sitting on a browser, I type
www.amazon.com, my computer goes to the DNS
12301.939 -> server, the DNS server returns the IP address,
and my browser redirects me. Now here, I'm
12302.939 -> going to actually do an example with you,
every one of you, all of you, I want you to
12303.939 -> open up a window on Windows, it's going to
be your command prompt. If you're in a Mac
12304.939 -> or a Linux system, open up a terminal and
do the following with me. Let's go find the
12305.939 -> IP address for go cloud careers.net. So every
one of you type NS L Okay, up November, Sierra,
12306.939 -> Lima, Oscar Oscar kilo uniform, Papa, leave
a space. And then after you leave a space,
12307.939 -> type, www dot coklat careers.com, just like
I did in this example that I'm sharing with
12308.939 -> you right now, or at least I meant to be sharing
with you right now.
12309.939 -> And here you go. What IP address did you get
on your computer, you did an NS lookup,
12310.939 -> pop the address that you got in the chatbox.
Now that IP address may be different than
12311.939 -> it was when I ran this. But here's what you're
going to do, you're going to do an NS lookup,
12312.939 -> and you're going to be able to find the IP
address to any website. After we do mind,
12313.939 -> do an NS lookup to www.cisco.com. Big website.
And that's what DNS is doing. It's mapping
12314.939 -> a name that we can remember, like go cut careers.com.
And we're mapping it to the IP address of
12315.939 -> 192 dot 0.7 8.217. There you go. I can remember
go cut careers.com, but one nine or 2.0 dot
12316.939 -> 78.217. That's a little harder for me to remember,
even if it's my own IP address. So that's
12317.939 -> what we came up with these things. But DNS
can also do some more. But let's go with talks
12318.939 -> about what goes into a DNS name or domain
name. A domain name is going to be broken
12319.939 -> down into three sections. Now when we talk
about a fully qualified domain name, domain
12320.939 -> name, we're talking about the following the
host name, which is the given name of the
12321.939 -> endpoint, the domain name and the top level
domain. So if we go to w w w.go, cod careers.com.
12322.939 -> The host name is going to be www domain name
is going to be go Khan careers. And the top
12323.939 -> level domain is going to be.com could be dotnet,
which also, but those are the kinds of things
12324.939 -> that it could be. So fully qualified domain
name, host name, Mike easy to go cloud careers.com
12325.939 -> is a fully qualified domain.
12326.939 -> Now we work with DNS, you got to be dealing
with something called DNS records. DNS is
12327.939 -> kind of like a database that map's IP addresses
to different addresses. So we need to have
12328.939 -> these things. So when we're dealing with DNS
records, we're dealing with something called
12329.939 -> the zone file as well. Same thing DNS record
zone parameter. And what they are are they're
12330.939 -> sets of particular instructions that are located
in the DNS servers and provide information
12331.939 -> about the domain. The records are in a particular
format known as DNS syntax, which is a type
12332.939 -> of text file. And the DNS syntax is instructions
to tell the DNS server how to carry on that's
12333.939 -> actually now when we're dealing with anything
on the internet, we have something called
12334.939 -> the TTL or a time to live. And the TTL with
DNS is how many how many seconds it will take
12335.939 -> for the DNS service to refresh its information.
So why do we need a TTL? If I put an IP address
12336.939 -> and it was permanent in the DNS, and we changed
IP addresses, nobody would ever figure it
12337.939 -> out. So we can't leave records up there forever.
Now, there's a tremendous number of DNS records
12338.939 -> that you're going to need to know. And we're
going to talk about them. So kind of keep
12339.939 -> that in the back of your mind. Understand
when we talk about DNS and AWS, we're going
12340.939 -> to be talking about route 53, which is AWS
is highly available scalable DNS platform,
12341.939 -> which uses something called anycast. It's
low latency high availability supports health
12342.939 -> checks, but here's the thing to remember.
If you want a high availability, cloud architecture,
12343.939 -> a true high availability cloud architecture,
you're not going to use AWS route 53. And
12344.939 -> here's what AWS route 53 is the eighth of
its proprietary DNS system. So now imagine
12345.939 -> use route 53, which is great DNS by the way.
And now you've got the Azure called the Google
12346.939 -> Cloud. And you're just had this cloud on the
AWS cloud. And now, now you're using all your
12347.939 -> DNS from AWS, and AWS goes down, guess what
none of your other calls are going to work
12348.939 -> either. So when you're dealing with high performance,
high availability systems, you can't afford
12349.939 -> to use your cloud providers DNS, you're going
to need to use a critical high availability
12350.939 -> system, that kind of thing that we've always
used from f5 or any other way you want to
12351.939 -> do it. And we're going to put DNS servers
in each cloud and data center. Now, you don't
12352.939 -> need to know every DNS record. But there are
certain DNS records that you for the most
12353.939 -> part need to know. You need to know the a
record which will cover the AE record, which
12354.939 -> will cover the CNAME record, you definitely
need to know some of these start authority
12355.939 -> records and MX records and the CNAME record
will probably cover I'll cover a few more
12356.939 -> of them, but kind of keep this in the back
of your mind. They are critical knowledge.
12357.939 -> So let's start with the most fundamental record
the simplest thing, the a record, it maps
12358.939 -> a name to an IP address, one dot 2.3 dot Florida
pretty Sydney, the cat.com. One day, I'm going
12359.939 -> to make a website pretty send me the cat.com.
If I ever have more than five minutes to myself,
12360.939 -> and about five minutes, I usually plan it
with my cats in near my wife. And it just
12361.939 -> maps a name to an IP address. Now this with
ipv4, a record one address maps to the IP
12362.939 -> address the website simple. Now what if I
had an ipv6 address? Well, then it wouldn't
12363.939 -> be an A record anymore, it would be an A record
a record. So an A record and an AE record
12364.939 -> are identical. The differences in a record
is used for ipv4 and a record is used for
12365.939 -> ipv6. Now next on the list, we have a CNAME
record. Oh, why do we use a cname? Record?
12366.939 -> Well, I'm going to show you why we use a CNAME
record in a second.
12367.939 -> Okay, so let me make this a little bigger.
Chris, I'm gonna I'm gonna need your help
12368.939 -> figuring out how to share a window on my screen.
Let me go deal with this bear with me only
12369.939 -> present a window, share our screen. Window.
Okay, can you guys, okay, good. You guys can
12370.939 -> see my screen. So I did an NS look up about
Amazon. And if you notice, what you're really
12371.939 -> going to see is first these are my google
DNS servers. Why does it have a hashtag 53?
12372.939 -> Well, 53 is the is the port's that did the
DNS, TCP UDP ports that are used by DNS. And
12373.939 -> that's why it's relative. That's why it's
53 a Jumbo scolaro. And you're also going
12374.939 -> to see the amazon.com. This is actually its
DNS name. Now this is what's pointing to it
12375.939 -> know what is this ugly, ugly thing. This delta
three Alpha golf for hotel uniform kilo kilo
12376.939 -> hotel six to Yankee november.cloudfront.net.
That's actually the address the content delivery
12377.939 -> network that's used by amazon.com. Mill, have
you think any of you are ever going to remember
12378.939 -> that? Except for my wife, for those of you
with photographic memories, you're not. But
12379.939 -> you can remember amazon.com. So a CNAME record
will map amazon.com to this ugly, clunky name,
12380.939 -> which is the actual name. So it's effectively
like it's mapping one IP address to another
12381.939 -> IP address. And that's what we're creating
a CNAME record to map one IP address to another
12382.939 -> IP address. I'm going to stop sharing right
now if I can figure out how to do that. Share
12383.939 -> a screen. And Chris, you can stop sharing.
Okay, so there we go. So that's what we're
12384.939 -> creating a CNAME record. It's not exactly
an alias record, but it's kind of mapping
12385.939 -> and donating to another domain. Let's talk
about an NS record or a name server record.
12386.939 -> Well, we've got DNS servers, we need to know
what are the real DNS servers the most authoritative
12387.939 -> servers the servers to trust servers that
propagate our organization's DNS information
12388.939 -> to the rest of the internet. We need an NS
record that identifies those servers. Now
12389.939 -> let's say you want to receive email. So my
cat Cindy, she's here cleaning referrer doing
12390.939 -> cute little hand stuff, and she wants to send
an email to her friend signing the cup. Well,
12391.939 -> if your organization wants to receive email,
you need a MEL record called an MX record.
12392.939 -> So an MX record, what we're dealing with is
really a record which tells you which mail
12393.939 -> servers can accept and receive mail from your
domain. last record we're going to talk about
12394.939 -> is something called the start of authority
record or SOA record. And that's the primary
12395.939 -> name server responsible for your domain tells
you the responsible party for your name. And
12396.939 -> it'll have a timestamp that lists any changes
that were made, and a number of seconds before
12397.939 -> your information to be fresh. So now let's
talk about Amazon route 53. Route 53 is a
12398.939 -> highly scalable proprietary DNS service provided
by AWS. If you use AWS and AWS alone, it gives
12399.939 -> you a very nice low cost method for Dannette.
supports ipv4, but IP, ipv6, but remember,
12400.939 -> it's proprietary. And if you use multiple
clouds, and AWS goes down, you lose all your
12401.939 -> clouds. So you don't want to be using something
like this in a high availability environment.
12402.939 -> You want a high availability DNS solution.
But for your exams, here you go. Now there's
12403.939 -> nothing wrong with the service. It's a great
DNS service. The problem is when you put all
12404.939 -> your eggs in one basket, and the basket gets
dropped, all your eggs are lost. That's why
12405.939 -> people diversify their portfolios and don't
have a portfolio of a single stock. That's
12406.939 -> why organizations never use the same service
provider when they have a when they use two
12407.939 -> different service providers. That's why it's
insanity to use a single cloud when you should
12408.939 -> be using multiple copies, same problem.
12409.939 -> With route 53, you can route customers inside
or outside of a dose resource explicit standard
12410.939 -> AWS standard up DNS, and you could use route
53 to connect to AWS and Azure and Google
12411.939 -> the problem is with route 53, goes down, you
lose your other clothes. You don't really
12412.939 -> want to do that. The way DNS servers always
determine whether your 100 points are healthy
12413.939 -> with a health check with a health check. So
they work via health checks. I'll be describing
12414.939 -> health checks and in a minute now I may actually
give you a health check right now. So Chris,
12415.939 -> you and the other others phone right now you
want to I'm going to do a health check. Here's
12416.939 -> what a health check is. Let's say Chris, is
there anybody else behind the scenes like
12417.939 -> you right now? No? Okay, so it's just Chris.
Chris, are you there? Yes. Chris, are you
12418.939 -> there? Yes. Chris, are you there? Whoa, Chris
has failed as far as health check. Chris,
12419.939 -> are you there? Yes. Okay, Chris is here. Now.
I can see keep sending traffic to Chris. But
12420.939 -> let's pretend I had two people there. Now
there's going to be Chris one. And there's
12421.939 -> going to be Chris to Chris one. Are you there?
Yes. Chris two. Are you there? That's scary.
12422.939 -> Chris one. Are you there? Oh, sorry. I was
here a couple coming up with accents and a
12423.939 -> muted. Yes. Yes. Chris one is here. Chris
two. Are you there? Yamaha. We Jama. Okay,
12424.939 -> good. And Chris knows I love Bob Marley. And
anything Jamaican? Chris, are you there? One?
12425.939 -> Are you there? Yes. Chris two. Are you there?
Yeah, I'm on. Okay. See, I'm happily sending
12426.939 -> traffic. Now. Chris one's gonna get really
tired and lazy and not be there. Chris one
12427.939 -> are you there? Oh, Chris two. Are you there?
Yeah, I don't know what happened to the other
12428.939 -> man. Okay, Chris one. Are you there? No, he's
not here. Chris Tillery. There. Chris, twos
12429.939 -> there have real trouble. Yes, yes. Chris,
what are you there? Yes. Okay, now the Chris
12430.939 -> one just passed the health check. Okay, I
was hoping Chris one was not going to be there.
12431.939 -> So we could revert all traffic to Chris Dell
to what the health check is, is me as your
12432.939 -> system is asking somebody if they're there.
If they don't respond, you send your traffic
12433.939 -> to the other device. But it doesn't always
work in a completely clumsy, uncoordinated
12434.939 -> manner, where you try to do it live. So there
you go. That reminds me, I need more Tumeric
12435.939 -> tea for my for my laryngitis. I did have some
bamboo this morning with breakfast. But I
12436.939 -> need some Tumeric too. So now if we're going
to use DNS to determine what's available and
12437.939 -> happening to an IP address. Can we use it
for more? And the answer is of course we can
12438.939 -> we can use it for high availability. So let's
deal with high availability. We're first going
12439.939 -> to begin And we're first going to begin with
a simple routing policy. And a simple routing
12440.939 -> policy is the most basic form of routing.
And what are we talking about here, you have
12441.939 -> one DNS record and it maps to a single IP
address. So send you the cat maps to 1.2 dot
12442.939 -> 3.4. Simple routing. Very, very simple. Now,
that's great if you've only got one website.
12443.939 -> But what if you have something different?
Let's say you want to you want you want to
12444.939 -> send traffic to two places. Let's say you
want to spend 50% or 75% to your data center.
12445.939 -> And you want to produce some 25% to the cloud.
Well, you could use a weighted routing policy
12446.939 -> weighted routing is really cool. You send
50% to Azure 50%, to AWS, AWS goes away send
12447.939 -> 100% to Azure. That's weighted routing or
weighted routing. Weighted routing is also
12448.939 -> good when you've got new applications. So
let's say you want to test a new application
12449.939 -> or a new website. In this particular environment,
we could send 85% of the traffic to the website
12450.939 -> that's existed for a long time, and 15% to
the new website. And that way, we can test
12451.939 -> it with a subset of our customers, before
rolling out a brand new website to the entire
12452.939 -> world. What if the website crashes. So when
you see bluegreen deployments and things like
12453.939 -> this, they typically use for new applications
and new code, they typically use some form
12454.939 -> of a weighted routing policy. Link to based
routing, latency based routing enables you
12455.939 -> to direct your traffic to the site or the
region with the least traffic. How does this
12456.939 -> work? Well, it really works based upon your
IP address. See, I go to the internet, and
12457.939 -> it determines via my IP address that I'm in
South Florida, it will send me to the web
12458.939 -> server in South Florida. Now what if I was
in Tokyo? Instead of South Florida, would
12459.939 -> I want to go to the Florida website? Probably
not, I might want to go to the web server
12460.939 -> in Tokyo or Kyoto or someplace else that will
be close by can. By comparison, that's what
12461.939 -> latency based routing because it determines
where you're at, and determine what's the
12462.939 -> lowest latency server next to you and send
you to that server. That's pretty cool. Latency
12463.939 -> based routing. I'd like to look at it this
way. You hit our site, which one's got the
12464.939 -> lowest latency, send it to the site with the
lowest latency we're not go caught architects
12465.939 -> anymore, we go click careers that there you
go maybe slides a long time ago. Now let's
12466.939 -> talk about failover routing, I love failover
routing, failover routing is done by the following.
12467.939 -> It enables you to create your active and passive
system. So send all traffic to AWS. AWS has
12468.939 -> a clot out and send all traffic to Google
that's felt overcrowded. And that works via
12469.939 -> the health checks that we didn't demonstrate
as elegantly but I'll be demonstrating a health
12470.939 -> check job very soon. The point of failover,
it's going to check the health. And if one
12471.939 -> goes away, there's good. So let's look at
it in this environment. Here we go. We've
12472.939 -> got our main servers, go Cloud Architect primarily
goes to the primary one. But if it fails,
12473.939 -> goes to the secondary one. That's called failover
routing. I absolutely love it.
12474.939 -> Geolocation routing, now this is really, really
cool. Geo locating route routing policies,
12475.939 -> looks at your user and puts them to the website
that's closest to the user. But we can get
12476.939 -> pretty cool with this. Let's say you're in
a country like Cameroon, I have so many wonderful
12477.939 -> people with us from Cameroon. Now there's
an English side of Cameroon. And there's a
12478.939 -> French side of Cameroon. And if you want something
in English is pretty easy to do. So we could
12479.939 -> set up a routing policy that could say French
side and Cameroon goes to the French web page.
12480.939 -> English side goes to the English side based
upon your source IP address. So that's actually
12481.939 -> called geolocation router sends you the source
that's closest to you. But think about about
12482.939 -> a country is where you speak. There's three
languages in these countries. Many countries
12483.939 -> there's two different languages For many regions,
there's two different regions. You know, Greece,
12484.939 -> where I'm from, it's pretty close to Egypt,
which is, which is pretty close to Israel,
12485.939 -> it's pretty close to Turkey. Well, in Turkey,
they speak Turkish and Egypt, they speak Arabic,
12486.939 -> and Israel, they speak well, Arabic, as well
as Hebrew, as well as English. And in Greece,
12487.939 -> they speak Greek. Figuring out my IP address
and sending me to the right website, is the
12488.939 -> determination whether I buy something off
of that website, or whether I read it go,
12489.939 -> I don't know, it's not great. And I don't
know how to read it. So you know, kind of
12490.939 -> love these kinds of things. But we use it
like this. I just I love geolocation routing.
12491.939 -> Where do you go go to the close go to the
place that makes more sense to you? No, multi
12492.939 -> answer routing policy to me is ridiculous.
It's the biggest random thing in the world.
12493.939 -> I don't do random. I don't do random at all.
But do proximity mean multivalue answer is,
12494.939 -> you've got multiple entries. And it's just
going to randomly pick some to choose from
12495.939 -> kind of like rolling the dice. And I don't
like rolling the dice with any architecture
12496.939 -> here, throw the dice in the air. And what
are you going to go which one of these websites
12497.939 -> you're going to, but it's still used as a
health check. So will only send your traffic
12498.939 -> to a healthy system.
12499.939 -> Now let's talk about geo proximity routing.
This gets a little ridiculous here. This lets
12500.939 -> you to divide your region into different parts
of the world. And AWS, then lets you kind
12501.939 -> of do the following. And enables you to create
something called a bias, which is going to
12502.939 -> spread and shrink regions. And by changing
your regions, you can shift where your traffic
12503.939 -> is going to focus. Like mine, I've never used
it for anything that I got, I'm always going
12504.939 -> to use my own DNS and a tiny business, you
can use the DNS from your provider, in a big
12505.939 -> business, you've got to manage your own DNS
servers. If they need to cloud architect,
12506.939 -> they're going to be managing their own servers.
So let's go get back into this concept of
12507.939 -> a health check. Which I tried to demonstrate
before. I know it didn't exactly work. But
12508.939 -> my team didn't coordinate ahead of time. That's
okay. The health checks gonna monitor the
12509.939 -> functionality where stuff anything's have
fun when you go live. If the system doesn't
12510.939 -> respond to the Health Tech, it'll be marked
as unhealthy. Now, I wasn't sure if the slide
12511.939 -> was here, because we got our slides beautifully
redone. I was trying to create some availability,
12512.939 -> but it is it let's do it. Here. I've got two
responses. A server one are you there? responds
12513.939 -> Yeah, server two either no response that's
getting scary. Server running in there. CERAM.
12514.939 -> server two, either no response. Server one,
are you there? I'm here server to response,
12515.939 -> shift all traffic to server one. So Chris,
the next topic is load balancers, which is
12516.939 -> one of my coolest favorite, most happy things
to talk about in the entire world, because
12517.939 -> I love them. They improve performance and
availability. Okay, let's get back to the
12518.939 -> content. Everyone. Let's talk load balancers.
I love little balancers. I think that the
12519.939 -> coolest thing ever. We network architects
don't work with them. But you know, they're
12520.939 -> cool. Cool. Cool. Cool. Cool. Um, why don't
I let a little bouncer so much? Well, load
12521.939 -> balancers are devices. And yes, I called it
devices. That enables you increase system
12522.939 -> performance and availability at the same time
with better performance and making sure the
12523.939 -> systems are there when you need it. But how
could you not want that in your system. Load
12524.939 -> Balancers can reduce cost. And I'll explain
to you how but they can really help a scalability.
12525.939 -> And here's why. They can let you skip use
multiple servers and makes them act like a
12526.939 -> single server. And in many cases, it may be
cheaper to buy more small servers than one
12527.939 -> giant server. But also, let's say you instead
of using a 256 core server, you had decided
12528.939 -> to use 832 core servers. Now, here's the thing.
Now, if you use 832 core service, and one
12529.939 -> of those servers fails, you still have seven
left. But if you use the 250th course 56 core
12530.939 -> server and that fails, you got nothing, like
my grandmother call it bubkis or Depa, depending
12531.939 -> upon which grandmother had the Jewish one
or the Greek one. So when you're in this position,
12532.939 -> the low balancer remove that single point
of failure. Now the load balancer improves
12533.939 -> scalability as well. As why because you know,
I might need eight servers. But if I need
12534.939 -> nine servers 10 servers left on servers 500
servers. By using load balancers, I can keep
12535.939 -> spreading the load. And no one's the wiser.
So I can allow a lot of performance. And at
12536.939 -> the same time, I can produce availability
by removing single points of failure. So I
12537.939 -> love, love, love single points of failure.
Now how to load balancers remove single points
12538.939 -> of failure through a HealthTech server one,
are you there? Yeah, I'm here, server two
12539.939 -> here. Yes, I'm here. Server three, I'm here.
I got it, I got it. I love it. I love it.
12540.939 -> I love it. It's kind of keep that in the back
of mind. That's why we're using load balancers
12541.939 -> to improve performance and availability. Now,
load balancers don't think they're new devices.
12542.939 -> They're 20 plus years old devices. We love
load balancers that typically fall into two
12543.939 -> categories. AWS has lots of names for them.
But you either have network load balancers,
12544.939 -> or we have application load balancers. I don't
care what names you call them. Gateway. Load
12545.939 -> balancers are one of two. And network load
balancer operates at layer four, which means
12546.939 -> it looks at the TCP UDP information. And network
load balancers are fast, fast, fast. So why
12547.939 -> not too bright? 246-810-1214 1618 2224 2623?
I mean, it's fast, right? It's not doing that
12548.939 -> much. And application load balancers really
smart. So instead of doing two plus two equals
12549.939 -> four, now we're doing calculus in a row. Now,
how fast can you do calculus me, my wife pretty
12550.939 -> quickly, me. I don't know how to do calculus,
I'd have to learn I could learn anything.
12551.939 -> But it wasn't something that I ever had to
learn sort of learn it. But the point is,
12552.939 -> is it would take longer to do calculus, actually,
to actually do not simple addition. So when
12553.939 -> we deal with application load balancers, we're
looking at deep stuff inside of an HTTP or
12554.939 -> HTTPS header. No one, we're on AWS. They have
network load balancers, they call them elastic
12555.939 -> load balancer, because the marketing people
have to stick the word elastic in front of
12556.939 -> everything. And they also have application
load balancers, for example, but they call
12557.939 -> them elastic load balancers to and because
they call classic load balancer, which of
12558.939 -> course can be a network or an application
load balancer, they call it a classic one,
12559.939 -> they recommend you don't use them, same concept.
So when elastic load balancers a virtual load
12560.939 -> balancer instead of a physical load balancer,
and it distributes traffic, know what to distribute
12561.939 -> traffic to, wherever you want it to typically
speaking virtual machines like your web servers.
12562.939 -> Now, the load servers are kind of auto scaling,
they kind of do whatever they need, they give
12563.939 -> you enough capacity.
12564.939 -> Load Balancers can load across most spread
load across multiple availability zone failure
12565.939 -> support health checks, and they can terminate
your SSL connection. So why is it cool to
12566.939 -> terminate your SSL connection? Well, SSL is
a form of encryption, encryption. And what
12567.939 -> do I mean by bad encryption encryption is
running mathematical calculations. And let
12568.939 -> me tell you mathematical calculations take
CPU performance. And if you put your if you
12569.939 -> put these math calculations in the load balancer,
where does this encryption not have to occur
12570.939 -> on your web servers, so by offloading the
encryption onto the load balancer, instead
12571.939 -> of your web servers, your web servers can
be hanging out there like Cindy the cat, who's
12572.939 -> eating tuna fish looking happy as a lark,
relaxed, relaxed, relaxed. That's what we
12573.939 -> love this.
12574.939 -> So AWS network load balancers, route traffic
based on network stuff. Millie can handle
12575.939 -> millions of requests per second. Excellent
was rapidly changing conditions and network
12576.939 -> load balancers because they look at their
TCP port, source and destination protocol
12577.939 -> and port number. And that's it. They're fast
and they're stateful. Send this thing to server
12578.939 -> one goes to server one. Next one goes to server
two next to server two, certain sessions load
12579.939 -> balancer and server three. And those connections
stay until the connection is terminated between
12580.939 -> the users are stateful. What happens they
call it a sticky session that map's the source
12581.939 -> and destination of the connections. But it's
by default on network load balancer. Know
12582.939 -> now with AWS, you can put a static IP address
on a load balancer? Well, we've been putting
12583.939 -> static IP addresses on load balancers for
20 plus years. And you can also route to containers
12584.939 -> and then when you're going to be running containers,
you're typically going to be using an application
12585.939 -> load balancer. Well, let's see what it looks
like in action. Got a network load balancer
12586.939 -> load balancing and high speed between two
availability zones. Boom, boom, we're gonna
12587.939 -> go. Let's talk a little bit about application
load balancers. application load balancers
12588.939 -> work at layer seven of the OSI model. And
they look at the paths provided in the URL
12589.939 -> elements inside of a HTTP or HTTPS header,
the HTTP routing method like push or get,
12590.939 -> they can route based upon source IP addresses.
And these application load balancers are truly
12591.939 -> ideal for balancing HTTP and HTTPS traffic.
Ideal from balancing request between micro
12592.939 -> services and container applications. optimal
load balanced multiple requests on the same
12593.939 -> server by registering the same server on multiple
ports. And they're pretty good for load balancing
12594.939 -> there for those types of things. Now, how
does this thing work? Well, in a similar manner,
12595.939 -> we've got our load balancer, this listening,
and all load balancers route to something
12596.939 -> called the target group. But here we're dealing
with much much, much greater intelligence.
12597.939 -> Now, AWS has a classic load balancer, guess
what, it's the same thing. And it works on
12598.939 -> both EC two instances, classics and V PCs,
auto scalars. Just like the rest of them,
12599.939 -> provides the same cloud trail auditing, they
don't want you to use it, they want you to
12600.939 -> use them, called an elastic load balancer.
Now let's talk about internal load balancers
12601.939 -> versus external load balancers. internal load
balancers are for your internal applications,
12602.939 -> like you're not going to put your HR database
on the public Internet. An organization may
12603.939 -> have its private website called www i n, which
is pretty common for an organization, especially
12604.939 -> tech companies, they have an internal website
called www i n, which is only accessible for
12605.939 -> people inside of the network.
12606.939 -> So there will be an internal load balancer
an external load balancer, also called an
12607.939 -> Internet facing load balancer is one that
protect coverage your systems to the internet.
12608.939 -> And the way load balancers work is they typically
have a listener. A listener is a process that's
12609.939 -> going to wait for connection requests. application
load balancers are gonna look for HTTP HTTPS
12610.939 -> requests. Not like globein. Ca balancers by
nature are going to look at a TCP or UDP request
12611.939 -> or TCP UDP request. So let's talk a little
bit about load balancer concepts we've got
12612.939 -> targets. Target is where the application distributes
his traffic targets can be a single instance
12613.939 -> or an IP address. When the target an IP address,
it needs to be from the private address base,
12614.939 -> meaning RFC 19 address space or the shared
address space. So when we're using elastic
12615.939 -> load balancers, we can only put route to private
addresses. So you're gonna have private addresses
12616.939 -> in your web servers anyway, because the load
bouncer is going to be your public facing
12617.939 -> drugs. So what does that mean? RFC 1918 addresses?
Well, that includes the 10 dot 0.0, slash
12618.939 -> eight, the 172 16 dot 0.0, slash 12, the 192
168 dot 0.0, slash 16. And the 100 dot 0.0,
12619.939 -> slash 10, RFC 6598. That's what we're talking
about. Now, I mentioned we can send to a target,
12620.939 -> but we could also create a target group, what's
the target group a group of systems. Now as
12621.939 -> I previously mentioned, when we're dealing
with load balancers, we can group our things
12622.939 -> to, we have the concept of sticky sticky sessions.
When we're dealing with sticky sessions. On
12623.939 -> the network load balancer, it's by default.
But on the application load balancer, you
12624.939 -> might want to enable it. And if you want user
one, to say on the same web server, we can
12625.939 -> do that. Through a sticky session, the way
that I work on a network load balancer is
12626.939 -> as part of the flow. When an application load
balancer they don't really have these kinds
12627.939 -> of flows. So what'll happen is the application
load balancer will give a cookie and it will
12628.939 -> use a cookie to trust the session, practice
session. And that's the way these work. Now
12629.939 -> all load balancers use a health check. Are
you there? Are you there? Don't get a response
12630.939 -> removed from the absolute rotation.
12631.939 -> Now we've reached an interesting break in
the content. And this is where we're going
12632.939 -> to do some voting
12633.939 -> We're in the next section is security and
it's a pretty big session. Today we're going
12634.939 -> to talk about security on the AWS platform.
Now when we talk about security, realize this
12635.939 -> is just a subset of security. This is an AWS
Certified Solution Architect Associate course.
12636.939 -> So we're going to cover the AWS security services
in the associate and professional exams. Now
12637.939 -> remember, in real life, security is much bigger
than this. We're going to be using things
12638.939 -> from the marketplace next generation firewalls,
but they're not part of your AWS exam. And
12639.939 -> we need to focus on the exam. That's why this
is the solution architect certification versus
12640.939 -> cloud architect training, but it's on your
exam, your exam is going to help you get the
12641.939 -> interview. And then it's your knowledge after
the interview on cloud computing that gets
12642.939 -> you caught hired. But we still want you to
get that interview. So in this section, what
12643.939 -> are we going to talk about, we're going to
talk about who's responsible for what parts
12644.939 -> of your VPC, we're going to talk about principle
of least privilege, which I like to call need
12645.939 -> to know. We'll talk about industry compliance,
identity and access management, multi account
12646.939 -> strategies, network access lists, security
groups, the AWS version of a firewall called
12647.939 -> WAF, we'll talk about the AWS is an intrusion
detection systems. We'll talk about DDoS mitigation,
12648.939 -> we'll talk about the service catalog, and
we will talk about the systems manager parameter
12649.939 -> store. So we're going to begin by security
who is responsible. And the reason we're going
12650.939 -> to deal with this is normally in your own
data center, you're responsible, right? You're
12651.939 -> responsible for all your firewalls, your routers,
your switches, your QoS policies, your identity
12652.939 -> and access management, everything that because
you own data center, you manage the data center.
12653.939 -> And if you manage the data center, you want
to hire Navy SEALs, snipers to be on the roof,
12654.939 -> you could do that. You can hire whatever level
of security you want in your data center.
12655.939 -> Now on the cloud, you don't have access to
that, because the cloud provider manages their
12656.939 -> infrastructure, and you manage your virtual
infrastructure. So when we deal with this,
12657.939 -> we're dealing with a shared security model.
And you can think of it this way, AWS maintains
12658.939 -> the security of their cloud. And the customer
maintains the security of their virtual cloud
12659.939 -> or their virtual data center. So when we talk
about security, we can only control our stuff.
12660.939 -> If the college gets hacked into, we have no
control over that. So we have to trust that
12661.939 -> our cloud providers are doing a great job
doing security of their own systems. And for
12662.939 -> the most part they are now they're not in
variable to hacking, they get hacked to we've
12663.939 -> seen in the past few years, Azure was recently
hacked. And we know that anybody can get hacked
12664.939 -> and everybody will get hacked. It's just no
matter what, but you manage the security of
12665.939 -> your virtual private cloud. AWS manages the
security of the underlying hardcore tech infrastructure.
12666.939 -> So let's talk about what that means. It means
the customers responsible for their identity
12667.939 -> and access management users and roles. And
we'll talk a lot about that patching of the
12668.939 -> operating systems of our virtual machines,
maintenance and security of our own applications,
12669.939 -> configurations of our security groups, physical
security for the devices, that we're dealing
12670.939 -> with our own firewalls, for example, that
we're going to use inside of our systems,
12671.939 -> pretty important to us. Whatever intrusion
detection prevention system we use, and they've
12672.939 -> gotten rid of our own security services. So
that's kind of what we maintain. And of course,
12673.939 -> you know, AWS manages the security of their
infrastructure. So I drew it out for you to
12674.939 -> kind of make it a little easier for you. You
can see on the bottom, AWS manages the servers
12675.939 -> and other BIOSes and their servers, their
hypervisors. They manage their storage area
12676.939 -> networks, whether they be block storage, object
storage, file storage, they secure their databases.
12677.939 -> They secure their networking, they secure
their regions, their Edge locations, the data
12678.939 -> centers, otherwise known as availability zones.
What are we secure? Let's make it a little
12679.939 -> simpler. Our data, our applications, the operating
systems and our virtual servers, any kind
12680.939 -> of encryption of our data we're using any
kind of networking traffic that we're using,
12681.939 -> for example, you could run IPsec over our
direct connections or over a VPN. So there's
12682.939 -> that. That's kind of what we're talking about.
Now, the first concept whenever you get into
12683.939 -> security It is the principle of least privilege.
I hate this term, I like to call it mean to
12684.939 -> No. Military, it makes it simple need to know.
And here's what it means. If you don't need
12685.939 -> to know that, know anything about that for
your job, you're not told about it, if you
12686.939 -> need to know it, you're told and here's why.
The more information you have, the more you
12687.939 -> can harm the company, either maliciously,
by going to a competitor and selling your
12688.939 -> secrets. Or by accidentally disclosing information
you don't even know we're by using a system
12689.939 -> and the wrong way and damaging things. So
the principle of least privilege is very critical.
12690.939 -> He basically says, give your users the least
amount of access necessary for them before
12691.939 -> them front perform their function, and no
more, no moss, only what's necessary to do
12692.939 -> their jobs and nothing else. When somebody
leaves your company, when they're walked out
12693.939 -> by security, lock their systems down, so they
can't damage you. So principle of least privilege
12694.939 -> means as follows. provide only the necessary
features, functionalities and access that
12695.939 -> somebody needs to do their job, and nothing
else. And when they leave that company, you
12696.939 -> revoke it immediately. And that's why organizations
just to let you know, actually have security
12697.939 -> walk people out. And sometimes it's the saddest
thing in the world. And I've seen it over
12698.939 -> the past few decades happen a lot. Sometimes
the only way somebody finds out they were
12699.939 -> laid off is their email doesn't work. They
can't log into the systems, they call Help
12700.939 -> Desk and all of a sudden they find out they've
been laid off. Now this is a horrible, horrible
12701.939 -> situation. But that's why it's going on. And
I've seen it happen so many times, not good
12702.939 -> companies, well run companies don't do this.
But you know, it happens and it happens more
12703.939 -> than you would you'd like to know. So let's
look at this in another context. Here I am,
12704.939 -> I'm an administrator, I need to access something
needy. And I basically got authenticated by
12705.939 -> the system. The system says yes, Mike, you're
allowed to do this. And yes, you're authorized
12706.939 -> to do this. And I'm allowed. Now by comparison,
we've got another user, that's not me. And
12707.939 -> this user is not allowed to do their thing.
And because this user is not allowed to do
12708.939 -> their thing, they're denied access denied.
And you know, this is really we're talking
12709.939 -> about by using the principle of least privilege.
So before we get into real security concepts,
12710.939 -> and we're gonna get into a lot of them, let's
talk about industry compliance. Many industries
12711.939 -> have all kinds of security regulations and
requirements, data retention, etc. And AWS,
12712.939 -> like all cloud providers supports the main
industry where compliance and you can see
12713.939 -> a full list on the AWS website, but the main
ones I'll cover, you know, PCI DSS, or payment
12714.939 -> cards, or ISO 9001 27,001 27,017 27,018, pretty
standard requirements. AWS supports them.
12715.939 -> FedRAMP if you're gonna do anything with the
US government, and HIPAA, which is basically,
12716.939 -> you know, health care us privacy rules and
regulations. Now, let's get involved with
12717.939 -> identity access management. And this is a
key part last line of defense in your security
12718.939 -> architecture. Last line up first one. Now,
I hate the term identity access management
12719.939 -> because it sounds so fancy and complicated.
I'm going to simplify it. Many years ago,
12720.939 -> before we used word inflation we used to call
a spade a spade. We called Coffee Coffee before
12721.939 -> it became a latte and all these other funny
things. And we used to use the term triple
12722.939 -> A authentication, authorization and accounting.
And I'm going to cover those concepts because
12723.939 -> I want you to truly understand this I am or
identity and access management. Authentication.
12724.939 -> Who are you? Who do you claim to be authenticating
right now? I am Michael Gibbs CEO go cloud
12725.939 -> careers. Now, they could authenticate me via
a retina check. They could use my what they
12726.939 -> call it my fingerprints. They could authenticate
me by via DNA. They could authenticate me,
12727.939 -> they a password and a username. They can authenticate
me via something you have and something you
12728.939 -> know, like your ATM card and your PIN number.
So authentication is who are you? So the first
12729.939 -> component of identity and access management
is who are you? Now the next component is
12730.939 -> authorization. So let's talk about what authorization
is. authorization is what are you allowed
12731.939 -> to do?
12732.939 -> So we can have all users accessing all things.
I'll give you an example. Chow them. She's
12733.939 -> an incredible Cloud Architect of mine. She
works in our team. She's absolutely amazing.
12734.939 -> If Charles says to me, Mike, I'm going to
come visit you in Florida. I'd say thank you
12735.939 -> child can't wait to see you mean she'd knock
on the door. She I'd look at her and I know
12736.939 -> she's child because I've seen her before.
Then I would give her the keys to the house.
12737.939 -> I'll give her the keys to the Mercedes and
tell her to go in the house, take the guest
12738.939 -> bedroom, my wife would prepare all the things
for her and chocolate have access to every
12739.939 -> room in my house. Yeah, it would be authorization.
No, by comparison, if it wasn't super child,
12740.939 -> the amazing cloud architect that walked into
my house, and it was a stranger, I might look
12741.939 -> to the people on the door and say, Get out
of here. Or I might question them, and they
12742.939 -> say I need to use your phone, my car's broken
down, maybe I bring my phone outside to them,
12743.939 -> let them use the phone. Or maybe I'll allow
them to come in. And I stand by and I stand
12744.939 -> guard. See authorization. And the key is we're
gonna give different privilege levels to different
12745.939 -> people based upon their needs to know and
how trustworthy they are. So authentication,
12746.939 -> identified its child authorization until Josh,
you can do anything because I totally trust
12747.939 -> show. Now the next thing is the counting.
That's the last part of this triple eight
12748.939 -> concept. I don't give you the example of accounting
child comes in visits, she stays with us,
12749.939 -> she plays with my cat, Cindy, my wife gives
her all the things that she needs. And then
12750.939 -> after child leaves, my wife texts and says,
Tell us three shampoos, four bars of soap,
12751.939 -> a 22 cans of tuna, which are all really what
this Cindy Christie Cup opening cuts cans
12752.939 -> of tuna for Sunday. So I need to go to the
store. And I need to buy 22 cans of tuna,
12753.939 -> this many bottles of shampoo. And this much
though. That's called the counting. No CIO
12754.939 -> Identity and Access Management real is really
about who you are, what you're allowed to
12755.939 -> do, and then keeping track of it, or building
an audit trail, so you can find out after
12756.939 -> the fact. Now, when you're dealing with AWS,
they're gonna define the concept of users
12757.939 -> and roles. And we're gonna get much, much,
much more into that depth later. But here's
12758.939 -> the thing you need to remember, it uses the
person, like super child, the amazing cloud
12759.939 -> architect, that's a user, or role, generally
speaking is a computer, meaning one system
12760.939 -> accessing another system, you may have been
involved in Linux, and you're familiar with
12761.939 -> the term service account, which is typically
used, like in your three tier web location,
12762.939 -> where you've got your web servers, your app
servers connecting to your database, and the
12763.939 -> service account connects your application
servers to your database. So if you've got
12764.939 -> an easy to instance, accessing DynamoDB, that
would be a role. But if we've got me accessing
12765.939 -> a system, I am a user. So while we're at it,
let's look at this concept. Again, authentication,
12766.939 -> user signs in and we know who they are. Maybe
we use a username and password, a one time
12767.939 -> password, something you have in something,
you know, but whatever the case, that's what
12768.939 -> we're using. Now, next.
12769.939 -> After we've identified that user, we have
to authorize that user for what they're allowed
12770.939 -> to do.
12771.939 -> And then after that, we have to track that
user. So that's the basis of authentication,
12772.939 -> authorization accounting. Otherwise known
as identity and access management, I don't
12773.939 -> make up those terms somebody else does. Let's
talk a little bit about more about Iam users,
12774.939 -> users or identities, people that have the
permission to access or interact with your
12775.939 -> resources on AWS, what are your resources,
your virtual machines, or containers or storage.
12776.939 -> Now let's create it by a principle and get
into the term principle and what that means
12777.939 -> later. But in other words, a systems administrator
needs to grant you access to things otherwise
12778.939 -> you won't be able to reach it. And we can
create our user accounts, you know, with a
12779.939 -> management console, the command line interface
with the software development kit, that means
12780.939 -> pushing it over the API. An im users are permanent
lists deleted by the administrator. So think
12781.939 -> about this, somebody works for you to get
a job going somewhere else, and you have to
12782.939 -> remove their access, you must delete their
account. So let's look a little more into
12783.939 -> this. We've got a user you can see the user
logs in they identify themselves. And you
12784.939 -> can see they have access into other proprietary
no SQL database or the object storage or anything
12785.939 -> that's sitting on a virtual machine.
12786.939 -> So let's talk a little bit about authentication
options. Let's talk about the simpler ones
12787.939 -> and get better at the simplest name, username
and password. Hi, my name is Mike and my passwords
12788.939 -> name is cat. No, you'll never find the user
password name cat but you get the concept.
12789.939 -> Username and Password. Log into the console.
enter my username Mike, enter my password
12790.939 -> name cat. And of course, I'd be hacked in
about three seconds with a password like that.
12791.939 -> So it would never use something like that.
But that's your username and password. What
12792.939 -> if I want something a little better, we can
use something called an access key. And an
12793.939 -> access key is a combination of a 20 character
key ID, and a 40 character secret. That's
12794.939 -> some security. And this access key you would
use to connect to AWS via an API, one system
12795.939 -> connecting to another one done over the software
development kit, so to speak, when you're
12796.939 -> pushing some decent security between systems.
Now, if we want to get even better, we can
12797.939 -> use an access key in a session Towson. And
what we're dealing with here is when I am
12798.939 -> authentication needs to occur under an assumed
role, our secure token, we're going to use
12799.939 -> the token alongside the asset access key,
and that's going to maximize our security.
12800.939 -> Now, I know I briefly covered what is authorization,
but I want to do it again. Authorization occurs
12801.939 -> by determining what specific things you're
allowed access to. And these are going to
12802.939 -> be policies that are going to be written,
you can give it to a user or a group or a
12803.939 -> role. So let's talk about it. Hi, I'm a user,
you can add specific policies for me under
12804.939 -> authorization. Now, let's say you've got a
company with 200,000 employees, you want to
12805.939 -> add policies per user one on one manually
200,000 times. I don't think so. So what you
12806.939 -> couldn't do, and we'll talk about more of
this later, is you can create groups of users,
12807.939 -> network admins, sis admins, cloud architects,
finance people, HR people, and then you could
12808.939 -> pile up apply a policy to the group. And then
when you hire someone, you hire 5000, new
12809.939 -> solution architects, put them all in the solution
architect group, and they inherit the permissions
12810.939 -> of the group, much, much more scalable. That's
how everybody does things. Now when we write
12811.939 -> policies with regards to AWS, they're written
in JSON, which is otherwise known as JavaScript
12812.939 -> Object Notation. And default policy for anything
with IAM is deny access to everything until
12813.939 -> you configure it. Now, there's two ways that
you can set up your systems allow everything
12814.939 -> until you lock it down, hacked in three seconds,
or allow what you need. So that's why they
12815.939 -> start locked out. Now, when it comes to a
policy, there's a few things that we have
12816.939 -> to determine the effect first, do I allow
Cindy, access to the room? If the answer is
12817.939 -> yes, I allow? If the answer is no, because
the room is full of birds, and my cat Cindy
12818.939 -> likes to eat birds, the policy is denied.
Now we also under the authorization authentication,
12819.939 -> authorization, sorry, authorization policy
needed to find the service. What is the cat
12820.939 -> allowed access to with the camera allowed
access to s3, as the captain had a lot access
12821.939 -> to the room is the cloud not allowed into
a room because it's full of birds. So the
12822.939 -> effect allow or deny the service is what we're
protecting or not protecting. And then we
12823.939 -> put the resource. Now with AWS, we have the
opportunity to use a full Amazon resource
12824.939 -> name. And by doing this, we can point to the
exact resource that we're allowing access
12825.939 -> or denying access. Now the last things that
we're going to talk about Under this policy
12826.939 -> include the action, what is the permissions
of the user Read, read write. And we can add
12827.939 -> some conditional elements which are optional,
that very granular, maybe it will allow access
12828.939 -> to a certain subnet, at a different time during
the day. So go through, so now you get what
12829.939 -> they're actually doing. So let's go back to
looking at authorization, again, from a graphical
12830.939 -> perspective. Here, we see we've got a user
this user has a lot access to object storage,
12831.939 -> otherwise known as s3, and DynamoDB. But when
they try to get to that management console,
12832.939 -> they're not an authorized user. So they are
denied, denied denied.
12833.939 -> Now, when you're dealing with AWS I am concepts,
I talk about some more critical things, it'll
12834.939 -> be on your exam, and you need to know what
the credit policy will first talk about a
12835.939 -> principle. All that a principle is, is an
im entity, or something meaning a user or
12836.939 -> role that has permissions to access something
on the AWS cloud. Let's talk about the root
12837.939 -> user, the King, the Queen, whatever you want
to call it. When you first create the account,
12838.939 -> you're creating the root user, the person
that's the owner of the account. And when
12839.939 -> you own the account, and you're paying for
the account, you have unrestricted access
12840.939 -> to anything. So of course, you're going to
be the root user. Now, don't log in as root,
12841.939 -> because you got to accidentally delete your
entire organization by mistake. And if any
12842.939 -> of you have ever been Unix users or Linux
users, you've been told don't log in and wrote
12843.939 -> was working on root as root, it's the same
thing, same thing. Because you can't restrict
12844.939 -> access to the root user. And one little silly
thing. And it's good to know, when you have
12845.939 -> a root user, don't use the password cat. Because
somebody could use the password cat, which
12846.939 -> they can crack with a GPU in less than five
minutes. Poof, they've used the password cat.
12847.939 -> And now they're inside of your systems, right.
And now they can spend a billion dollars on
12848.939 -> systems if they wanted to, and it's gonna
be billed to you. So use a strong password.
12849.939 -> No, realistically speaking, you should also
secure that strong password somewhere, maybe
12850.939 -> on a key in a safe, has locked down inside
of a safe and another safe and another safe,
12851.939 -> hands on you know your systems and how critical
they are. And maybe enable multi factor authentication
12852.939 -> on your root account. So it's not just a username
and password. And don't use for programmatic
12853.939 -> access, meaning don't use this key on a computer
that's connecting to another computer, because
12854.939 -> when that computer gets hacked, your whole
account is hacked. You think these things
12855.939 -> sound very simple. But reality is, I've seen
it all done before. So let's talk about this
12856.939 -> root user. You'll note that I had the graphics
person put a crown on them. Because if they're
12857.939 -> the crown queen, or the Crown King route has
unlimited privileges inside of your virtual
12858.939 -> private cloud, otherwise known as your virtual
private data center.
12859.939 -> So let's talk a little bit more about identity
and access management. Identity and Access
12860.939 -> Management is used to determine who can access
the system uses standard concepts like users
12861.939 -> and groups and access control policies. These
are the same things that you'd be dealing
12862.939 -> with with a RADIUS server, for example, or
a Microsoft Active Directory scope server.
12863.939 -> And the plan is we create a group create a
group versus the security personnel. And they
12864.939 -> all get security personnel positions, the
accounting team, the finance team, this is
12865.939 -> the MIT administrators. Member, as I mentioned
before, could you imagine writing 200,000
12866.939 -> security policies? No. But what if you're
AWS, new 20,000 solution architects, I don't
12867.939 -> know how many of you put them all under a
single policy. It's better than nothing, making
12868.939 -> 20,000 single policies. So here's how the
groups work. I create a group cats. I provide
12869.939 -> permission so the cats can open and close
the back door, but they can't enter the bird
12870.939 -> room. And then all the cats named to the room,
Cindy Sonny caddy, Melanie, any kind of cat
12871.939 -> I want has allowed to the group. Now that
cat has the same permission, they all have
12872.939 -> the same permissions. So my cat, Cindy, and
Sonny are under the same permissions. And
12873.939 -> Sonny can enter a room Cindy can't enter that
room either, which would make Sonny the cat
12874.939 -> probably not so happy. And Cindy the cat not
so happy either. As I mentioned before, roles
12875.939 -> are generally systems. And we're going to
talk about several kinds of roles, we're going
12876.939 -> to get a little bit in the weeds here, it
gets a little complicated here. So please
12877.939 -> bear with me. There are a few kinds of roles
there what's called a service role for easy
12878.939 -> to hear, we got to service the service role
roles, this system into this. Simple, easy.
12879.939 -> There's a cross account role, which is when
you go from one VPC, to another AWS, etc,
12880.939 -> as a rule. And there's an identity federation,
let's be fair, no serious business is going
12881.939 -> to be using the AWS Iam system, they're going
to be using Microsoft Active Directory, all
12882.939 -> their users are going to be in Active Directory.
And they're going to connect to Active Directory
12883.939 -> and pull that active directory information
into AWS, called federated identity. And we'll
12884.939 -> talk much more about that. But understand
this roles enhance security by making sure
12885.939 -> that credentials are never stored anywhere.
You don't want to put a password in a computer
12886.939 -> to attach another computer because if one
pin computer gets compromised guess what your
12887.939 -> entire systems or paths are, are compromised.
And the way roles and whose security is what
12888.939 -> will happen is the AWS service, the API will
provide a temporary token for the system that
12889.939 -> has to access the other system. And here's
what's so great about the token, expire, I
12890.939 -> give you a token and it's only good for an
hour. You can use it for an hour. Now if the
12891.939 -> token will change within an hour. Now if a
hacker got access to your token, the worst
12892.939 -> case scenarios they can use it for an hour.
No 60 minutes 45 minutes of the hour pass
12893.939 -> the hacker gets couldn't get control of your
token. and they can only use the system for
12894.939 -> 15 minutes. And guess what, at the end of
the 15 minutes, they can't access anything
12895.939 -> because the token has been expired. That's
why we love them so much.
12896.939 -> So, I am relatively used for one system to
access another system. I am roles can be assumed
12897.939 -> by application services. I am relatively short
term credentials, meaning periodically which
12898.939 -> is substantially enhances their security.
I am roles will basically leverage the Security
12899.939 -> Token Service, which we'll talk more about.
And tokens are temporary. Default expiration
12900.939 -> time is 16 minutes. But in a really high security
environment that can be reduced down to 15
12901.939 -> minutes, or they can be extended to 36 hours
to promote additional scalability. Now, talking
12902.939 -> a little bit more about IAM roles they are
typically used to grant permissions for applications
12903.939 -> running on EC two instances. I am roles are
really used by people when connecting to external
12904.939 -> identity providers like Active Directory,
or using your Amazon account or your LinkedIn
12905.939 -> account. I am roles are used to grant permissions
to im users in the same account to a different
12906.939 -> role. And grant permissions to different accounts.
It's called a cross account, log into my V
12907.939 -> PC. My V PCs peered with Chris's V PC. That's
called a cross account role.
12908.939 -> What I'm going to do is briefly mentioned
the Security Token Service. And then we're
12909.939 -> going to take some questions, and then we're
gonna get deep into the roles. So most of
12910.939 -> these roles require something called the AWS
Security Token Service. What that is, is something
12911.939 -> that's designed to provide trusted, trusted
users access with a temporary token. But the
12912.939 -> tokens expire. Here, I request access I get
given my token, I'm allowed access to the
12913.939 -> system. When that token expires, guess what?
It's no longer recognized by AWS. And we are
12914.939 -> done. The hackers, the hacker fake audit gets
access to expired information.
12915.939 -> Let's go back to the content. Now let's talk
about a cross account role. Actually, before
12916.939 -> we do everybody give me a hashtag, AWS Certified
Solution Architect Associate. So I know you're
12917.939 -> awake, alert and oriented.
12918.939 -> No cross account role enables you to access
another account, meaning you're in my account.
12919.939 -> And I'm connected to somebody else's account,
or cross account role and enabled me to do
12920.939 -> this. So Chris over there has his own AWS
VPC? No, he doesn't, because we're running
12921.939 -> an OpenStack cloud was much cheaper for us
based on our business, but for other things,
12922.939 -> it wouldn't be. But if Chris has his VPC and
I have my VPC and I want to access something
12923.939 -> on his VPC, I would get a cross account role.
And that's often set up to allow a user in
12924.939 -> one AWS account access to an account that
they don't own. So when you're connecting
12925.939 -> recruiting across a chrome, meaning you're
allowing somebody else into your account,
12926.939 -> and they're not you part of your company,
now you gotta get scary, scary, scary, good
12927.939 -> when it actually comes to the security. So
you know, super Chow or Chris, they're part
12928.939 -> of my company, they have pretty much full
admin rights to anything they need to. But
12929.939 -> if it was somebody else that I was dealing
with, perhaps I had an adjunct instructor
12930.939 -> from some other company, and I only wanted
them access to Tuesday's class material. With
12931.939 -> a cross account role, I would only give them
access to Tuesdays class material, not everything,
12932.939 -> because with the cross account role, remember,
you're bringing in other people that are not
12933.939 -> part of your company, into your business.
So that need to know that principle of least
12934.939 -> privilege becomes critical, critical critical.
So give access to only what's needed. And
12935.939 -> nothing nothing, nothing else. So while it's
always essential, use the principle of least
12936.939 -> privilege. With a cross account role, it is
critical, critical critical. Cross account
12937.939 -> roles. When we're dealing with cross account
roles, an External ID is needed. Now this
12938.939 -> External ID is going to be uniquely associated
with the role. The External ID can be a secret
12939.939 -> identifier that is only known by a third party
for example. But when you use this cross account
12940.939 -> role, you must specify this ID when you define
a trust policy. The third party obviously
12941.939 -> will provide this ID when somebody assumes
the role. permissions needed by the third
12942.939 -> party are obviously necessary to work with
your AWS account. So let's graphically look
12943.939 -> at across account real quick. Here you can
see Company A, company B and Company C. They're
12944.939 -> all allowed into my virtual private cloud,
which I like to call my virtual private data
12945.939 -> center. And by using this, each one gets access
to privilege. So I kind of like to do it that
12946.939 -> way.
12947.939 -> Across the columns roles will work, a role
is going to be created for your external user,
12948.939 -> the external user is going to connect to the
AWS Security Token Service and get a temporary
12949.939 -> token. And when the external user wants to
access it, we'll provide that temporary token.
12950.939 -> Last, one of the more complicated roles we'll
get into, let's get into a much simpler role,
12951.939 -> a service role, which everybody else calls
a service account, but it'd be what was called
12952.939 -> a service role. And this is a role taken by
a virtual machine called and you see to instance
12953.939 -> that it connects us with another service.
Effectively, what's enabling your applications
12954.939 -> to make secure API calls. So think of it this
way, you've got an easy to instance that wants
12955.939 -> to post messages into an SQS queue, you've
got a system that wants to access something
12956.939 -> in an s3 bucket, you've got your AC two instance
that wants to access one of your relational
12957.939 -> databases. Now we're dealing with this service
role. So let's graphically look at this real
12958.939 -> quick. Here we go. Easy to instance, master
on access to proprietary Amazon, no SQL database
12959.939 -> Dynamo DB.
12960.939 -> And we create an easy to service roles. Pretty
simple. Let's talk about how you create a
12961.939 -> policy and ion policy.
12962.939 -> The im policy is going to determine who and
what can access what systems or resources.
12963.939 -> In this policy, you can assign permissions
to specific resources or all resources. And
12964.939 -> when you provide access to specific resources,
using the Amazon resource name, we get real
12965.939 -> granular and specific accesses, but not access,
which is fantastic. Now, many of you guys
12966.939 -> are fully familiar with regular expressions
or Boolean things. And if we want access to
12967.939 -> everything, we can just use that Asterix that
wildcard, just like you would in a regular
12968.939 -> expression with BGP, or many other things,
you know, with Linux. Now, there's going to
12969.939 -> be two kinds of policies that are two main
types of policies in AWS manage policy and
12970.939 -> a customer manage policy. Let's talk about
the two of them. A customer managed policy
12971.939 -> means you make it yourself. And an AWS manage
policy means you take it from them. So let's
12972.939 -> talk about how we're going to create a policy
under either case, we're going to sign into
12973.939 -> the AWS Iam console. In the navigation pane,
we're gonna choose policies, and we can create
12974.939 -> our own. Or we can use one that's made by
AWS. And let's think about why most of us
12975.939 -> are not JSON programmers. And if we're not
JSON programmers, AWS has a million kinds
12976.939 -> of policies from exaggerating the number but
a lot. And they work for 90% of use cases.
12977.939 -> So we can basically create our own policies,
or we can use the launch from AWS. Now our
12978.939 -> policies are not visible outside of our organization.
Keep that in the back of your mind. Now, if
12979.939 -> we create a customer managed policy, let's
talk about how we do it. Once we can take
12980.939 -> one of the AWS managed policies, for example,
and tune it works. Two ways, we can use something
12981.939 -> called the policy generator, which I'll show
you what that looks like in a minute. And
12982.939 -> that basically is going to ask you some questions.
And in the questions, you'll fill it in like
12983.939 -> an interview. And it's going to generate a
policy for you, which would kind of like,
12984.939 -> or you can create one from scratch. But don't
create a JSON policy from scratch unless you
12985.939 -> understand JSON grammar and syntax. So this
is perfect. So some of them JSON programming.
12986.939 -> So let's look at you know, what is this policy
generator, you go to the AWS web page, and
12987.939 -> you you put in your information for a policy,
it's going to ask you some questions, and
12988.939 -> you'll fill in the questions and you're gonna
get something that's going to help you. Now
12989.939 -> what do these policies actually look like?
Well, here's an example. Remember, I talked
12990.939 -> about a flat or the action factor allows if
your case we're going to allow an EC two instance
12991.939 -> to attach a volume and detach the volume,
and we specified a resource by the Amazon
12992.939 -> resource locator name. You can see that that's
over there. We've highlighted this and we
12993.939 -> specified some optional conditions over here.
12994.939 -> So now that we've created a policy, we have
to apply them somehow. Now we could have created
12995.939 -> a policy for the user, like I talked about,
Mike's allowed to do this. Chris is allowed
12996.939 -> to do this towel is allowed to do this. Alonso
has a lot to do this, Cindy's a lot of do
12997.939 -> this Leo's allowed to do this man, well, there's
a lot it is. And he can do this. And some
12998.939 -> can do this, we could do that. Or we could
create a group and put those users in similar
12999.939 -> jobs in the same group. So let's talk about
how we apply them. In most cases, we go we
13000.939 -> create an account, right? That's us. And then
we communicate. By voc our group people into
13001.939 -> groups, our network admins are caught admins
are put in one group, they have a certain
13002.939 -> set of privileges, or software developers
are put into another group. Our test engineers
13003.939 -> are put into another group. And each one gets
access to different policies.
13004.939 -> Hello, os do we further secure identity and
access management? Well, we use multi factor
13005.939 -> authentication, which can greatly increase
your Iam effectiveness. And this way, if you
13006.939 -> use the username Mike and the password cat,
which would be insanity, and at least it reaches
13007.939 -> out to you and ask for a one time password,
you're better off because the password cat
13008.939 -> will be instantly copied by anybody in a second
and a half. But, but won't be compromised
13009.939 -> is that one time password. So the key is to
use a good really strong password, and then
13010.939 -> use a multi factor authentication. And multi
factor authentication is not new, we've been
13011.939 -> using it forever, we used to have this thing
called the Mac card, money access card got
13012.939 -> renamed into an ATM card, I think that's what
they call it. Now. When you put your card
13013.939 -> in, you enter your password, I still call
it a Mac card because I've been around too
13014.939 -> long. You enter your PIN number and all of
a sudden money comes out of the machine that
13015.939 -> comes out of your bank account. Something
you have something you know, you may have
13016.939 -> seen some RSA secure ID cards that people
have had for the last couple of years. Again,
13017.939 -> something you have and something you know,
kind of keep that in the back of your mind.
13018.939 -> So kind of keep these things in your mind.
You know, that's the concept something you
13019.939 -> have something you know, it's not no. Keith
sold Mac cards. Yes, key I could see doing
13020.939 -> that. I knew you would remember mag cards
with me love that money access cards, I still
13021.939 -> think it was much simpler. But it was the
blue mat card. And before they turned into
13022.939 -> these easy things and credit card thing with
debit things now cards were so much easier.
13023.939 -> So, you know. So how does it work? Use the
organization sets up an authenticator app,
13024.939 -> which is basically a device with a key. The
authenticator device will create a one time
13025.939 -> password changes every few seconds like an
RSA Security Key when the user logs in with
13026.939 -> your username and password AWS and provide
a challenge asking for a one time password.
13027.939 -> And if the user provides the correct one time
password, they're authenticated. Maybe you
13028.939 -> guys have the Google app on your phone or
use the old RSA secure IDs. Key is something
13029.939 -> you have and something you know. Let's look
at multi factor authentication and action
13030.939 -> because I always love multifactor authentication,
something you have in something, you know.
13031.939 -> Here we go, we've got the user Billy Bob,
who logs into the system. Now the system says
13032.939 -> Hey, Billy Bob, what's the special one time
password you have? Billy Bob provides that
13033.939 -> user and he's allowed in. Now next, we got
somebody bad. Call it Joey that's impersonating
13034.939 -> Billy Bob. No, Billy Bob science in jelly
compromise Billy Bob's password. So Joey tries
13035.939 -> to log in. How many tries to lock in and pretends
to be Billy Bob? Billy, but he's really Joey.
13036.939 -> Billy Bob gets sent this one time password
request because it's sent to Billy Bob. And
13037.939 -> Billy Bob says I didn't try to log in doesn't
provide the access. And then Joe the bad hacker
13038.939 -> is not allowed. And that's really why we're
using you know, multi factor authentication.
13039.939 -> That's why you'll notice in recent years,
your banks, your phone companies or cable
13040.939 -> companies, they have almost mandated it. It's
due to the security issues. Let's talk a little
13041.939 -> bit about identity Federation's identity federation
has enabled management of access of identities
13042.939 -> in a single place like Microsoft Active Active
Directory. And the key components of identity
13043.939 -> federation are following an identity a user
Mike and identity store place where the users
13044.939 -> are stored like Microsoft's Active Directory
or fake Facebook, or LinkedIn, or Apple or
13045.939 -> Amazon. And then we typically have something
called an identity broker, which is an application
13046.939 -> that's going to check with the identity store
and provide access to the AWS resources. So
13047.939 -> not that complicated, what we're talking about.
Now, now I'm gonna give you the complicated,
13048.939 -> ugly steps of how this works. So we're gonna
get into the complicated, ugly stuff. Here's
13049.939 -> what's going on behind the hood, the user
is going to log into an identity broker using
13050.939 -> their corporate credentials. The identity
provider is going to authenticate the user
13051.939 -> against an LDAP based directory store identity
store. The identity provider will then establish
13052.939 -> a Security Assertion Markup Language token
with all the required information. And it's
13053.939 -> going to submit that assertion to the identity
broker. The identity broker will then call
13054.939 -> the assume role with SAML Security Token Service
API. And that's going to pass the SAML assertion
13055.939 -> to the role and for the Amazon resource to
basically assume, and if the API response
13056.939 -> is successful, it's going to include AWS temporary
security credentials for the associated permissions.
13057.939 -> And with the temporary credentials, the client
application can perform operations on AWS
13058.939 -> resources. So why don't we use an identity
Federation's? Well, why don't we just use
13059.939 -> AWS IAM? Well, scalability? Are you going
to have a person log into im Council and AWS
13060.939 -> and type all this stuff? No, that's just too
much work. It's unnecessary work. So you're
13061.939 -> going to establish a trust relationship with
unknown identity provider? Google's unknown
13062.939 -> identity provider, Amazon's unknown identity
provider, Facebook's unknown identity provider,
13063.939 -> apples unknown identity provider, Twitter's
unknown identity provider LinkedIn, Hey, have
13064.939 -> you ever been, you know, use pay using your
Amazon pay account, because it's pulling your
13065.939 -> information from Amazon. It's really the same
thing we're talking about you're no different.
13066.939 -> And identity Federation's can enable organizations
to connect their AWS VPC, to internal identity
13067.939 -> management applications, most likely Active
Directory, or some kind of an LDAP directory.
13068.939 -> AWS Iam functions are connected to the identity
provider. When a user attempts authentication,
13069.939 -> the request is passed to the identity provider,
the user will get their im authentications
13070.939 -> and receive their privileges based upon the
job role organizational causal center, and
13071.939 -> so many other providers. And this enable a
singular and granular control of your users.
13072.939 -> Alright, thankfully, we got through that.
I know that's a little bit ugly. But it's
13073.939 -> definitely definitely definitely something
you need to know. And there's some some questions
13074.939 -> going on with regards to networking in the
chatbox. They're not exactly correct. If there's
13075.939 -> some networking questions, we'll enter that
at the next time we actually get through things.
13076.939 -> Let's talk about single sign on. When we're
dealing with single sign on, it's really an
13077.939 -> authentication method that enables users to
securely authenticate with multiple applications
13078.939 -> and websites. So normally, it used to be you'd
log into your systems. And when you'd log
13079.939 -> into your systems, you'd have to then log
into the next site, the next site, the next
13080.939 -> site. And then maybe you noticed a couple
of years ago, things got a little smoother.
13081.939 -> you logged into your systems once and then
you had access to everything that's single
13082.939 -> sign on. And Single Sign On is a service that
allows your users to sign in to one place,
13083.939 -> and then access resources in your account.
So instead of logging into every system, you
13084.939 -> log into one typically used in a federated
environment. And it integrates with Active
13085.939 -> Directory assures Azure Active Directory,
Salesforce and other identity providers. It
13086.939 -> basically enables your user to authenticate
once and they don't have to authenticate again
13087.939 -> and again and again, when they authenticate
once the privileges are determined and the
13088.939 -> roles are assumed. Going back to this environment.
You can see what's going on we've got an on
13089.939 -> premise Microsoft Active Directory server,
which is then accessed or connected via direct
13090.939 -> connection or VPN, which provides network
layer reachability and communication between
13091.939 -> that and the AWS single sign on up. By logging
in that way, users can access everything they
13092.939 -> don't need to log into s3 They don't need
to log into DynamoDB and they don't need to
13093.939 -> log into the EC tunes.
13094.939 -> Identity Federation's Amazon Cognito is a
great service that provides authenticate ation
13095.939 -> authorization and user management for web
and mobile apps. It provides a means to connect
13096.939 -> to identity providers could needle enables
organizations to synchronize identity management
13097.939 -> and data across multiple devices. Cognito
users can basically sign in using a directory
13098.939 -> like username and password with third party
providers such as Facebook or Google. And
13099.939 -> the way it works is a user app authenticates
against Cognito and gets a token. The token
13100.939 -> is then used to provide access to AWS resources.
Visually graphically, I'll show you what that
13101.939 -> looks like. Got a user that logs in and get
the token. They then trade their token for
13102.939 -> credentials. And then they then use those
credentials to access or whatever services
13103.939 -> that they're they've been assigned. That's
really what's going on, we're dealing with
13104.939 -> identity Federation's with Cognito.
13105.939 -> Now, when we deal with Cognito, we're dealing
with the concepts of user pools and identity
13106.939 -> pools. And the user pool is a secure directory
within Cognito that enables you to manage
13107.939 -> users and one place that happens upon successful
authentication Cognito will issue a temporary
13108.939 -> set of tokens also called a JSON, which is
really a JSON token a little bit more about
13109.939 -> Amazon Cognito. Identity pools, Amazon Cognito
identity pools provide temporary AWS credentials
13110.939 -> Cognito identity pools work with authenticated
and unauthenticated identities, and Cognito
13111.939 -> can work with guests which are basically unauthenticated
users and authenticated users who have received
13112.939 -> the token a little more about Cognito. The
way Cognito user pools work is the user logs
13113.939 -> into the identity provider. And after they've
been authenticated by the identity provider,
13114.939 -> basically, they get a session key for the
user, then what'll happen is this using the
13115.939 -> session key, the application will place a
call to the Amazon Cognito get ID API. And
13116.939 -> it's going to get an identifier for the user.
And then what will happen is Cognito, Val
13117.939 -> will validate the session key from the login
provider. And if the session key is valid,
13118.939 -> it will get an API, get ID API and return
that for the user. The user will then send
13119.939 -> the key identity to Cognito Cognito will validate
the session key against the identity provider.
13120.939 -> And if that key is valid Cognito will call
the eight AWS Security Token Service provide
13121.939 -> a token, of course Cognito will return a temporary
token to the application so they can access
13122.939 -> to users. Now next thing we're going to talk
about is the directory service. directory
13123.939 -> service provides a hosted dedicated service
for Windows Active Directory servers, the
13124.939 -> basically Windows ad servers. So you can manage
yours like most businesses would, or you can
13125.939 -> use the AWS pre managed services for either
cases your option. Basically, they're theoretically
13126.939 -> high availability servers that are in two
availability zones by default. And you know,
13127.939 -> Microsoft ad is necessary for the most part
for Microsoft direct based workloads. So you
13128.939 -> can either maintain your own, and federate
that to AWS and not have to worry about any
13129.939 -> other stuff. And that way, you can use your
same ad servers, and AWS, Azure or Google
13130.939 -> in your data center and never have a problem
where you can use the AWS pre managed ones
13131.939 -> for you. It's your choice, based upon what
your business needs are, what your goals are
13132.939 -> your availability requirements. And they're
basically hosted servers that can be used
13133.939 -> by any your systems, your EC two instances,
your relational databases for Microsoft SQL
13134.939 -> Server, AWS and computing, to get back to
the content, and we'll talk about some firewall
13135.939 -> stuff, where we're starting to get into the
fun of security.
13136.939 -> Now we're going to talk about AWS Wow. And
there are times where AWS offers perfect,
13137.939 -> AWS WAF as a fine, traditional nangia generation
firewall, and it protects against common attacks.
13138.939 -> Typically, your man in the middle attacks
your DDoS protection to catch your SQL injection
13139.939 -> kind of attacks, cross site scripting attacks,
it's a fine basic firewall. And for a small
13140.939 -> business that doesn't have a lot of critical
requirements. It's completely completely fine.
13141.939 -> Your developers can customize a rule to block
or monitor web requests. And that's a totally
13142.939 -> fine, generic basic web application firewall.
The only problem is it doesn't adapt. Now,
13143.939 -> in reality, you're going to be using two clouds.
And the second use proprietary AWS WAF. You're
13144.939 -> going to be in trouble because you're getting
the same security policy on AWS and Azure,
13145.939 -> which means you can't use any of these proprietary
services. You're going to need something like
13146.939 -> a palo alto firewall, Cisco firewall, a fortunate
firewall, a checkpoint firewall, which all
13147.939 -> As much more robust security features and
functionalities, but let's talk about Well,
13148.939 -> well, if there's a basic firewall that users
can create rules, and place limitations on
13149.939 -> which IP addresses can be reached, which protocols
and port numbers can be reached, you know,
13150.939 -> benefits of laughs are that it's very, very
simple. And, you know, basically, we'll look
13151.939 -> at the IP addresses where they originate,
the country where they originate. I can validate
13152.939 -> requests, it can look in strings that appear
as requests, or the left month of requests,
13153.939 -> it can look at some bad SQL code that's in
your request, and you can block it. So it's
13154.939 -> really just a firewall that protects against
web application attacks, it looks for common
13155.939 -> exploits, you can put it on your CloudFront
distribution, which is a content delivery
13156.939 -> network, which we'll talk more about. You
can put it on an API gateway, our REST API,
13157.939 -> of course, your load balancers, and all sorts
of block your connections at Edge locations
13158.939 -> before they get onto your network. And there's
nothing to preclude you from using Raph was
13159.939 -> a full next generation firewall as well, for
additional where it was a security and that's
13160.939 -> totally fine. And, you know, WAF will give
you somewhat granular things. It's basically
13161.939 -> your routing. It's basically like a stateful
ACL, we create web rules and rules in rural
13162.939 -> groups. And you're either kind of coming from
MIT stuff, or not permit stuff. And we'll
13163.939 -> provide the ability of traffic metrics. So
let me show you how they put it. And then
13164.939 -> let's do a walk through the way WAF works
is you're going to enable it on your device,
13165.939 -> you're going to create a policy that provides
access or filters to the device, when people
13166.939 -> look at the policy and say good or bad. And
that's good and allow the traffic thrown,
13167.939 -> if not. So let's realistically look at you
know how this works, you know, on AWS, and
13168.939 -> then let's whiteboard it out. So you truly
understand firewall. Here, we put WAF on our
13169.939 -> on our cloud front, which is a content delivery
network, we'll get into that. We'll put it
13170.939 -> on our load balancers or API gateways. We'll
set our policies and keep stuff from getting
13171.939 -> into our systems. Now, how do we combine it,
for example, we'll talk about shield, which
13172.939 -> is some DDoS protection. And basically, every
Content Delivery Network gives you DDoS protection,
13173.939 -> the AWS branded one shield, and we can put
this web application firewall so this will
13174.939 -> keep unwanted traffic out of your systems.
And then you'll keep unwanted traffic out
13175.939 -> of your subnets with the difference between
an access control list, and then we'll use
13176.939 -> a security group. So realistically speaking,
what are we really talking about? We're talking
13177.939 -> about this. So let's say you've got your your
load balancer over here. Here's your load
13178.939 -> balancer.
13179.939 -> Behind your load balancer, you've got some
web servers. Obviously being a private subnet,
13180.939 -> an additional subnet, you'll have your app
servers. And if there's more than one app
13181.939 -> server, what are you going to need, you're
gonna need another load balancers, let's make
13182.939 -> these things a lot smaller.
13183.939 -> Three tier web environment, typically about
a load balancer, you've got your web servers,
13184.939 -> you're gonna have another load balancer. Over
here, you'll have some app servers. And you'll
13185.939 -> typically have a database back here. What
you really want to do is you for your load
13186.939 -> balancer, because this load balancer over
here, if it's a web app is going to have a
13187.939 -> public IP address. And the front of this,
you're going to want to have an access control
13188.939 -> list. Actually, when I want to use a security
group before we get to the load balancer,
13189.939 -> so let's pop in a security group over here.
And we're going to pop in a network access
13190.939 -> control list over here. And in front of this
network access control list, we'll have a
13191.939 -> firewall of some kind. Now, usually, it'll
be from the marketplace with and it'll be
13192.939 -> next generation firewalls, or it could be
Wow, this is really how the pieces and parts
13193.939 -> are going to fit together. The firewall is
going to keep unwanted stuff from getting
13194.939 -> into your systems, which is going to be further
blocking the subnets with access control list.
13195.939 -> And then after this, we'll have a security
group Protecting Access to the load balancer.
13196.939 -> And then our web servers will also have a
security group of most likely to have an access
13197.939 -> control list between them. And then we'll
another security group for this load balancer
13198.939 -> and vice versa. So that's typically the way
that we tie the pieces together.
13199.939 -> Now the next thing we're going to talk about
is preventing DDoS attacks. And let me tell
13200.939 -> you when it comes to preventing DDoS attacks,
we're actually dealing with a lot of things.
13201.939 -> So there's no one thing that protects against
DDoS. You know, just adding a firewall to
13202.939 -> next generation firewalls, next generation
firewalls fronted by more next generation
13203.939 -> firewalls and IDS, IPS systems, that's not
going to stop it. He takes a lot of work to
13204.939 -> stop, and he doesn't text. So let's talk about
what a DDoS attack is a distributed denial
13205.939 -> of service attack, I want to make sure you
guys understand this. So let's say over here,
13206.939 -> we've got a web application, okay. And let's
say this web application, which is on the
13207.939 -> right side of the system can handle 100,000
web requests per second 100,000 web request.
13208.939 -> So it's a big, big, big server, that's a server?
No, no, normally, we've got 50,000 web requests,
13209.939 -> the server can handle 100,000. Life is good.
Now, where does it break, there's a DDoS attack
13210.939 -> that can happen by accident. Let's say the
company says Christmas sell 80% off, and they
13211.939 -> get hit with 300,000. web requests on their
server can only handle 1000. The company effectively
13212.939 -> DDoS themselves by taking in more requests
than the web server can handle the web server
13213.939 -> crashes, and that's a DDoS attack. But that's
when organizations makes mistakes. Let's talk
13214.939 -> about the more traditional DDoS attack, which
is what goes going on here. And these DDoS
13215.939 -> attacks are getting big, big and even bigger.
In a DDoS attack, you got a hacker a specified
13216.939 -> by this red guy over there, that looks real
neat. The Hacker has his server or her server
13217.939 -> and uses that server to hack into 20 3040
100,000 servers on the Internet. And then
13218.939 -> those servers are used to create web requests
for the web application. So by the server
13219.939 -> can handle 100,000 web requests, we now control
100,000 servers, and each one of those 100,000
13220.939 -> servers does 50,000 requests per second. And
now we can see our servers getting hit with
13221.939 -> a trillion web requests when it can only handle
100,000. The server crashes, potentially buffers
13222.939 -> are overflowed and that server, maybe people
get inside of our systems or else they just
13223.939 -> sit us down. So all the DDoS attack is using
multiple servers to completely overload your
13224.939 -> systems. And there's a lot of things that
can go into preventing these DDoS attacks
13225.939 -> are improving, for imagine take this web application
that could handle 100,000 web requests. Now
13226.939 -> if it was an Auto Scaling group, and it could
then auto scale out to 15,000 servers, well,
13227.939 -> that could help the organization mitigated
the Weber DDoS attack, maybe the DDoS attack
13228.939 -> can be blocked by the firewall maybe can be
blocked by the content delivery network, there's
13229.939 -> lots of things that get involved in mitigating
a DDoS attack. It's not just one thing. It's
13230.939 -> not just one. So let's talk about presenting
preventing DDoS attacks. When it comes to
13231.939 -> preventing a DDoS attack, we're talking about
a full security posture, we're blocking unwanted
13232.939 -> traffic out of subnets with regards to ACLs.
The keeping unwanted traffic to servers and
13233.939 -> security groups. I talked about auto scaling
and how we can do that. Firewalls will keep
13234.939 -> unwanted traffic. And while it can help. Now
typically speaking, here's where we can make
13235.939 -> a big, big, big difference in what's in our
content delivery network. See, the content
13236.939 -> delivery networks will only forward legitimate
web requests to a server. And one of the ways
13237.939 -> you kill a web server with a DDoS attack because
you send an overwhelming number of half open
13238.939 -> TCP connections, for example, requiring the
server to open up and they never close these
13239.939 -> connections because they're waiting on something.
So by using a Content Delivery Network, the
13240.939 -> Content Delivery Network can recognize the
web requests being bad, which are usually
13241.939 -> bad requests and DDoS attack. And they don't
let them go to the server anyway. So there's
13242.939 -> lots of wonderful content delivery networks
out there. And they all have some massive
13243.939 -> DDoS protection, whether it's the Akamai which
is kind of the the King and Queen for most
13244.939 -> people to consider if content delivery networks.
Or whether it's CloudFlare, or whether it's
13245.939 -> AWS CloudFront, or the Microsoft CDN or the
Google CDN. There's lots of content delivery
13246.939 -> networks out there. So when you have a content
delivery network, they enable you to put some
13247.939 -> DDoS protection and you put the DDoS protection
on the content delivery network. And that
13248.939 -> DDoS protection Trouble not forwarding the
request to the system, they'll recognize problems.
13249.939 -> And they'll block them. Now, every every content
delivery network provider has a DDoS attack.
13250.939 -> And you just prevention system and AWS has
quite a good one for their content delivery
13251.939 -> network. They use shield shield is the AWS
branded DDoS prevention service. And shield
13252.939 -> standard provides very basic DDoS protection.
It's about as basic as AWS WAF. But it comes
13253.939 -> free if you're using Wow. And then there's
shield defense. Shield advanced is much better.
13254.939 -> So the advanced you can put on your AC 10
instances, your load balancers or CloudFront,
13255.939 -> your DNS global accelerators. And it does
a lot more. So when you're using shield standard,
13256.939 -> it's free. And it's going to protect you against
the most common attacks. Common attacks. AWS
13257.939 -> says 96% of attacks. So it protects against
your main things your SYN ACK floods, reflection
13258.939 -> attacks, your HDFS slow read, but it works
based upon a policy. And it's static, and
13259.939 -> I hate static when it comes to security. It's
not good enough. And here's why it's not good
13260.939 -> enough. Once you've been hacked, you've been
hacked, you've been hacked, been hacked, great.
13261.939 -> No adoption, you're still getting hurt. Now
you've got better options. With regards to
13262.939 -> your DDoS protection on AWS, you can provide
use shield advance. And now we're starting
13263.939 -> to get in the range of good DDoS protection.
Now, of course, you're gonna pay for this.
13264.939 -> And it's an additional cost. And you provide
this protection, your load balancers, your
13265.939 -> virtual machines cloud front route 53. And
now we've got intelligent attack mitigation.
13266.939 -> So now you've been hacked, and they'll shields
this, like this, and it's gonna stop the attack.
13267.939 -> Kind of like the way Pac Man would eat the
dots on a video game. I know Keith West remembers
13268.939 -> Pac Man and a few others do but not everybody.
So kind of keep that with what you're dealing
13269.939 -> with. This is what we're going on with regards
to DDoS. And this is what we're dealing with
13270.939 -> shield advanced. Shield advanced to look at
traffic patterns to plan ACL to mitigate the
13271.939 -> attack for example, it allows visibility into
your notification layers for three, four and
13272.939 -> seven and AWS shield advanced customers have
access to 24 by seven DDoS people, assuming
13273.939 -> you're using business or enterprise support
options. Now, because some of these solutions
13274.939 -> are kind of weak, there's an insecurity takes
a ton of other things. There's some other
13275.939 -> things that you can use. Some AWS proprietary
security services include guard duty, which
13276.939 -> is a service to monitor your AWS accounts
and look at your cloud trail logs, DNS VPC
13277.939 -> flow logs, and look for patterns of behavior
with compromised systems. And it'll send you
13278.939 -> a notification, hey, something doesn't look
right. So you can use systems like this. There
13279.939 -> are also industrial grade systems, seems systems
that really do this and do this really well.
13280.939 -> Big industrial quality systems that you can
use the same systems across multiple clouds.
13281.939 -> While we're at it, you've got something called
down with an inspector, which is a security
13282.939 -> assessment service that helps improve use
of prepared security posture and compliance
13283.939 -> of applications. It looks and constantly assesses
for applications, exposure, vulnerabilities,
13284.939 -> etc. And after performing an assessment, it
produces a detailed list of findings. And
13285.939 -> then it'll give you some recommendations,
again, automate services or automated services,
13286.939 -> which are automated services. They're no substitute
for having professionals look and see what's
13287.939 -> going on. You also have Amazon Macy, which
is a fully managed data security and privacy
13288.939 -> service that uses machine learning and pattern
recognition technology to protect your data.
13289.939 -> It's going to look for in your s3 buckets
and unencrypted buckets in publicly accessible
13290.939 -> buckets. And it's going to make some recommendations.
And it will apply machine learning for example,
13291.939 -> and pattern matching techniques to identify
you with an alert. Of course, there's many
13292.939 -> better things that you can do. You can find
things that are notified and create some event
13293.939 -> driven security with lambda functions to go
fix those. But these are these are basically
13294.939 -> services that are designed to assist you.
Let's look a little bit about the service
13295.939 -> catalog. Now this is pretty good stuff here.
Pretty good stuff.
13296.939 -> Now what we're actually dealing with is, you
know, when I was a little by little bear,
13297.939 -> getting into networking, and I was a young
kid, they called me sniffily. Why would was
13298.939 -> I sniffer blood? I was plugging in the sniffer
or protocol analyzer and I'd find a way this
13299.939 -> person opened up the firewall so they can
use Napster. This one was downloading the
13300.939 -> entire Our internet library of porn, this
one opened up a port on the firewall, so they
13301.939 -> could do stuff. And we would find systems
that were vulnerable. People would put their
13302.939 -> FTP servers on the network, or they're putting
servers on the network. And we'd get hacked
13303.939 -> because other people in the things they do.
We'd have systems that weren't properly patched.
13304.939 -> You jelly stuff was out there. It didn't comply
to security policy. And we had the sniffer
13305.939 -> behind me that was running around trying to
figure out what the traffic was on the network.
13306.939 -> Now, in those days, it was pretty hard to
lock down your systems. Now in today's world,
13307.939 -> we can use the service catalog talk about
a great service. The service catalog can help
13308.939 -> you control what's placed on your systems,
and make sure they adhere to an organization's
13309.939 -> security policy. Now, this is good stuff.
The service catalog will help you control
13310.939 -> what's placed on the network. This is really
really good stuff. So what happens is you
13311.939 -> create a list of approved things, approved
virtual machines, approved servers, approved
13312.939 -> software, approved databases, approved application
architectures, anything, and you pop them
13313.939 -> in the service catalog. And you only allow
systems admin people to use stuff directly
13314.939 -> out of the service catalog. So yeah, this
is why I love this stuff. So the user can
13315.939 -> access something in the catalog. They can
deploy it with an infrastructure as code strip.
13316.939 -> And poof, it'll automatically deploy your
things and you're sure that they guarantee
13317.939 -> with security policy, and here's why you've
already approved them ahead of time. This
13318.939 -> is one of these transformational things in
the cloud infrastructures, code, deploy things
13319.939 -> practically at the speed of light, and make
sure they're exactly what you need. So this
13320.939 -> some real digital transformation here, this
is excellent.
13321.939 -> To talk about some more security services,
and hope you're gathering that security is
13322.939 -> about using a lot of tools from a lot of people,
some of these great AWS tools, some tools
13323.939 -> from Microsoft's on the calls from the security
vendors, some kills from identity people is
13324.939 -> the combination of everything. It's like an
onion, where you keep pulling back the let's
13325.939 -> talk about the systems manager parameter store
Another very cool security service. And it's
13326.939 -> a key component of the strong security posture,
because a lot of things that we have to deal
13327.939 -> with our licenses, passwords, strings, database
strings, and it's probably not good for you
13328.939 -> have sticky notes all over your desktop with
everybody's password. I've seen it I know
13329.939 -> Keith West's has seen it. And I know Chris
has seen and I know many other people have
13330.939 -> seen it like Alonzo, I'm sure you've seen
that too. Some of the younger people may not
13331.939 -> have seen that. And what we're dealing with
here is, if your information is compromised
13332.939 -> like a password, it could be a bit of a problem.
And AWS provides a solution for securely storing
13333.939 -> your secret information that's called this
systems route. Systems Manager parameter store.
13334.939 -> I don't have to make up I mean, but it's a
good service. Now the systems manager parameter
13335.939 -> store is a scalable hosted serverless environment
that's designed to store your passwords, database
13336.939 -> strings, license codes and API keys. to kind
of keep that in the back of your mind. If
13337.939 -> you've got extremely sensitive information,
stick it in the systems manager parameter
13338.939 -> store, it provides a means to store and encrypt
your encrypted data. And it's a great way
13339.939 -> to store manager instance receives is going
to separate your code from your passwords
13340.939 -> is going to provide an excellent means to
audit access. And it's going to provide a
13341.939 -> method for you to track your password. Let's
talk about some more AWS security services
13342.939 -> the security hub, which is a service that
provides users with a broad scope or extensive
13343.939 -> view of user security posture and facilitates
AWS environments compliance with industry
13344.939 -> standards. Okay. It simplifies how users understand
and improve their cloud security posture with
13345.939 -> automated security best practices shows by
collecting priorities and security data across
13346.939 -> accounts. automated system, make sure you
got real security people that understand how
13347.939 -> to do real security. And this is informational
that they can use to give them additional
13348.939 -> information, in addition to the other things
that you may need to be doing. Provides a
13349.939 -> central view of security and compliance posturing.
The AWS security hub is an aggregated and
13350.939 -> analytical tool that works across AWS services
accounts and some third party tools. That's
13351.939 -> the key some third party tools. This tool
tracks data against best practices and standards
13352.939 -> to identify oversights. Look, there are really
good tools that you can use out there that
13353.939 -> are not proprietary that work with everything
that are going to work on all your your things
13354.939 -> but if you only had a customer and they were
only on AWS and they had a small budget And
13355.939 -> we use them only in AWS services and they
didn't have a lot of security. Things like
13356.939 -> this are excellent because they give you additional
information.
13357.939 -> Let's talk about the firewall manager. It's
a security management service that allows
13358.939 -> users to essentially run up and controller
under WAF. They're sealed security groups,
13359.939 -> and to some degree, add some third party marketplace
firewalls. It ensures new users and applications
13360.939 -> can be upgraded automatically under procedures.
Basically, an administrator can apply a rule
13361.939 -> across an entire organization, and limit policies
to a single group users or specific applications.
13362.939 -> Users basically set up their projections once,
and the service automatically applies new
13363.939 -> things to your accounts and resources. Firewall
manager can basically be used by companies
13364.939 -> and an operating in a highly regulated environment.
So you've got some stuff, you're doing some
13365.939 -> analysis. Service integrates with WAF rules
to protect things can also be used to automatically
13366.939 -> patch and protect systems. Like when you're
dealing with next generation firewalls. Many
13367.939 -> of them have their own platform that can be
used to manage across multiple multiple clouds
13368.939 -> all at the same time. And when it comes to
availability and performance, one is none
13369.939 -> two is one and three is greater than two,
a single cloud no matter how many regions
13370.939 -> and availability zones you use, as a single
point of failure, because the control plane
13371.939 -> goes, the cloud is dead, the caller gets hacked,
the cloud can die if there's a serious network
13372.939 -> issue, the call can be done. So there's lots
of systems that you can use across platforms
13373.939 -> to really do this. Now we're gonna get next
into the AWS applications and services which
13374.939 -> has got some really cool stuff on the way
so please give me a hashtag AWS Certified
13375.939 -> Solutions Architect Associate so I know you're
awake, alert and oriented.
13376.939 -> Keith, no acronyms. Full full full word. I
know you know. In fact, in my course, I think
13377.939 -> we're gonna have a swear jar. Anytime somebody
uses an acronym they owe $20 in the swear
13378.939 -> jar, and we'll donate it to charity. Because
acronyms create communication nightmares,
13379.939 -> and we don't want to use acronyms as architects.
13380.939 -> Tyrone, we're gonna get to get you into that
swear jar as well. And Tyrone, you're a pretty
13381.939 -> solid rock star, I know who you are. Okay,
let's get involved into, into into AWS services,
13382.939 -> we're first going to start with SQS or simple
queue service. Now, this is a wonderful proprietary
13383.939 -> killing system. In a multi cloud environment,
you would not use this, you would use Apache
13384.939 -> Kafka. But here's what we're dealing with.
It's a message queuing service that provides
13385.939 -> temporary message storage. I love this. Now,
queueing systems enhance application availability
13386.939 -> by providing a means to store and keep messages
from being lost. Now, the standard SQS queue
13387.939 -> you typically think of as being used in a
database, and I'll get back to that in a minute.
13388.939 -> And it's going to be used for transient storage.
In fact that the default queue retention time
13389.939 -> is four days, but it can be configured for
up to 14 days. As QoS or any queuing system
13390.939 -> enables right sizing of of your of your applications.
It'll facilitate auto scaling. And SQS mitigates
13391.939 -> the need for middleware messaging systems
and multi tiered applications. So what is
13392.939 -> it? It's an AWS proprietary queuing system.
It's typically high availability, it scales
13393.939 -> well. And the whole point of it is to decouple
your systems environments. Simple queuing
13394.939 -> system will help you decouple your environments.
And let me show you exactly what we're talking
13395.939 -> about. Let's say in this environment, for
example, we have a web server and a sale comes
13396.939 -> in right, it hits the app server, we we temporarily
hold the message and the Amazon SQS server
13397.939 -> until the database is ready to receive it.
So web server, app server queue on the way
13398.939 -> to the database. Now the reason we're doing
this, if the database was full, we'd be losing
13399.939 -> the messages. But if it's in a queue, and
the database is down for 30 seconds, it's
13400.939 -> no big deal. We're all kinds of happy, right?
And the reason we're all kinds of happy is
13401.939 -> as follows. The message is still stuck in
the queue. So killing enables right sizing
13402.939 -> of our systems. Now In this case, DynamoDB
serverless. But let's pretend it was a server
13403.939 -> based database. What if all these messages
comes in at one time, and then no messages
13404.939 -> come in for a half an hour, that's pretty
normal. Things aren't like slow and fast.
13405.939 -> They're all kinds of weird patterns of traffic.
So killing enables you to smooth the systems
13406.939 -> out and have the exact right size. So we're
dealing with kids, we're gonna have the option
13407.939 -> for standard queues, and FIFO. Queues, a standard
queue is this as fast as this stuff enters
13408.939 -> leaves. Every message is going to be delivered
once. That's the short delivery. Now what
13409.939 -> if we had an application that needed something
specific, we'd be dealing with a first in
13410.939 -> first out queue. Now in this particular way,
message one gets delivered before message
13411.939 -> two, which gets delivery for message three,
which gets delivered before message for now
13412.939 -> this is going to slow it down. And the reason
it's going to slow it down is what if message
13413.939 -> one is big and message two, three, and four,
slow to three and four will wait for message
13414.939 -> one to be delivered. But it really doesn't
matter. We're really talking about as follows.
13415.939 -> We're talking about what's best based for
the application for the application. Let's
13416.939 -> talk about the next thing called the dead
letter Q message comes in, doesn't make it
13417.939 -> into the database, when we store it, so we
can go back and take action on it later, kind
13418.939 -> of like the mail. Never notice the mail doesn't
get it gets delivered to you, you send it
13419.939 -> back and they store it somewhere. It's called
a dead letter. So how does skewing work? messages
13420.939 -> are sent from the computer to the cube. They're
held into the queue. As soon as the receiver
13421.939 -> can take it, the messages are drained from
the queue. And then new messages come in.
13422.939 -> I showed you this before on the first day.
When we talked about databases that I want
13423.939 -> to show it to you again, here we've got in
the same queueing system. messages come in.
13424.939 -> They're stored in the cube. They're drained
from the queue if and when necessary, and
13425.939 -> then they're given to the receiver. So when
would you use SQS? Well, if you're using a
13426.939 -> single cloud, you would use SQS. We're using
multi clouds, you would use Apache Kafka.
13427.939 -> But you will use SQS to assist with Casper
capacity planning and application scalability
13428.939 -> to make sure messages are not lost messages,
meaning orders usually as it relates to the
13429.939 -> sale, as opposed to systems being overloaded.
SQS is fantastic for cost optimization, because
13430.939 -> instead of having to purchase your servers
for the maximum capacity might read, we can
13431.939 -> base upon an average capacity and store those
messages inside of a queue. And SQS can be
13432.939 -> can be very effective for auto scaling with
its ability to to provide a trigger. So for
13433.939 -> example, you could have messages in a queue
of a certain thing of a certain idea. When
13434.939 -> the message is there in the queue, you could
say add compute capacity, if it's necessary
13435.939 -> to kind of keep that in the back of your mind.
It can help you handle spikes on platform
13436.939 -> without having to scale or make changes to
the platform. SQS is good for handling. What
13437.939 -> are we talking about increased traffic and
write capacity.
13438.939 -> Now let's talk about message queue. Amazon
message queue is a fully managed open source
13439.939 -> message queue. Message Broker type service,
kinda like Apache message queue or rabbit
13440.939 -> MQ is it's a fully managed service for that.
Amazon message queue makes it easy to set
13441.939 -> up and operate message brokers in the cloud.
Secure users can mitigate messaging and applications
13442.939 -> without rewriting their code. Enterprise level
customers could benefit the most from using
13443.939 -> message queue. Because they no longer have
to re engineer application to use SQS. Of
13444.939 -> course, the theory of using rabbit message
queue and they had their own systems and a
13445.939 -> virtual machine. They could just migrate them
to the cloud and have the same things on all
13446.939 -> three clouds and not worry about it. But this
is a this is a proprietary Amazon managed
13447.939 -> service. But managed means you don't have
to worry about the system of the virtual machines.
13448.939 -> Enterprise level customers can use it because
they don't have to reuse engineer things.
13449.939 -> But they didn't have to re engineer things
anyway by moving the virtual machines. But
13450.939 -> because Amazon's managing it. You don't have
to manage the maintenance security updates,
13451.939 -> monitoring or troubleshooting of the message
queue. Amazon message queue goes Pay As You
13452.939 -> Go pricing meaning users pay for what they
use. Every time the message brokers instance
13453.939 -> runs. The system is used storage is billed
monthly though, and AWS will calculate the
13454.939 -> number of gigabytes that are used each hour
divided by the number of hours in each month,
13455.939 -> and the result will be a value of gigabyte
months with data transfer fees charged separately.
13456.939 -> Now let's talk about SNS. SNS or simple notification
service. It's a managed messaging service
13457.939 -> used to deliver message between systems and
be or systems between systems or between systems
13458.939 -> and people. SNS is used to decouple messages
between micro service applications that can
13459.939 -> be used to send an email or a push message
or a notification to mobile devices, like
13460.939 -> a message, hey, you've been hacked. Your message
your CPU is 100%. Go do something about it.
13461.939 -> SNS is great for this, SNS basically facilitates
communication between senders and receivers
13462.939 -> using a publisher subscriber model. So when
you subscribe to a mailing list, for example,
13463.939 -> and you got an email publisher subscribed,
so publish or subscribe messaging model enables
13464.939 -> notifications to be delivered to clients by
using a push notification. You ever get a
13465.939 -> push notification from YouTube about a video,
same kind of thing with using a service like
13466.939 -> SNS. SNS will consist of two components, publishers
and subscribers. The publishers send the message
13467.939 -> This was carbers read the messages. I always
like to use the term mailing list. To me it
13468.939 -> makes sense.
13469.939 -> SNS is also used to do something called fanning
out messages. What does that mean? Here we've
13470.939 -> got a publisher, but subscriber and we send
those message that same message to multiple
13471.939 -> systems. And we could have a single message
that could be sent to SQS, which could also
13472.939 -> be sent somewhere else or somewhere else,
that's the fan out. But here's the point publisher
13473.939 -> sent to a topic that people subscribe to the
topic, and they're there. But it could also
13474.939 -> be used to fanned out message, we may have
a message which would then go into a message
13475.939 -> queue as well as a notification. And then
there's terrific to kind of keep that in the
13476.939 -> back of your mind, at all kinds of all kinds
of stuff. Chris, I just got your message,
13477.939 -> you're gonna have to tell me after this class
who was hired, I'm totally totally excited.
13478.939 -> Every day we got a new cloud hire. And I haven't
had my cloud hard yet today. So super excited.
13479.939 -> Can't wait to hear. You know, we had two yesterday.
So another one today. I'm thrilled, thrilled
13480.939 -> thrilled.
13481.939 -> Let's talk about SNS platform functionality.
Sorry, I didn't realize I was not I was behind
13482.939 -> my slides over there. SNS is a high availability
platform that by default runs across multiple
13483.939 -> availability zones. And SNS can be used to
fan out messages as I described before. So
13484.939 -> basically, you've got a message just going
to a lambda function on SQS queue a notification.
13485.939 -> And SNS allows you to do creation of filter
policy, so you only receive notifications
13486.939 -> you're interested in. That's great, right?
You only want to see what you're interested
13487.939 -> in. So let's talk about some use cases for
SNS, SNS consent applications and systems
13488.939 -> alert, hey, CPUs, 80%, or more capacity. SNS
can take incoming messages and send it to
13489.939 -> multiple systems at the same time, that's
called fanning out. SNS can be used for mobile
13490.939 -> notifications. I love this. Imagine an application
that's being pushed to realtors, for example.
13491.939 -> That's while they're driving, it says Milhouse,
for sale right now go show your clients. So
13492.939 -> we're dealing with some pretty pretty, pretty
exciting stuff here.
13493.939 -> Let's talk next about Elastic MapReduce. So
when you're dealing in a big data environment,
13494.939 -> but you're really dealing with is taking an
environment where you're going to take data
13495.939 -> from one source and move it to another source.
Now in the big data environment, typically
13496.939 -> somebody writes a Python spark script. And
it's used for mapping and reduction. So example,
13497.939 -> you may have Mike, Mike, maybe spelled in
all capitals, the next it may be spelled and
13498.939 -> all lowercase, then it may have a capital
M and a lowercase ik E. And that obviously
13499.939 -> would be a problem when we're analyzing the
data. So we need to normalize the data. Now
13500.939 -> normally, what happens is somebody makes a
Python spark script, and they do this automatically.
13501.939 -> But AWS has a service for doing it as well.
Now, if you write a Python spark script, you
13502.939 -> can use the same script closer through cloud
providers. But if you don't have somebody
13503.939 -> in the big data environments is good at reading
the Python spark script. You can use the AWS
13504.939 -> pre managed service. And that's what Elastic
MapReduce It's an application for processing
13505.939 -> large amounts of data. It's a managed cluster
in service for managing big data frameworks.
13506.939 -> And it's really a prebuilt framework that's
going to facilitate big data analysis and
13507.939 -> processing without the need for separate management,
application installation or configuration.
13508.939 -> And it's built upon open source tools such
as Apache Spark, Apache hive, Apache, HBase,
13509.939 -> Apache, Flink, Apache credo, or presto. And
it typically offers some higher performance
13510.939 -> than traditional solutions. And it could be
less expensive. If you don't have to code
13511.939 -> it yourself. Or if you've already got your
scripts, it's cheaper to use your own scripts.
13512.939 -> And that's the key is to determine what's
best for you in the organization. Now, when
13513.939 -> it comes to no SQL databases, I mentioned
previously, that Dynamo DB wouldn't work in
13514.939 -> a multi cloud environment. And well, because
it's proprietary. And it's not like we can
13515.939 -> have Cosmos dB, Google Cloud, big table, and
DynamoDB across our three clouds, that's not
13516.939 -> going to work. But we could use a standards
based database, like Apache Cassandra, or
13517.939 -> Mongo DB, across all of them, across all of
them. So because of this, AWS came up with
13518.939 -> Amazon keyspaces is basically a serverless
fully managed Apache Cassandra compatible
13519.939 -> database. Now, the good news with this is
you can take your data straight out of your
13520.939 -> Apache Cassandra database, and put it directly
in here. And there's no systems to manage.
13521.939 -> Of course, if you had an Apache Cassandra
database, you could just take those rights
13522.939 -> on machines with the three cards, and have
them synchronize and not have to worry about
13523.939 -> any of this. But you know, this is good for
organizations that don't want to manage their
13524.939 -> own systems. The service is provisionally
patched for them and deployed. And because
13525.939 -> there's nothing to marry about, it can be
helpful because organizations don't need a
13526.939 -> sophisticated in IT stuff. But remember, when
it's server lists, you have less to worry
13527.939 -> about, which is great. But you have less customization
and capabilities. So server lists is simpler.
13528.939 -> But simpler doesn't mean better. It means
different. If you need Max control, max performance,
13529.939 -> don't go serverless. If you need simplicity
and elegance go serverless. All based upon
13530.939 -> the business case, by case basis is a managed
the Patrick Cassandra service. Again, excellent,
13531.939 -> excellent, excellent. So when you deal with
Apache Cassandra, it's fully managed, like
13532.939 -> I said, there's nothing to manage. So it's
much easier for you to deal with, you basically
13533.939 -> have two kinds of capacity and throughput
knows for read and writes on demand mode,
13534.939 -> and provision capacity mode. On Demand mode
means was basically what you think you need.
13535.939 -> And provision capacity mode, as you tell it
exactly, I need this much performance, and
13536.939 -> you're gonna get it.
13537.939 -> Now, let's talk about Lake formation. If you
need a data lake, there's two ways to do it.
13538.939 -> Your data architects can architect it their
own way, normalize your data and create their
13539.939 -> own data lakes. And that takes a level of
sophistication. But with that level of sophistication,
13540.939 -> you get something very special. But it takes
a level of sophistication. That level of sophistication
13541.939 -> gets expensive, because now you need data
architects, potentially even some data scientists.
13542.939 -> But if you didn't want as many of them and
you wanted a simpler gene, AWS has this service
13543.939 -> called Lake formation. And Lake formation
is a managed service to facilitate the rapid
13544.939 -> deployment of a data lake. And a data lake
is effectively a repository that holds large
13545.939 -> volumes of unprocessed and processed data
in the same location. And this information
13546.939 -> will come from a variety of sources. Unprocessed
data is going to be captured very quickly
13547.939 -> in its raw format. It'll be tagged with metadata,
which will provide some information about
13548.939 -> the raw data. Conversely, process data going
to be assigned to tables, fields or other
13549.939 -> elements before storage. And while this will
slow data capture speeds, and creates an environment
13550.939 -> that there is an unlimited amount of data
in various formats, so pretty darn awesome.
13551.939 -> Now, what happens is forming these data lakes
quickly and accessibly. And then we can use
13552.939 -> any kind of analytical machine learning or
pattern matching techniques we use. Because
13553.939 -> that's the whole point of a data lake, create
all this data, store this data, and then use
13554.939 -> this data at some point in the future to make
better business decisions which can improve
13555.939 -> profitability, reduce costs or improve information.
And that's what we're talking about as actionable
13556.939 -> data. If an organization has data and they
analyze that data, and they mined that data,
13557.939 -> maybe they know that use this price, and you're
gonna maximize sales, maybe they know that
13558.939 -> at this time of the year, they don't need
as many employees. Maybe they know this time
13559.939 -> of year or hire some temporary employees.
The ability to make better predictions otherwise
13560.939 -> known as inferences, is really how big data
can do things. Big data can tell a customer,
13561.939 -> the customer can tell a company their customers
desires, they may find out that I like cat
13562.939 -> things. And when they've got a new cat product,
they might send me a cat email, as opposed
13563.939 -> to sending me an email every day, which is
going to cause me to unsubscribe from the
13564.939 -> mailing list. So data data and more data is
a really cool, cool, cool thing. Now let's
13565.939 -> talk about Amazon time spring. Amazon time
spreen is a fully managed auto scaling distributed
13566.939 -> fault tolerant read relational database uses
basically SQL and SQL database. And the service
13567.939 -> specializes in storing and quickly tracking
data variables that change over time, such
13568.939 -> as time series data, user data, IoT data.
And it's capable of ingesting millions of
13569.939 -> events over time interval from various device
sensors, etc.
13570.939 -> Let's talk about CloudWatch. Cloud watch is
just an event monitor record logging service,
13571.939 -> cloud trail auditing, CloudWatch logging,
because we got to these and people confuse
13572.939 -> them. Cloud trail auditing CloudWatch logging
is just a log log log. Now cloud watch is
13573.939 -> a monitoring service that's going to monitor
your AWS resources or applications on AWS.
13574.939 -> It's going to provide you system metrics,
like CPU usage, by the way, or disk usage.
13575.939 -> It can monitor applications give you custom
metrics. So I mean, let's look at it realistically
13576.939 -> speaking, it's no different than logging than
any other organization that have for their
13577.939 -> business. With Amazon CloudWatch, it'll collect
information, can monitor that information,
13578.939 -> you can analyze the information that you get,
you can act on that information to make changes.
13579.939 -> And then you can re monitor, re act, and then
reanalyze until you get it right. And this
13580.939 -> is going to be a constant state of flux. It's
never one thing where it's always going to
13581.939 -> be the same thing.
13582.939 -> CloudWatch can monitor a lot of things by
default, it looks at CPU utilization, disk
13583.939 -> read write in terms of input and output operations
per second, and network utilization. Now,
13584.939 -> that's not a lot. The default is disk IO,
CPU, and network. But if you need better logging,
13585.939 -> you can use custom metrics. maybe want to
look at your memory utilization, or your API
13586.939 -> performance or other metrics. CloudWatch also
has a notification system that notifies you
13587.939 -> when things are there. Ding ding, ding, tell
your systems administrators, your systems
13588.939 -> are at 80% load, maybe add capacity. And a
cloud watch event. Let's see something good
13589.939 -> or bad, can then trigger auto scaling increase
your capacity, kind of cool. It can trigger
13590.939 -> a lambda function to remediate something like
that. to remediate something like wait, it
13591.939 -> found an s3 bucket that's not doing what it's
supposed to be. And and then you can do something
13592.939 -> about it or act upon it. AWS CloudWatch is
available in two versions for easy two instances,
13593.939 -> basic monitoring. And with basic monitoring,
your data is going to be available every five
13594.939 -> minutes. And if it's accessible to you at
no charge, let me tell you, capturing your
13595.939 -> data every five minutes is not often enough
to give you the peaks and troughs when to
13596.939 -> really see what's going on. Many times if
you really look at it, you'll see that for
13597.939 -> three seconds, the CPU hits 100% And you've
got a problem. And then it's averaging the
13598.939 -> 30%. So, five minutes default, probably not
good enough. When you use the detail monitoring,
13599.939 -> you're here to date at least once a minute,
but that you're going to pay extra for it.
13600.939 -> And detail honoring must be enabled on your
virtual machines otherwise known as your EC
13601.939 -> to CloudWatch events deliver a near real time
stream of system events that describe changes
13602.939 -> in your set your account. You can set up a
rule to match events within particular function
13603.939 -> or stream. Cloud watch events will become
aware of the operational changes in your system
13604.939 -> as they occur. And CloudWatch will respond
to these events by changes by taking corrective
13605.939 -> action sending messages respond to something
like activating a lambda function anytime
13606.939 -> Under logging you can do is always a good
thing. Now I mentioned CloudWatch. Does logging
13607.939 -> and cloud trail does auditing. So what do
you think we're getting next to cloud trail
13608.939 -> everybody? Cloud trail is an AWS service that
assists with the auditing process. It provides
13609.939 -> an audit log that assists you with risk management.
So manager and healthcare or finance, and
13610.939 -> you need to know exactly exactly what your
people are doing. Here you go, completely,
13611.939 -> completely go. So that's what we're actually
dealing with. You could find out who does
13612.939 -> what tracks it. Cloud trail can track changes
made to NATO's account by user, which means
13613.939 -> a person or role, which typically means a
system or a service, when cloud trail is enabled,
13614.939 -> when you is enabled automatically as soon
as your AWS account is created. But then if
13615.939 -> you want to monitor, you're going to create
a trail at the club, what its console, CLI
13616.939 -> or cloud trail API. And it will record events
and these events are going to be visible in
13617.939 -> the cloud trail console under your event history.
Your cloud trail event history will let you
13618.939 -> review events that have occurred in the last
90 days. Additionally, cloud trail can be
13619.939 -> figured to store logs in an s3 bucket for
long term storage, long term storage long
13620.939 -> term logs machine learning on your logs analysis
of your logs, HIPAA compliance and your logs
13621.939 -> banking compliance in your logs. That's why
you know, we create a cloud trail, we can
13622.939 -> create two kinds of trails, we can create
a cloud trail that is local to one region,
13623.939 -> and a one reason only cloud trail to give
us information from one region. And it's going
13624.939 -> to store the CloudWatch log started the cloud
trail logs in a single bucket. And this is
13625.939 -> the default option when cloud trail is configured
via the CLI or the API. By comparison, we
13626.939 -> can create a cloud trail that applies to all
regions. And this will provide the most comprehensive
13627.939 -> logging and auditing an option. It'll provide
a record of all events that exist inside of
13628.939 -> the organization's entire infrastructure.
And this can help correlate problems across
13629.939 -> our global organizations to global infrastructures.
And that's the key, you may find something
13630.939 -> that happened in one part of the world. And
then something else that happened in another
13631.939 -> part of the world. And if you couldn't correlate
the events, you wouldn't know that they were
13632.939 -> related, but in many cases, they are related.
All this stuff is about event correlation.
13633.939 -> Why does one thing impact something else?
Okay, let's talk about cloud trail a little
13634.939 -> more. Here, you can see, we've got our virtual
machines EC to our identity and access management,
13635.939 -> our database. And it uses cloud and it's storing
all these logs into an s3 bucket. And that's
13636.939 -> the key. That's the key. And it's all done
for you. And it's all done storing all your
13637.939 -> information for long term storage analysis.
13638.939 -> Okay, let's get involved into AWS config very
quickly, then we'll take a break and answer
13639.939 -> some questions. A device config is a service
that enables the assessment, auditing and
13640.939 -> evaluation of configurations in AWS. It provides
an opportunity to see what changes were made
13641.939 -> and by whom. When a change is made in AWS
configure can send an SMS alert to systems
13642.939 -> admin. And how cool is that somebody does
something and you get notified, hey, by the
13643.939 -> way, somebody made a change. pretty helpful
if they're not supposed to be making changes.
13644.939 -> And like a production environment, for example,
people don't make changes during the day unless
13645.939 -> it's an outage, or during high periods of
use. And knowing when somebody made a change,
13646.939 -> when all of a sudden you have a problem, that's
pretty great. So you know how to revert that
13647.939 -> change. So config is going to provide constant
monitoring of all configuring configurations,
13648.939 -> it's going to check these configurations against
an organization's policy. And that way, if
13649.939 -> a change is made, that violates the policy,
you'd get an SMS alert, remember, there's
13650.939 -> notifications, and a cloud watch event will
occur. And because the cloud watch event occurs,
13651.939 -> we've got options. We can basically set up
a lambda function to remediate that event,
13652.939 -> so we need to it can tell us that something
was done so if there's a problem, we can go
13653.939 -> fix it. And we can integrate this with college
I also want to configure some changes are
13654.939 -> made we know what it is and we can fix it.
Should there be a problem? Okay, before we
13655.939 -> get back to the content, if you can give me
a hashtag AWS Certified Solution Architect
13656.939 -> Associate, and if you've not liked it yet,
please like, please subscribe and please hit
13657.939 -> the bell. And before we do this, we'll answer
a question. It's like cash. The cash is real
13658.939 -> quick question. Do I need to learn Apache
Kafka? Well, it depends. Are you an architect?
13659.939 -> You need to know what Apache Kafka does and
how to integrate it and its strengths and
13660.939 -> weaknesses, but we don't touch the tech doesn't
architect. Now if you're going to be a big
13661.939 -> data engineer, then yes, you need to get real
familiar with Apache Kafka. Okay, I'm seeing
13662.939 -> it. I'm seeing I'm not seeing enough subscribes
and likes yet, though. Maybe help us out with
13663.939 -> that. Looking to check and see if you guys
are paying attention to us. We work pretty
13664.939 -> hard. I'm dealing with laryngitis drinking
a tumeric and ginger tea trying to sue the
13665.939 -> throat. So it was some likes and comments,
please. Okay, now let's talk about CloudFront.
13666.939 -> CloudFront is something I love because it's
a content delivery network. And I love content
13667.939 -> delivery network. Why they improve performance
and enhance security. Nothing better than
13668.939 -> improving performance and enhancing security.
At the same time. Plus content delivery networks
13669.939 -> in many cases can even cut your cost down.
So improving performance, improving security,
13670.939 -> cutting costs, can you imagine how awesome
this stuff is Love it, love it love it, it
13671.939 -> doesn't get any better than this. So when
you're dealing with multi cloud, you're going
13672.939 -> to need multiple content delivery networks.
Why a single content delivery network is a
13673.939 -> single point of failure. Don't believe me,
the entire country, India was nearly taken
13674.939 -> down because it was relying predominantly
on a single content delivery network that
13675.939 -> went down half of India's Internet access
window. Real businesses that are high availability
13676.939 -> use multi cloud and multi content delivery
networks. But we're on your certification,
13677.939 -> we're going to talk about the cloud front.
And CloudFront is an exceptionally good just
13678.939 -> like these other content delivery networks.
It's the Amazon branded content delivery network.
13679.939 -> And what is a content delivery network, everybody's
going to tell you that it's a geographically
13680.939 -> distributed group of servers. It is a group
of servers, but it's also a network, which
13681.939 -> means it provides private network access,
High Performance Network Access, and user
13682.939 -> caching with the servers. So this will provide
caching and many other optimizations. Now,
13683.939 -> CloudFront, or any content delivery network
can dramatically improve your web hosting
13684.939 -> performance. Now, CloudFront is integrated
with a lot of AWS services, making it simple
13685.939 -> and elegant on AWS. Here's what's gonna happen
when a request is made. And I'm going to graphically
13686.939 -> show you this in a minute. What's ultimately
going to happen is it's going to hit the CloudFront
13687.939 -> content delivery network. So here I go. Here's
an example. Today, I want to go to www dot
13688.939 -> Cindy the cute cat.com. And when I go to www
dot Cindy, the cute cat.com. I go to the CloudFront
13689.939 -> distribution, mine is in Miami. And there's
not nothing there on the CloudFront distribution.
13690.939 -> So I hit the CloudFront distribution, it goes
to the Cindy the cat website, it gets sent
13691.939 -> back to CloudFront. And then it gets sent
back to me. Now my wife wants to see send
13692.939 -> me the cat videos. So my wife uses the computer
in the other room. She goes to the CloudFront
13693.939 -> distribution, and Cindy's photos and websites
right there because I just accessed it now
13694.939 -> now child comes to visit me in Florida, and
she wants to see photos of Cindy. So she's
13695.939 -> at our house in Florida, she goes to get instant
access to photos of Cindy. And we're all happy
13696.939 -> and the only time the website actually have
to answer the request was for me, was for
13697.939 -> me. And that's what we love these things.
So what happened is, if I've got 100 more
13698.939 -> requests in Florida, the cache will answer
100 times. So that took 99 of those web requests
13699.939 -> off of me. And they sent it to Cindy, that
99 requests for the web server. So you can
13700.939 -> see huge amount of scalability here. So what
will happen is the CloudFront servers will
13701.939 -> speed content that will reduce loads, and
in many cases they'll reduce costs. Because
13702.939 -> what'll happen is let's just walk you through
it in a graphics. So in this graphic that
13703.939 -> I'd like to show you, here we go. Now, here
we go. You first person makes a web request.
13704.939 -> And it hits the CloudFront location if it's
not at the CloudFront location, but I'll actually
13705.939 -> go to the regional cache. And if it's not
on the regional cache is going to happen is
13706.939 -> it's going to ride the Amazon internal network,
not the public internet to that s3 bucket,
13707.939 -> which is the source of my static website.
So request immediately hits CloudFront CloudFront,
13708.939 -> if it has, it's going to send it back to me.
But if it doesn't, instead of using the public
13709.939 -> internet to get to the website, it's gonna
jump on the Express Highway Lane, the private
13710.939 -> network that AWS controls, and it goes straight
to the s3 bucket, so it's gonna get off the
13711.939 -> internet onto a better network. Now, then,
what will happen, the asset will leave the
13712.939 -> s3 bucket, it'll sit on that cloud front cache,
and it will be sent to me. Now the second
13713.939 -> request, you can see on the user in the bottom,
the user request the same thing as the previous
13714.939 -> person. And it goes to CloudFront. And its
answer. So now think about this in a DDOS
13715.939 -> environment, if I had 100,000 requests to
that Miami CloudFront location, and there
13716.939 -> were all valid requests CloudFront would handle
the 100 100,000 requests, which means my web
13717.939 -> servers, don't you see how that helps. Now,
what if we were dealing with inter regional
13718.939 -> charges like AWS bills, you win between regions?
Guess what? We don't have to worry about that
13719.939 -> either. And why don't we not have to worry
about that either, because the content is
13720.939 -> cached. And it's not constantly transferring
across the inter regional divisions. So we
13721.939 -> can save a huge load on our servers. And at
the same time, we can increase security and
13722.939 -> cut our costs. So when we're talking about
these things, what are we really dealing with?
13723.939 -> We're really dealing with websites scalability.
We're dealing with increased security. And
13724.939 -> we're dealing with things now when this caching
not help. If all of our website stuff is dynamic,
13725.939 -> and changing every minute, and every user
is accessing different information. Now, caching
13726.939 -> will actually increase latency and reduce
the effectiveness. So like all architectures,
13727.939 -> we must, must must must know, what is our
usage patterns prior to deploying any piece
13728.939 -> of technology. Hence, the reason the most
critical skill for the Cloud Architect solutions,
13729.939 -> I can take this communication skills to find
help the customers business better. Because
13730.939 -> the business requirements drive anything.
It's not the tech doesn't drive the business.
13731.939 -> That's like the tail wagging the dog. The
business determines exactly what technology
13732.939 -> we use. As architects, and engineers, we hand
them a piece of paper, their genius is that
13733.939 -> they build this and they build it. different
jobs, different role. So CloudFront is going
13734.939 -> to integrate with a whole lot of AWS services,
it'll integrate with your basically s3, if
13735.939 -> you had static website content, your AC tn
instances and load balancers for dynamic content.
13736.939 -> It'll work through. It'll work through route
53. For your DNS, you're going to be using
13737.939 -> multiple cloud providers are not going to
be using route 53. CloudFront could be used
13738.939 -> as a front end to a static website, it can
also be a front end to an easy to basic website
13739.939 -> is assuming a load balancer as part of the
architecture.
13740.939 -> So realistically speaking, what are we actually
dealing with? What we're dealing with is the
13741.939 -> following. We're dealing with CloudFront being
the front end to static content on an s3 bucket,
13742.939 -> and the dynamic content of our website. And
why might we do this? Well, we may have a
13743.939 -> bunch of pictures and videos, the cheapest
place to store them is putting them on the
13744.939 -> object storage. And, for example, you know
what we're dealing with regards to the front
13745.939 -> end that you see chill instances. That's where
our dynamic web pages
13746.939 -> let's talk about some key concepts with regards
to CloudFront. We're going to talk about distributions
13747.939 -> origins and cache control. A CloudFront distribution
is as follows. It's basically identified by
13748.939 -> your DNS name. And it's going to look like
abcdefg 111 dot cloudfront.net. In fact, if
13749.939 -> you were here the day before, I will do it
one more time, in case you guys didn't remember
13750.939 -> the other day there may bear with me a second.
Plus, plus, plus, plus plus, Chris, I'm going
13751.939 -> to try and share something in a second. When
I do so please share the window for me. Okay,
13752.939 -> Chris, share this. Share this window from
my Mac. It's my terminal window. Here we're
13753.939 -> going to do an NS lookup. We'll identify our
name servers, and we're going to do www.amazon.com.
13754.939 -> What you can see over here, is we actually
have this ugly name Ah, and look at which
13755.939 -> CloudFront they're using right now, which
content delivery network they're using right
13756.939 -> now they're not even using their own content
delivery network, who knows, maybe something's
13757.939 -> going on with CloudFront. And you can see
that amazon.com is actually using aacomas
13758.939 -> Content Delivery Network. And you can see
this echo 15316 Dash, Delta, Sierra Charlie,
13759.939 -> alpha dot, aka my edge.net. So right now,
Amazon is using the optimized content delivery
13760.939 -> network two days ago, it was using CloudFront.
And in this particular environment may be
13761.939 -> called Flintstone. And that's what we're dealing
with. So this is actually the new URL of your
13762.939 -> company, when to use a content delivery network.
Now, clearly, we want to use amazon.com, and
13763.939 -> not this ugly thing. So what ultimately happens
is a Swede create a CNAME record that will
13764.939 -> map amazon.com, which is user friendly, do
this ugly looking thing, which is on the aka
13765.939 -> my network, and here's its IP address. Oops,
not what I was trying to scouts. Son there.
13766.939 -> Okay. Thanks, Chris, for fixing that for me.
And reading my mind, Chris, you're fantastic.
13767.939 -> Thank you. Thank you. Seriously, Chris is
my as my Chief Operating Officer, he's amazing.
13768.939 -> He doesn't need to be producing my stuff.
But he makes sure that we're successful, and
13769.939 -> I feel extra safe knowing he's behind the
scenes. So let's talk about the cloud front
13770.939 -> origin. Now. When you set up CloudFront, you
really have to specify an origin. And an origin
13771.939 -> is really the location of where your content
is coming from. Whether it's an s3 bucket,
13772.939 -> the load balancer that's front end and your
website, where's your content coming from?
13773.939 -> That's the CloudFront cord. Anytime you're
setting up a content delivery network, or
13774.939 -> dealing with a cache, you're gonna have something
called cache control. The whole point of CloudFront
13775.939 -> is to cache or temporarily cache the information.
Let's talk a little bit about caches and cache
13776.939 -> control. By default, your information is cached
for 24 hours, 24 hours. Now, why is this done?
13777.939 -> Well, if I post a photo of my beautiful Cindy
the cat, she's the cutest thing I've ever
13778.939 -> seen. Because I'm a little bit biased. And
you see the photo send me the cat. Now, if
13779.939 -> we cache it for 24 hours, for the next 24
hours, the cache will hold that Sydney the
13780.939 -> cat photo, so the website doesn't have to
respond. Now this is good. If the website
13781.939 -> doesn't change more than once every 24 hours.
More scalability, faster web blow speeds,
13782.939 -> all great things. But what if Cindy likes
to post on our website four times a day, she's
13783.939 -> got lands where she's laying on her back with
their hands in the air. And another one where
13784.939 -> she's sleeping, there's a video of her doing
a flip to chase a bird outside the house.
13785.939 -> And there's another photo with a little lizard
in her mouth that you just brought in to surprise
13786.939 -> me. Now if we cache it for 24 hours, the only
people are gonna see the first photo, nobody's
13787.939 -> gonna see the second. And Cindy, the cat will
be angry that nobody is seeing her do photos
13788.939 -> on her website. So then we would reduce the
cache to change more frequently. So longer
13789.939 -> cache times out more scalability, but the
people won't see new updates on your page.
13790.939 -> Should or update times mean lower performance.
And the cache is going to timeout more frequently
13791.939 -> and we're working with for your service. So
what drives this? Your usage pattern like
13792.939 -> everything else is based upon your business
requirements? So part of the things the architect
13793.939 -> would have to interview let's say, Cindy was
the actor and actress here. We'd have to have
13794.939 -> a conversation with Cindy, but your publishing
schedule? What's on here? How many times a
13795.939 -> day do you want people to see your new photos
and videos. So that's where you have to get
13796.939 -> it from your customer. Find out your customers
business pattern for your page, and then determine
13797.939 -> the appropriate cost control, which is also
called the T to know if any of you guys or
13798.939 -> girls have ever worked with the cache before,
or dealt with anything, you know, periodically,
13799.939 -> systems get corrupt. And if you have bad data
in your cache, it could be spinning bad data
13800.939 -> for upwards of 24 hours, your customers and
that would be real bad. So you can always
13801.939 -> clear the cache, keep them the doctor in mind.
So let's talk about setting up the CloudFront
13802.939 -> distribution. How would it be done? Well,
basically, you set up your web servers and
13803.939 -> put your content on them. If you set up your
web servers, and you put your content on them,
13804.939 -> you're going to create the CloudFront distribution.
AWS will accept it and give you one of the
13805.939 -> ugly, ugly, ugly domain names. And you can
either accept that domain name, or you can
13806.939 -> you create a CNAME record like AWS did, and
they will provision your computers. Like I
13807.939 -> said, Never use a single content delivery
network. And as you can see, when we did this
13808.939 -> two days ago, Amazon was using the Amazon
content delivery network a few days ago. And
13809.939 -> today, they're using the Akamai content delivery
network. So even they want they use multiples,
13810.939 -> multiple service providers, as do we all.
So now let's walk through CloudFront. One
13811.939 -> more time, something I showed you on the first
day, here's basically the architecture, you
13812.939 -> got two regions, which are your giant geographic
areas, you've got your data centers inside
13813.939 -> of each geographic area called the availability
zones, and then we have your Edge locations.
13814.939 -> Now how's it going to work? Let's do it one
more time. Let's take the user in the upper
13815.939 -> right hand corner. Hi, I'm user I request
a web page, www dot Gokhan careers.com. I
13816.939 -> hit the edge location, it's not there. So
my request is the edge location, it hits the
13817.939 -> regional cache, it's on the AWS private network
back down there content delivery network backbone,
13818.939 -> it gets sent to the source, it gets sent back
to the regional cache, which gets sent then
13819.939 -> to the edge location, which then gets sent
to the user. Now the subsequent users that
13820.939 -> hit that same edge location in the top corner,
will basically get an immediately. Now if
13821.939 -> a user on the bottom edge location requests
the photo from www.co, ca careers.com. If
13822.939 -> it's not on the cache, it'll go to the cache
the edge location, hit the regional cache,
13823.939 -> right the private network from the Content
Delivery Network back to AWS, come back to
13824.939 -> the regional cache, put it on the edge location,
and then give it to the user. And that's how
13825.939 -> these things sort of work. And that's how
they help. Let's talk a little more about
13826.939 -> what we're dealing with. CloudFront, as we
mentioned, can increase website performance
13827.939 -> dramatically. Because it contents caches your
content. It's time we made this there were
13828.939 -> 278 to 217 points of presence for CloudWatch.
I'm going to tell you right now, that's always
13829.939 -> going to change and grow. It helps with your
routing efficiency for the following reason.
13830.939 -> Normally, your web requests will traverse
the public Internet. But there's no guarantees
13831.939 -> of performance in the public Internet. So
what you really want to do is you want to
13832.939 -> use CloudFront, either hit the cache, jump
off the public Internet, jump onto your content
13833.939 -> delivery network, use that higher speed content
delivery network to go back to the source.
13834.939 -> So no matter what it's going to increase systems.
Now, you can help with your routing efficiency,
13835.939 -> as I mentioned, because you're going to try
to traverse the AWS network, not their content
13836.939 -> delivery network, not the public Internet.
And CloudFront also maintains persistent connections
13837.939 -> to the source. So you're not starting a new
session with a web server every request. So
13838.939 -> then that TCP SYN and ACK and SYN ACK that
were necessary to open up a connection, it's
13839.939 -> already maintained. So it's further than a
reduced latency. content delivery networks
13840.939 -> are excellent, but you need multiple ones.
CloudFront you can obviously put your web
13841.939 -> application firewall there. But you can also
put your shield there. In this way your DDoS
13842.939 -> protection can be streamed on the content
delivery network before they hit your firewalls
13843.939 -> before they hit anything. Block all bedroo
Bad requests before they ever get to you.
13844.939 -> So all content delivery knuckleduster matter.
Clean Crewson distributed denial of service
13845.939 -> attack prevention. And by being able to put
shield directly on the content delivery network
13846.939 -> and get it, and again, optimized got their
own DDoS protection. Microsoft's content delivery
13847.939 -> network has their own DDoS protection. Cloudflare
is another content delivery network, they've
13848.939 -> got their own DDoS protection. So this is
normal functionalities with regards to a content
13849.939 -> delivery network. But again, that ability
to terminate your SSL HTTPS connections on
13850.939 -> the CDN without even hitting your servers,
reduces load, the ability to make sure that
13851.939 -> the server is on if the answer to everything
only new responses reduces load. So increased
13852.939 -> speed performance, and in many cases reduces
cost. Now CloudWatch CloudFront can also provide
13853.939 -> your encryption and transit, because it can
enforce SSL slash TLS protocols. It'll integrate
13854.939 -> with many services, such as the certificate
manager, and CloudFront, support server name
13855.939 -> identification and custom certificates. Now,
normally speaking, use CloudFront for a public
13856.939 -> website. But what if you wanted a private
website, for example, paid website subscribers,
13857.939 -> private applications, there are a couple of
ways to do this. We can set up an origin,
13858.939 -> access identity, and we can restrict the data
to say an s3 bucket to certain individuals,
13859.939 -> we can use a signed URL, or we could use some
signed cookies. That's where we're at right
13860.939 -> now. Let me very quickly do something about
some lambda functions. And after lambda functions,
13861.939 -> we'll we'll take some questions. So let's
talk about lambda. Next, lambda is a serverless
13862.939 -> computing service. And it's used for micro
things. Basically, you upgrade the code and
13863.939 -> the lambda function works the same thing as
an Azure function, for example. And there's
13864.939 -> no need to manage servers or operating systems,
it's basically quick and dirty things. C sharp,
13865.939 -> Java, Node js, Python, basically, it's a way
for you to automate simple things. The way
13866.939 -> we're going to use lambda is as follows, users
going to update their code. And when something
13867.939 -> happens, the function is going to run. And
we're going to pay every time that lambda
13868.939 -> function runs. Lambda is stateless, which
means it doesn't track anything, functions
13869.939 -> performed, and completed. If you need another
function, you're gonna have to set up another
13870.939 -> function, it's not going to multistep function
without doing something else. And therefore,
13871.939 -> lamda is useful in many situations, where
automation can create an increase in efficiency,
13872.939 -> or decrease manual intervention to process
data across multiple systems. Because your
13873.939 -> s3 buckets, for example, got hit by a security
event. Patching an operating systems for example.
13874.939 -> A lambda function can response to an event,
you misconfigured s3 bucket Ding, ding, ding
13875.939 -> run fix something, a user can error. For example,
we could create our own thing. For example,
13876.939 -> let's walk through something that here would
be a great place for them to function. Let's
13877.939 -> say for example, I wanted to upload a video
to s3 and have a multi step video process.
13878.939 -> I can create a lambda function to have the
video transcribed, and another lambda function
13879.939 -> to basically have the video converted from
say raw video to H dot 264 H dot 265. I can
13880.939 -> then even have another lambda function to
send me an email that says, Hey, Mike, your
13881.939 -> video is ready. It's been processed, transcribed,
go download it. So lambda is really about
13882.939 -> automating these compute lambda functions
are exceptionally good for chisel transformation.
13883.939 -> One of the things we absolutely love about
the cloud or something like this. It's complete.
13884.939 -> Now let's talk about lambda at edge since
we just talked about cloud front, what if
13885.939 -> we wanted to run a lambda function basically
right next to the user? Well, we use lambda
13886.939 -> edge is completely serverless. And it works
with the CDN. So let's talk about lambda at
13887.939 -> edge. And lambda at edge, basically, you upload
your code and it'll run directly, basically,
13888.939 -> while your CloudFront location very simple,
very simple and elegant. While we're tying
13889.939 -> lambda together, we're going to enter step
functions. And then we're going to go to questions
13890.939 -> and answers and we probably should end right
there.
13891.939 -> So let's talk about step functions. If you've
got multiple lambda sequences, I mentioned
13892.939 -> they're stateless, you're going to need to
schedule them. And that's where step functions
13893.939 -> comes in. It enables you to create step one,
step two, step three, step four. So execute
13894.939 -> step focus on one executes the function to
executes the function three, execute. So assumption
13895.939 -> flair. So how's it gonna work? You design
the steps of the application, we create individual
13896.939 -> lambda functions, we're going to configure
the workflow and step functions will connect
13897.939 -> the workflow components to the individual
lambda functions. Each function will execute
13898.939 -> it step and will optimize and above the data
functions as needed. Here's a graphic for
13899.939 -> how that works. And then I will take questions.
Basically step one, step two, left, so step
13900.939 -> one, lambda functions step two, lambda function
step three, lambda function, step four lambda
13901.939 -> function. Good to see you. So the first thing
we're going to talk about today is this certificate
13902.939 -> manager. When you're dealing with websites,
and HTTP and HTTPS, what you're really dealing
13903.939 -> with is you want to make sure that it's encrypted.
And you have to identify that the website
13904.939 -> is who they claim to be. For example, if I
was going through a website to go buy cat
13905.939 -> toys, right? If I thought I was going to a
cat toy website, and instead it was a hackers
13906.939 -> website, you know, that hacker could steal
my credit card information. On my beautiful
13907.939 -> cat Cindy wouldn't get the cat toy. So two
things would happen, my credit card would
13908.939 -> be compromised. And I got Cindy would be really
sad. And we don't like my cats. And so we
13909.939 -> need to know that we're connecting to a website
that they are who they claim to be. There's
13910.939 -> not a hacker in the middle. So that's what
we do is we put a certificate on a website.
13911.939 -> The certificates on our website enable us
to determine who they are, help us do our
13912.939 -> encryption, verification and things like that.
And the AWS certificate manager is a service
13913.939 -> to help you do that. And certificate manager
adds protection to website by using certificates
13914.939 -> to establish safe and secure connections.
And I'll start with a quick manner tour itself
13915.939 -> is an AWS proprietary service that enables
for the simple provisioning management and
13916.939 -> deployment of your certificates, both public
certificates and private certificates. What's
13917.939 -> the difference? public certificate you put
on your external website, a private certificate
13918.939 -> you might do on your intranet, which is accessible
only from your internal network, not the intranet.
13919.939 -> And certificate manager allows users to deploy
certificates on AWS resources very quickly
13920.939 -> and efficiently. It's and certificate Manager
provides free and public certificates to services
13921.939 -> like our load balancers or API gateways. Now,
let's look graphically speaking for about
13922.939 -> a moment what certificate manager actually
looks like. You can see in this environment.
13923.939 -> We've got a certificate manager that we can
put on our elastic load balancers, our CloudFront
13924.939 -> content delivery network. Mind you in reality,
many organizations will use many content delivery
13925.939 -> networks at least one or two, but we can definitely
put it on the CloudFront distribution. So
13926.939 -> certificate manager is going to help you with
security by making sure you working identify
13927.939 -> and use basic encryption, HTTPs type encryption
or SSL based encryption, otherwise known as
13928.939 -> TLS, encryption for your webs. Let's talk
a little bit more about certificate manager.
13929.939 -> There are two options when deploying certificates.
And there's going to be the public and the
13930.939 -> private ca. And private CA is used for communication
inside of your organization. Now private CA
13931.939 -> certificates you have to pay for. And these
are basically what happens you can issue a
13932.939 -> certificate put on specific users computers,
applications or servers. And that way internally,
13933.939 -> your users can authenticate a system and users
can be authenticated. Not with a private certificate.
13934.939 -> You can't use it on the internet, right? Because
it's private. No public certificates obviously
13935.939 -> are public and they're free and you can use
them for your external facing websites. Now
13936.939 -> let's talk about Kendra. Kendra is another
service and it's a fully managed service provided
13937.939 -> but managed by machine learning. Now Kendra
lets users losers search through structured
13938.939 -> and unstructured data. What happens is Kendra
uses natural language processing to understand
13939.939 -> the context of a user's query and find relevant
answers. What will happen is Kendra will index
13940.939 -> your documents whether it's unstructured text
such as HTML, Powerpoint file presentations,
13941.939 -> Microsoft Word documents, plain text documents
or PDF. Kendra is capable of indexing structured
13942.939 -> tests for example, if frequently asked questions.
Now document actions can be used to fill up
13943.939 -> with Kendra can be used to filter responses
as well as queries. And of course, we can
13944.939 -> set up custom attributes that can be added
to documents as well as very specific searches.
13945.939 -> Now with Kenji, our queries can be directed
towards more relevant results by increasing
13946.939 -> or decreasing the importance of an individual
field in the index. How tight Do you want
13947.939 -> to search this really we're talking about
and if the user adds more wasting the importance
13948.939 -> of the highest replies or views, users can
see postings that are more popular or hot
13949.939 -> on forums. So it gives us the ability to use
machine learning to parse through a fair amount
13950.939 -> of information. And the type of machine learning
we're using in this particular case is natural
13951.939 -> language processing. Now we're gonna get into
some, we're gonna get into Kinesis. And Kinesis
13952.939 -> is a streaming service. Now it is a proprietary
streaming service. So many organizations can't
13953.939 -> use it. Again, Kinesis, to me feels like something
that you could toss away and replace it with
13954.939 -> Apache Kafka, and many big organizations in
the cloud who have done so because they don't
13955.939 -> want to lock themselves into a proprietary
solution. But no, this isn't reality. This
13956.939 -> is an AWS Certified Solution Architect Associate
under professional help training. And when
13957.939 -> you're dealing with an AWS certification that's
designed to make sure you know the AWS products
13958.939 -> that kind of make you excited to go recommend
it and sell it. So we're going to talk about
13959.939 -> it again, this is in a multi cloud environment
or a real critical high availability situation,
13960.939 -> you're going to be using kinni, you're going
to be using Apache Kafka not conducive. Now
13961.939 -> Kinesis is a service for collecting, processing
and analyzing streaming data. Now Kinesis
13962.939 -> can collect information in real time. And
that's kind of nice, because you can do this
13963.939 -> with Kafka as well. And typically use it for
video or application logs or website, click
13964.939 -> streams, or IoT devices. And normally, there's
two ways of collecting information, you could
13965.939 -> just connect it, collect information in system
logs and store it, then analyze it later.
13966.939 -> Or you can use a streaming service like Kinesis,
or Apache Kafka. And you can connect the data
13967.939 -> in real time. And you can kind of analyze
the data in real time, visualize the data
13968.939 -> in real time. And think about it this way.
What kind of a competitive advantage could
13969.939 -> you absolutely get? You know, if you have
historical information, and you can make data
13970.939 -> after the fact. But if you have real time
information, you can make much better decisions.
13971.939 -> Let's talk about Kinesis. Kinesis is ideal
for situations where large amounts of training
13972.939 -> data need to be processed and rapidly moved.
Think of it this way. If you had weather sensors
13973.939 -> all over the Caribbean, and Florida, and a
hurricane is coming, how cool would it be
13974.939 -> to have access to be able to look at that
information, visualize that information, analyze
13975.939 -> it in real time, that's what we're talking
about. We're a bunch of airplanes flying around,
13976.939 -> where you want to get their status, and make
sure they don't bump into each other. You
13977.939 -> know, it's high traffic when you're actually
in these airplanes. We don't realize it in
13978.939 -> our seats. But the pilots will tell you it's
like a congested highway over there to kind
13979.939 -> of keep that in the back of your mind. Now,
when we talk about Kinesis, we're going to
13980.939 -> talk about four platforms. And they're going
to be Kinesis video streams Kinesis data streams
13981.939 -> Kinesis data Firehose and Kinesis data analytics.
Let's talk first about Kinesis data firehose.
13982.939 -> It's a managed service to load streaming data
into data stores, data lakes, analytic services.
13983.939 -> Kinesis data, Firehose can capture streaming
data and put it into s3 or redshift, as well
13984.939 -> as many other services. And it's fully managed
and auto scaling and it'll, it'll scale as
13985.939 -> you need to for the throughput with auto scaling.
And of course, you can monitor what's going
13986.939 -> through Kinesis Firehose know when data is
going through Kinesis data firehose, or Kinesis.
13987.939 -> For that matter, the throughput is going to
be measured in shards. And a shard is basically
13988.939 -> going to be one megabit per second. Now, that
doesn't sound like a lot when you're dealing
13989.939 -> with video, because it's not. But when you're
dealing with little text files from internet
13990.939 -> sensors, those kinds of things, that's a lot
to do. Now, when you're going to do you obviously
13991.939 -> could use multiple shards, and the pricing
is going to based upon the number of stars
13992.939 -> shards. So like anything else prior to use,
your organization should determine the required
13993.939 -> shards in terms of capacity. And of course,
you can increase it when capacity is needed
13994.939 -> a little more about data firehose, we can
use up to 10 charts per region per account.
13995.939 -> And if we need more than 10 charts, no big
deal, but just contact AWS support, and they
13996.939 -> can enable it or we could also set up an auto
scaling policy on a scale the number of shards
13997.939 -> based upon utilization. Now we can set up
Kinesis data Firehose from the console setup
13998.939 -> as essentially setting up the sources and
the destinations for you. Know, we're dealing
13999.939 -> with Kinesis data Firehose streaming data
is captured by the firehose, I'm going to
14000.939 -> consent it and store it in s3. And we can
also analyze the data tools with analytics
14001.939 -> tools. So let's look at what this typically
could look like.
14002.939 -> Visually. In this environment, you can see
we've got multiple data streams coming in.
14003.939 -> We've taken these data streams in and we pop
these data streams into Kinesis firehose,
14004.939 -> from the Kinesis, Firehose you can see there,
we're putting it into an s3 bucket. And from
14005.939 -> there, what we're actually doing is we're
using analytical tools to kind of look at
14006.939 -> it, maybe something like Tableau or visit,
Tableau, or Power BI, those kinds of analytics
14007.939 -> tools give us the ability to parse through
large amounts of information, and actually
14008.939 -> visible.
14009.939 -> Now, let's talk about some Kinesis data Firehose
concepts. With Kinesis data firehose, we basically
14010.939 -> have a delivery stream, which is data coming
in, you set your Kinesis Firehose by crenate,
14011.939 -> creating a Kinesis data Firehose delivery
system. And then we get a record. And the
14012.939 -> record is the data that's ingested. record
can be as large as one megabyte. Few more
14013.939 -> things. As we talk about Kinesis data firehose,
we've got our data producers, right. That's
14014.939 -> the stuff that's sending you the information,
our IoT devices, for example. We also may
14015.939 -> have a buffer size and a buffer pool. And
what is that? Well, when we're dealing with
14016.939 -> Kinesis data coming in, it buffers in turn
incoming data streams to a certain size for
14017.939 -> a certain period of time before delivering
it to the destination. Make sense? Bundle
14018.939 -> up your data, send it, bundle up your data,
bundle up your data. And it's not a lot of
14019.939 -> time that it's going to be there, but it's
a short buffer. And now, we talked about Kinesis
14020.939 -> data firehose, let's talk about Kinesis video
streams. Every connected device such as a
14021.939 -> smart car, smartphone camera that unchain
we can use that data with Kinesis video streams.
14022.939 -> So we can pull information from all kinds
of video devices, we can store the information,
14023.939 -> convert the information and encrypted or we
can analyze it in real time. You can use this
14024.939 -> video streams automatically scales to handle
any amount of data. And it's used by analyst
14025.939 -> AI machine learning. And that way, we can
look at what's coming in and analyze it in
14026.939 -> real time using tools. A Kinesis application
specifically for video stream. So video streams
14027.939 -> enables the the ingestion. So we're it's really
about pulling things in as are all of these
14028.939 -> things. And one advantage of streaming through
this platform is that users can collect saving
14029.939 -> processing data. So let's look a little bit
about Kinesis video streams. Here you go in
14030.939 -> this environment, begin the taking in data
from a lot of different places, analyze it,
14031.939 -> use it for media processing. Let's look if
we wanted to crowdsource a video thing, for
14032.939 -> example. And we wanted to basically enable
1000 users to be streaming their video. So
14033.939 -> we could create a movie based upon cell phone
information. Imagine using Kinesis video streams,
14034.939 -> pull information from a variety of sources.
And wow, wow, wow, wow, you can do something
14035.939 -> very cool. So I can use this video streams
is a nice concept.
14036.939 -> We've talked about Kinesis firehose, we've
covered Kinesis video streams, let's talk
14037.939 -> about Kinesis data streams. Now Kinesis data
streams is a scalable platform to capture
14038.939 -> real time streaming data. And you can capture
data in real time. And you can actually analyze
14039.939 -> it within 70 milliseconds, which is pretty
darn fast. Imagine capturing hundreds of gigabytes,
14040.939 -> capturing gigabytes from hundreds of sources
or hundreds of 1000s of sources, and instantly
14041.939 -> making a decision, financial transactions
location tracking. So Kinesis streams can
14042.939 -> ingest data and then export it to a business
intelligence tool. What's happening with the
14043.939 -> streaming data is going to be captured by
Kinesis data streams at some central processing.
14044.939 -> And it can be central to like Power BI. So
let's look at what this actually can be used
14045.939 -> in concert. And we'll talk about some some
Kinesis data streams term. Here we go, we've
14046.939 -> got our data coming into Kinesis data streams.
Now their data is coming into Kinesis data
14047.939 -> streams, it's sent to Kinesis. Now we could
be using a Power BI Power BI or quick side
14048.939 -> or some tool like that. We can look at our
data and do something about it in real time.
14049.939 -> Now when we talk about Kinesis data streams,
there's a couple things which could pop up
14050.939 -> on your exam. Let's make sure we talk about
it. We've got the data producer, which is
14051.939 -> the application that emits the data records.
And what will happen as a data producer will
14052.939 -> assign a partition key. And the partition
keys will ultimately determine which shard
14053.939 -> is going to ingest your data. And of course,
we're gonna have the data consumer. What is
14054.939 -> the data consumer, it's what's receiving the
data from all shards as they're generated.
14055.939 -> Most data consumers are really receiving the
most recent data and a sharp and that's going
14056.939 -> to be used for real time analytics are handling
of your day. So let's talk about when we will
14057.939 -> use Kinesis data stream large event data collection
real time data analytics, capturing gaming
14058.939 -> data for example. Capturing mobile mobile
data quite quite useful in a lot of cases.
14059.939 -> Now, let's talk about Kinesis data analytics,
and new service or different service. Now
14060.939 -> Kinesis data analytics is going to be a managed
service that's used to transform and analyze
14061.939 -> streaming data in real time. Kinesis Data
Analytics uses the built in Apache Flink to
14062.939 -> process data, which is what many organizations
use for big data processing Kinesis streams
14063.939 -> is auto scaling, which means it's going to
scale the needs to meet your organizational
14064.939 -> needs. And data on Kinesis. Data streams can
be queried via standard SQL type graph queries.
14065.939 -> Sorry, I'm trying to call it data analytics.
I'm calling it data streams. Apologies for
14066.939 -> that. So let's look on our let's look graphically
at Kinesis data analytics. See, we can you
14067.939 -> can see we have a data stream that's going
into analytics, and then it's going to a business
14068.939 -> intelligence tool. So we can analyze the information
or have better business decisions in real
14069.939 -> time.
14070.939 -> Now, AWS knows most people would not use this,
they use Apache Kafka by building their own
14071.939 -> Apache Kafka servers. So now they're trying
to make a managed streaming platform for Apache
14072.939 -> Kafka. And now, that's exactly what managed
streaming for Apache Kafka is, it's a fully
14073.939 -> managed service that allows you just to build
them run their own application and use Apache
14074.939 -> Kafka for data stream processing. And, of
course, you could build your own and not use
14075.939 -> any of these matches any of these managed
services, and use the same virtual machines
14076.939 -> and multiple clouds for high ability. But
if you want to manage servers, and you don't
14077.939 -> want to manage the server, the operating system
and patching it, here's your option. So manage
14078.939 -> streaming for Kafka is a fast, scalable, durable
and fault tolerant streaming platform. And
14079.939 -> it's going to provide a unified high throughput
highly distributed messaging system. And it's
14080.939 -> a low latency platform for handling real time
data feeds. It's distributed partition and
14081.939 -> really good basically gives you a good logging
environment. It provides a publish subscribe
14082.939 -> message bus that can be used to build real
time data pipelines or streaming applications.
14083.939 -> Managed streaming for Kafka is distributed
platform designed to handle large amounts
14084.939 -> of data, and can be used to store and process
large amounts of data. Let's talk about another
14085.939 -> service which can pop up on your Certified
Solution Architect Associate or certified
14086.939 -> solution architect, professional exam, AWS
outpost. And what is the AWS outpost, it's
14087.939 -> basically AWS would define and define it as
a fully managed service that uses AC two instances
14088.939 -> or a series of VNC, two instances configured
inside of your V PC in an appliance, what
14089.939 -> is it really, you go buy a server from AWS,
you store that server inside of your data
14090.939 -> center, and AWS manages that server. And now
you've got easy chances inside your data center.
14091.939 -> Now reality is you can put your own server
here and manage your own systems. You don't
14092.939 -> have to buy that server from AWS, but you
have to manage it. That's what it is. It's
14093.939 -> a fully managed server that's got your own
virtual machines that you stick in your data
14094.939 -> center, and they manage it for you. The AWS
outpost appliance acts as a virtual part of
14095.939 -> your V PC, part of your VPC, even though it's
sitting your data center, which is placed
14096.939 -> in your data center. Now, why would you put
this AWS outposts in your data center, because
14097.939 -> the latency to the cloud is long and slow.
And even edge computing is not that great.
14098.939 -> So by putting the server in your data center,
now you've got a beautiful environment. Of
14099.939 -> course, you don't need to buy outpost at all,
you could just get a server from Dell, for
14100.939 -> example. And it probably be a lot cheaper,
because you'd have to manage it yourself.
14101.939 -> But if you don't want to manage the server
yourself, you can get the server from AWS.
14102.939 -> And because that way is part of your own EC
two and your VPC, you could use the cloud
14103.939 -> tools to manage it as opposed to the standard
tools to manage the server, whichever is easiest
14104.939 -> for you. So now let's talk about comprehend
another machine learning service from AWS.
14105.939 -> And Amazon comprehend is a natural language
processing service. And what happens natural
14106.939 -> language processing is in machine learning
artificial intelligence service that gives
14107.939 -> computers the ability to interpret text or
speech similar the way humans do but not exactly
14108.939 -> what happens is human language will be dissected
into pieces, so that the grammatical structure
14109.939 -> of the sentences and the meaning of the words
can be evaluated by machine learning from
14110.939 -> their natural language processing will extract
critical elements from the data. Natural language
14111.939 -> processing can identify patterns as well as
recognize the sentiments of the context, which
14112.939 -> is pretty cool. But we've got a long way to
go. With the intelligence to mimic human abilities
14113.939 -> or understanding language context, natural
language processing can help save businesses
14114.939 -> money, because an OT can automate processes.
For example, recognizing client behavior,
14115.939 -> and the preferences of voicemails and text,
mining data from various sources, making it
14116.939 -> easier to extract useful information so that
businesses can have a better understanding
14117.939 -> of the insights of the customers they're serving.
For example, dissect the meaning of videos
14118.939 -> to see if there's any negative content that
needs to be flagged categories of documents.
14119.939 -> So great way to use technology, to look through
your video context and all your things and
14120.939 -> text contests, to see if anything's offensive,
not good. Get a sentiment of your customers,
14121.939 -> it's great. That's a great these are great
tools. Now, AI tools are not a replacement
14122.939 -> for humans. They are supporting humans, because
the humans have the ultimate judgment. No
14123.939 -> machine learning tool has ultimate judgment,
but it can parse through large amounts of
14124.939 -> information and help provide decision support,
so the humans can actually make better business
14125.939 -> decisions. Let's talk about elastic transcoder.
Now this is a service for converting videos
14126.939 -> between various video formats. And the cloud.
It's easy to use cost effective and highly
14127.939 -> scalable way to convert videos that somebody
stores in s3 to some other verb. Now, you
14128.939 -> can do this on your own on your own servers.
It can be done in the CPU, and the GPU, but
14129.939 -> it's computationally expensive. So what is
this really about, I could actually shoot
14130.939 -> uncompressed video, and have a one terabyte
file after 15 minutes of video. Now, I can't
14131.939 -> stream a terabyte inside of 15 minutes, because
most users don't have the internet bandwidth
14132.939 -> for that, because they don't have a 10 gig
internet link. So what happens is we take
14133.939 -> our video and put the video into a compression
algorithm typically called the codec. And
14134.939 -> the codec, which is not exactly the compression
algorithm, but it's mostly a compression algorithm.
14135.939 -> But change that video format to say an mp4.
And by doing it, it can take video that might
14136.939 -> be a terabyte, and make it maybe 10 gigabytes
or 20 gigabytes sounds packable and streamable.
14137.939 -> And distributed. And elastic transcoder can
do it for you on the cloud. So you don't need
14138.939 -> big Xeon systems or big AMD epic servers to
do it. And these things, like I said, they're
14139.939 -> very computationally expensive. I can tell
you internally, but I need to transcode a
14140.939 -> video, I use a system that's got 64 cores,
and a $2,000 GPU on it, and a half a terabyte
14141.939 -> of RAM. So you could buy a system like that,
where you can pay to use a service like elastic
14142.939 -> transcoder, what's going to be the determining
factor whether it's good for you or not, how
14143.939 -> many of these things you need to do and how
often you need to run the system. So elastic
14144.939 -> transcoder is easy to use, because it's got
a very clear workflow, and predefined video
14145.939 -> formats that can be selected for lots of output
devices. It's available in various AWS regions,
14146.939 -> and users can just transcode their content
wherever it's stored, and users are paying
14147.939 -> only for the minutes needed to transcode the
videos. Let's talk about poly. Now Poly is
14148.939 -> a cloud service is going to transform text
into lifelike speech. Dozens of voices are
14149.939 -> available in different countries. And it gives
the user the ability to create a web page
14150.939 -> that somewhat realistic speech. We've all
been to websites where it's got like some
14151.939 -> robot that's trying to read you an article,
and it sounds sort of human. That's what we're
14152.939 -> talking about here. Polly's text to speech
technology uses artificial intelligence to
14153.939 -> create natural sounding human sounds. Now
neural detects the speech is a service that
14154.939 -> can improve the quality and get better with
advanced speaking styles. It can be used to
14155.939 -> help people read to a document at a faster
pace or even narrate a book on the go. This
14156.939 -> can vastly improve productivity, many people
can read much faster than they can listen.
14157.939 -> Other people can listen faster than they read.
So this is a Your mileage may vary. Now Polly
14158.939 -> can return audio is real time stream. And
this is going to make it ideal for a call
14159.939 -> center. Because that way we can use reactions
for problems during phone calls. Polly can
14160.939 -> be used as an announcer public transport transportation
system perfect for that kind of application,
14161.939 -> giving an up to date schedule information
that would be beneficial to the user or someone
14162.939 -> visually impaired. From games interactive
media, it can be used to to basically react
14163.939 -> to tailored speech responses. Chris did we
reach 20 minutes where I should open some
14164.939 -> questions
14165.939 -> continue going, you've got about two or three
more language things to do. Okay, changes.
14166.939 -> Okay, let me do a few more language. Let's
talk about recognition. Recognition is a way
14167.939 -> to analyze videos and images using machine
learning. Now this is kind of a kind of tool
14168.939 -> cool tool, Amazon recognition was used for
identification of individuals in a in a video,
14169.939 -> analysis of emotional state based upon facial
expressions, identification of unwanted content
14170.939 -> and videos, the ability to search a video
for a different person labeling of images
14171.939 -> detecting anomalies. Now, this is pretty cool
because in real life, you know, there's lots
14172.939 -> of times where you get a lot of information.
Think of it from a security perspective, you're
14173.939 -> in England, they've got a cat like one that
has cameras everywhere. And there's a threat,
14174.939 -> you can use something like recognition to
kind of go through this burden, think about
14175.939 -> your business, you want to make sure there's
nothing in your business from you users that
14176.939 -> could be brand damaging, so recognition is
quite helpful.
14177.939 -> Let's talk about textract. Amazon textract
is another machine learning service that can
14178.939 -> extract text handwriting and data from scanned
documents jpg png PDF to kind of like the
14179.939 -> old school optical character recognition with
machine learning to make it smarter. Amazon
14180.939 -> textract works by reading and processing millions
of documents using machine learning, which
14181.939 -> is a combination of various application programming
interfaces, plus learning all the stuff that's
14182.939 -> there. After reading context, text, rock can
extract text, handwriting, and information.
14183.939 -> Text route can automate document workflows
using AWS lambda functions. It by making API
14184.939 -> calls. Using text tracks makes it easier for
companies or businesses that deal with a lot
14185.939 -> of documents to automate the processing, and
extracting of critical data in an easy and
14186.939 -> cost efficient manner. textract is useful
when it comes to the ability to extract critical
14187.939 -> business data such as applicant names, mortgage
rates, and invoices. Assumptions. Let's talk
14188.939 -> about transit. This is a service that can
provide translation of 25 languages from one
14189.939 -> form to another. It's an automated language
transit translator. Some things don't naturally
14190.939 -> translate for real. And we humans actually
have to basically come up with things like
14191.939 -> if I were to say to Chris, open the lights,
he'd look at me like I have foreheads. But
14192.939 -> if I said to him, turn on the lights, we'll
know what that means. Remember, some things
14193.939 -> don't actually translate. And that's going
to be your weaknesses with these kinds of
14194.939 -> things. Keep that in the back of your mind.
So it's a service that will provide translation,
14195.939 -> it uses artificial intelligence machine learning
to try and translate as accurately as possible
14196.939 -> as time in demand permits. People of different
languages can communicate despite their language
14197.939 -> barriers.
14198.939 -> Translate uses neural networks to then identify
an intelligent translate languages it supports.
14199.939 -> This is helps in converting one language audience
to another language audio. Basically what
14200.939 -> happens is you've got an encoder, and the
encoder is going to read through the text
14201.939 -> word by word and then theoretically, intelligently
translate that and process that data. So what
14202.939 -> the text is supposed to mean. It's aided by
a neural network neural network node called
14203.939 -> attention mechanism best understand the text,
and then it's got a decoder. And the decoder
14204.939 -> is going to use the semantic meaning to translate
the word in the text for the intended output.
14205.939 -> Now Translate is a service that can be used
to detect an input source language and tell
14206.939 -> the user realistically speaking what language
they're using to aid that to it to enable
14207.939 -> a multilingual user experience in your application.
Translate company authored documents such
14208.939 -> as meeting minutes, technician reports, knowledgebase
articles and posts. So let's open it up for
14209.939 -> some question. Actually, I'm going to be to
talk about Alexa. And then we're gonna go
14210.939 -> to we're gonna go to the the question and
answer session. What is Alexa for business,
14211.939 -> Alexa for business is going to improve the
usability of conference rooms and offices
14212.939 -> by providing a more streamlined method of
accessing your company's scheduled tasks and
14213.939 -> information. By utilizing Alexa for business
companies can develop Alexa skills created
14214.939 -> or curated to their staff or clientele Alexa
for business enables it to centrally manage
14215.939 -> and deploy Alexa devices were used by employees
and shared spaces etc. and can put it in a
14216.939 -> conference room a huddle space, a phone booth,
the lobby, any physical person in possession
14217.939 -> of a shared device can use now let's go back
to the AWS server and actually before we can
14218.939 -> put it to good question Summit. So before
we go back to the content if you guys can
14219.939 -> give me all a hashtag AWS Certified Solution
Architect Associate.
14220.939 -> Alonso is perfect. Consider the clock a timeshare
I like to view it as a hotel room inside of
14221.939 -> a big hotel. Exactly the best way to look
at it again, I'm seeing this AWS Solutions
14222.939 -> Architect Associate more AWS Solutions Architect
Associate, actually from Cambridge, I love
14223.939 -> that I'm going to Cambridge in a little while.
Alonso AWS Certified Solution Architect, associate
14224.939 -> and Simas. There you go. You're down there
using an abbreviation, no abbreviations for
14225.939 -> architects. But we're thrilled to have you
here. So I'm most timeless, I actually had
14226.939 -> some engineer yesterday. And some of my other
favorite things. So let's talk about Elastic
14227.939 -> Beanstalk. Now, Elastic Beanstalk is one of
those automatic things and automatic make
14228.939 -> people like me terrified. Basically speaking
Elastic Beanstalk provides the necessary tools
14229.939 -> for web deployment, what will happen is it
will automatically deploy your tools. So what
14230.939 -> happens is you'll write some code, and either
go or Java or dotnet, or Node js or PHP or
14231.939 -> Python or Ruby. And what happens is Elastic
Beanstalk is going to manage and provision
14232.939 -> the environment for you. Then it's going to
monitor the health of your systems and scale
14233.939 -> or not scale for you. Now, think about having
something that's done for you never going
14234.939 -> to be optimal. It's never going to be smooth,
there's going to be whatever the computers
14235.939 -> determined for you. So it's like going to
McDonald's and saying, I'd like a Big Mac
14236.939 -> fries and a coke. It's never going to have
that degree of customization is if your grandmother
14237.939 -> made it for you, or you made it in your grill,
your wife made it for you or you made it for
14238.939 -> your wife. So keep that in the back of your
mind. All these automated systems are great
14239.939 -> because they save time. But you also lose
something along the way. So let's look at
14240.939 -> the concept of Elastic Beanstalk. You basically
put in your code, and poof, it automatically
14241.939 -> deploys a fully redundantly in a single cloud
environment for you for your web applications.
14242.939 -> Now let's talk about amplify. Now, amplify,
is a service for the quick deployment of full
14243.939 -> stack, web and mobile applications. And what
happens is full step applications are made
14244.939 -> in the front end, in which the user basically
sets up their interface. And the back end
14245.939 -> refers to servers, code and databases that
make the app work. Now, a developer can create
14246.939 -> the application without needing to manage
services, virtual machines or storage. Yes,
14247.939 -> you don't have to do it. But what happens
when you don't do it yourself. So let's talk
14248.939 -> about amplify and include three main tools
for development and testing. We've got the
14249.939 -> amplify AWS amplify studio, which is a web
browser based visual deployment interface,
14250.939 -> and allows for simplified drag and drop configuration
of the applications front end and back end.
14251.939 -> And then, of course, we've got the AMPLIFi
CLI, which allows command line development
14252.939 -> of the applications back end, of course, the
developer can choose from up to 175 of AWS
14253.939 -> services to build their support their application
just by writing a few lines of code, amplify
14254.939 -> hosting, they can update, push new, updated
applications to the internet code can be retrieved
14255.939 -> from a git repository or amplify studio and
replace and then deployed in cloud fronts
14256.939 -> content delivery network. Now let's look at
app discovery. App Discovery is a service
14257.939 -> that helps enterprises migrate their on premise
applications to the cloud. This service reveals
14258.939 -> about the business case creation and application
migration planning. But in business case,
14259.939 -> creation is going to need to be done by somebody
that knows business, business business, this
14260.939 -> can give the people that are going to do this
and insight. But no application can build
14261.939 -> the business case for you. Some of the data
will be the cost of operating in cloud versus
14262.939 -> on premise. But look where the data is coming
from the cost of migrating information to
14263.939 -> the cloud, the cost of leaving your current
infrastructure, the benefits of being in the
14264.939 -> cloud, the cost of doing nothing. Now you
know when I remember when I learned how to
14265.939 -> practice medicine, they were very careful.
Look at the source of the information. If
14266.939 -> you're dealing with a drug company funded
study, chances are the study is going to be
14267.939 -> supporting thing that's funded by the drug
company. When a cloud providers making something
14268.939 -> that's going to build a business case automatically
for you, it's probably going to be biased
14269.939 -> towards them. Meaning they may use overly
high pieces of information for they think
14270.939 -> you'd have costed for run your own systems,
which may be accurate, or may be totally off.
14271.939 -> Now, app discovery makes migration easier
by allowing enterprises to make better decisions
14272.939 -> because it's a tool for This data companies
can rapidly organize track and ship applications
14273.939 -> to the cloud. And what it predicts is the
most efficient way again, analysis by the
14274.939 -> human mix with App Discovery magic, one application
by itself, not so good. Not looking at data
14275.939 -> not so good either. So it's a combination
that should never be gut, it should always
14276.939 -> be data plus human intervention. And when
we deal with AWS application discovery service,
14277.939 -> it collects information like CPU, disk space,
and network usage performance, capture data
14278.939 -> can be used for the analysis of network efficiencies
and deficiencies in your systems. Little more
14279.939 -> about application discovery, basically speaking,
it's used to collect detailed information
14280.939 -> about an enterprise's on prem data center,
it can then use this information to form the
14281.939 -> most efficient and cost effective migration
strategy to the cloud. Keep that in back your
14282.939 -> mind. It's from a cloud provider telling you
how the cheapest way to do it. From this data
14283.939 -> enterprises can determine total cost of ownership
benefits, etc. Let's talk about App flow.
14284.939 -> Now, app flow is a bi directional service,
meaning it goes in two directions that moves
14285.939 -> and synchronizes data from third party applications.
Software as a Service, for example, like Salesforce,
14286.939 -> or slack, to AWS services without having to
write code, the synchronization service we've
14287.939 -> had these for a long time. All that's needed
to do is to configure your data transfer requirements,
14288.939 -> and APA will take care of moving your data
between SaaS applications, SAS meaning Software
14289.939 -> as a Service, think about Microsoft 365. Think
about, for example. salesforce.com Software
14290.939 -> as a Service zoom software as a service. by
aggregating data from multiple services, companies
14291.939 -> can make observations create hypotheses and
draw conclusions based upon the information
14292.939 -> that's been consumed. App flow can help determine
the total amount of money a customer's spending
14293.939 -> on a user's business's products during their
lifetime. Outflow can improve operational
14294.939 -> efficiencies by connecting application services
and processes and devices to automate workflows.
14295.939 -> And anytime we can automate workflows. Theoretically
speaking, you can reduce real world errors
14296.939 -> and over and reduce the overall cost of business.
Now outflow modernizes data governance and
14297.939 -> clarity of the movement of your data between
these applications. Uses for app flow is to
14298.939 -> quickly integrate your applications to transfer
your data at a massive scale, and automate
14299.939 -> your data security. Let's talk a little bit
about App sync. Now. App sync is a simple
14300.939 -> solution that enables multiple applications
to be connected and synchronize with data
14301.939 -> from multiple sources including databases,
lambda functions, and open service. Now, app
14302.939 -> sync automatically manages and updates the
data in web and mobile applications in real
14303.939 -> time, and updates the data for users off for
offline users as soon as they connect. By
14304.939 -> doing this, it combines all the data from
multiple applications, and simplifies the
14305.939 -> processing of transforming transforming data
to the cloud. App sync uses a publisher subscriber
14306.939 -> model model method to push or pull data from
multiple sources. A template is used to define
14307.939 -> what data is going to be pulled on from what
sources a little more about App sync, app
14308.939 -> sync is a simplest solution. They really just
move your information, it can synchronize
14309.939 -> your data from databases, lambda functions,
and open source, app Sync will automatically
14310.939 -> manage the updates from your web and mobile
applications.
14311.939 -> Now let's get into cloud nine. Cloud Nine
is an integrated development environment,
14312.939 -> which is software that pulls together common
tools that is used to build applications under
14313.939 -> a simple graphical user interface. Now CLOUD
NINE provides 40 Plus programming languages,
14314.939 -> and provides developers within an environment
with all the tools necessary to build run
14315.939 -> and test and debug applications and software
releases. Cloud Nine offers the ability to
14316.939 -> develop, deploy and debug applications using
a simple browser and you don't even have to
14317.939 -> deploy the application delivery environment.
Now, this integrated delivery environment
14318.939 -> will help save time and developing new applications
because there's not so many tools that need
14319.939 -> to be configured separately. They have automatic
code generation and intelligent code completion
14320.939 -> features which have cut down on the time,
just like when you send a text and there's
14321.939 -> a predictive text that finishes your word
for you. This is what Cloud Nine is doing.
14322.939 -> And it can really save you some time here.
Now, CLOUD NINE will also identify bugs and
14323.939 -> real time, it'll highlight certain things
in your syntax. And this way, developers are
14324.939 -> not going to have to switch between tools
because they're in a simple graphic user interfaces.
14325.939 -> It's kind of a very nice tool. These features
enable developers to have an organize workflow
14326.939 -> and solve problems when they arise. Now we're
going to talk about a service called CloudFormation,
14327.939 -> which has no place in today's modern world.
TerraForm has replaced it by using TerraForm.
14328.939 -> You can deploy something in AWS, Azure, Google,
OpenStack, and Nutanix, all at the same time.
14329.939 -> By creating CloudFormation templates, which
we're going to talk about next, you are locking
14330.939 -> yourself into only AWS, and making it harder
to create a high availability, multi cloud
14331.939 -> environment, but it's on your exam. So we're
going to talk about it for the purposes of
14332.939 -> the exam. CloudFormation is an infrastructure
as code service, it provides the means for
14333.939 -> you to template known good configurations
of your systems. Meaning you've got a web
14334.939 -> server with a certain level of patching and
a certain amount of information in it. And
14335.939 -> you can use cloud formation to basically provision
that server exactly, or provision all your
14336.939 -> things. Now CloudFormation would be great
if it was worked on multiple clouds, like
14337.939 -> TerraForm, but it doesn't so but CloudFormation
templates can be made with your simple text
14338.939 -> files or any of the supporting languages.
Like it's it's Amazon proprietary version
14339.939 -> of TerraForm. Here's what it's going to look
like you're going to code your information,
14340.939 -> infrastructure, you're going to store your
template in s3, you're going to launch that
14341.939 -> template, and it's automatically going to
deploy your information exactly where it's
14342.939 -> supposed to be exactly where it's supposed
to be. CloudFormation templates are available
14343.939 -> for a multitude of options. You can write
them from code from scratch, and either JSON
14344.939 -> or Yamo format. Yamo format you'll recall,
is typically used in Kubernetes deployments.
14345.939 -> The code is either stored locally or on s3,
the code is either used by the CloudFormation
14346.939 -> you can use in the console CLI, of course,
the appropriate API or programming interface.
14347.939 -> Confirmation will provision your system based
upon the template CloudFormation could deploy
14348.939 -> your templates across your infrastructure,
and CloudFormation. Also, as a couple of stacks,
14349.939 -> all resources managed by the template the
CloudFormation template are called stuck.
14350.939 -> Briefly, we'll talk about a new service called
Code artifacts. AWS code artifacts enables
14351.939 -> users to serve software packages used during
application development. The software packages
14352.939 -> are stored in a repository like GitHub, so
they can be accessed for future reuse reuse.
14353.939 -> The packages can then be simple files reports
of logs, why your company needs our AWS code
14354.939 -> artifact, it reduces delivery time by encouraging
code reuse just like we do. It's a fully managed
14355.939 -> service by AWS so it takes the stress off
the management, and there's no limit to the
14356.939 -> number of packages you'd like to store. Code
star is a service that assists in creating,
14357.939 -> managing and deploying software applications.
This service that facilitates using a central
14358.939 -> console that can be used to assign project
team members to specific roles needed to access
14359.939 -> certain tools and resources by a centralized
console. Code star offers a single dashboard
14360.939 -> that integrates software development tools,
thereby making it easier for managers develop
14361.939 -> players and team members to collaborate on
projects so they can track so they can use
14362.939 -> the console to truck software development.
Data Exchange. AWS data exchange is a data
14363.939 -> subscription service that allows the exchange
of data between organizations. Customers can
14364.939 -> subscribe to various published data through
the console. Data can be used for date to
14365.939 -> make data district data driven decisions by
using analytics or machine learning. with
14366.939 -> AWS data exchange data providers can host
data such as payroll information, debit card
14367.939 -> transaction, healthcare and demographic data.
For the for the use of AWS customers know
14368.939 -> if it's gonna be healthcare data, it's gonna
have to be de identified data. Because otherwise
14369.939 -> HIPAA rules will get in the way you can't
say Mike's medical record is this, but you
14370.939 -> can D aggregate the data and find out that
you had 600 people that had heart attacks,
14371.939 -> for example, and try and figure out what's
going on.
14372.939 -> A little more about data exchange, the data
is produced as a data product that customers
14373.939 -> can subscribe to, and the data exchange in
the marketplace. Data and the AWS data exchange
14374.939 -> can be organized in these three ways assets,
which is just a piece of data revisions, which
14375.939 -> is a container of one or more assets, and
data sets, which is a series of one or more
14376.939 -> revisions. Data Exchange allows customers
to migrate to the cloud with existing subscriptions
14377.939 -> by approved 30 party providers. somewhere
new services that are part of the new exams,
14378.939 -> associate and professional device farm. AWS
device farm allows developers to test their
14379.939 -> applications by using visual devices available
on the service without the need to buy physical
14380.939 -> devices. So basically using virtual devices
to use virtual devices can credit cross platforms
14381.939 -> including iOS, Android on weather as well
as our web platforms. So instead of buying
14382.939 -> an iPad, you can use a virtual iPad to test
your code. This is nothing new, we've been
14383.939 -> using things like this forever. AWS device
farm allows testers and developers to test
14384.939 -> their applications in the following ways.
Automated AP testing remote access integration,
14385.939 -> for example. Automated AP testing users can
upload and choose the application to test
14386.939 -> select devices and operating system versions,
and the number of devices that are going to
14387.939 -> be used for the test. Users can select as
many virtual devices as possible different
14388.939 -> operating systems, as well as to get to the
desired outcome. Users can then remote access
14389.939 -> integration users can set up a virtual device,
interact with it while remotely achieving
14390.939 -> real time outcome. So if any of you have ever
seen what some QA testers do in real life,
14391.939 -> you deploy something and then they create
a fake 10,000 users and use excuse to generate
14392.939 -> traffic and use other scripts to generate
users. That's what this is doing. It's a nice
14393.939 -> way to simplify testing across a wide variety
of platforms.
14394.939 -> Talk about forecast. Forecast is a machine
learning tool to assist with business forecasts.
14395.939 -> It works on a time based on working in a time
based environment by analyzing data, oldest
14396.939 -> data first, to the newest data to help businesses
make predictions. That's the whole point of
14397.939 -> machine learning in the first place. Amazon
forecast works by using machine learning algorithms
14398.939 -> to combine historical time series data with
other variables to build accurate forecasts
14399.939 -> with the aim of predicting business outcomes
accurately. To create a forecast project and
14400.939 -> Amazon users work with following resources,
imported datasets training, predictors and
14401.939 -> generating forecasts. Amazon forecast is used
when you want to predict business outcomes
14402.939 -> accurately. Useful in fields like healthcare,
retail, finance, hospitality, you these things
14403.939 -> are useful anywhere, man, I take information
aggregated and monitored. So let's talk about
14404.939 -> where we would use it. With regards to operational
planning. It can support business applications
14405.939 -> predict to predict amounts of web traffic,
AWS usage IoT sensor usage, we can use it
14406.939 -> for supply chain planning, for example, to
allow businesses to predict how much goods
14407.939 -> and services they need to purchase when they
need it. We can use it for retail demand planning,
14408.939 -> it'll give business the opportunity to predict
demand based on historical data, and associated
14409.939 -> data. So businesses can adjust inventory and
pricing, for example. And it allows businesses
14410.939 -> predict requirements for staffing, energy
utilization, and marketing.
14411.939 -> Now we'll briefly talk about global accelerator.
Global accelerator is the way to get your
14412.939 -> stuff in the data quicker. And what happens
global accelerating, we'll use a built in
14413.939 -> health check to make sure your endpoints are
healthy. And what happens it's a means to
14414.939 -> connect to the system. So let's let me whiteboard
this out how these things work. Typically
14415.939 -> speaking, these are done with like any caste
environment. So let's share those. So I want
14416.939 -> you to think of this and the concept of routing.
Let's say you're you're here, the user, let's
14417.939 -> say this is the user, you want to connect
to an endpoint with AWS. Now let's normally
14418.939 -> say this is your closest endpoint, this endpoint
is going to have an IP address a three dot
14419.939 -> 3.3 to three. That's where you're going to
connect. And then let's say this is going
14420.939 -> to bring you on to the AWS cloud.
14421.939 -> Now what's going to happen is we're going
to create an IP address that 3.3 dot 3.3,
14422.939 -> we're also going to use something called anycast.
Typically speaking, when we do something like
14423.939 -> this, you do something like this, let's say
you have another three dot 3.3 over here.
14424.939 -> And the other three dot 3.3 is also going
to be connected to the cloud. So the way this
14425.939 -> works is if your users over here, what's going
to happen is your user is going to connect
14426.939 -> to this 3.3. Because it's closer to them,
you move the user up so you can see the user.
14427.939 -> So if the users over here, they're going to
use this three dot 3.3. But what happens if
14428.939 -> this three dots three goes away, late? Now
this user is going to going to connect to
14429.939 -> the cloud over here, which is going to get
them to the cloud. So what these endpoints
14430.939 -> are dealing if they're using a single IP address,
and this is called anycast. You'll see it
14431.939 -> widely use an IP multicast routing. You'll
see it used in DNS, and it's creating multiple
14432.939 -> devices with the same IP address. For us,
because we're using the same IP address for
14433.939 -> each one of these devices, which is really
cool. We'll only be able to reach the closest
14434.939 -> one. And what's going to determine the closest
three dot 3.3. For us, let's move this stuff
14435.939 -> up. Let me move some of the stuff over a little
more, to try and make it a little more clear
14436.939 -> to you. Because let's say there's a couple
of three dots. On the screen, what I'm trying
14437.939 -> to do is want to make this picture clear for
you guys. And we're typically going to have
14438.939 -> multiple endpoints when we deal with a global
accelerator. And the goal is to get us to
14439.939 -> the closest one. Now, if we happen to be over
here, this three men in this particular use
14440.939 -> case, this 3.3 is here. But what happens when
this three to three dies, trust me all technology
14441.939 -> dies, then we want to go to this three to
then we're going to be taking this to this
14442.939 -> three dots, we will go here. And if this was
dead, we hit the other three dots, right.
14443.939 -> So that's really what we're talking about
global accelerator, we're finding an entry
14444.939 -> point to get you on to the AWS network. And
we want to find the closest entry point. But
14445.939 -> we also want to do it in a high availability
manner. And that's why we're using anycast.
14446.939 -> Because if any one of these goes, that's going
to be there. Now, how are you going to determine
14447.939 -> what's the closest three dot 3.3? Well, if
you're on your computer, you're going to have
14448.939 -> a default route, your default route is going
to take you to your internet router. And either
14449.939 -> that router is going to have a default route
and use your ISPs information. Or you're going
14450.939 -> to have to an IT service providers which should
be can have BGP, and BGP will determine what's
14451.939 -> the closest three dots three to three for
you, on your routers. So that's kind of the
14452.939 -> the way this kind of works. Let's get back
to the content, we've got an ambitious agenda
14453.939 -> for another hour and a half today. If you
can give me a hashtag AWS Certified Solution
14454.939 -> Architect Associate. And for Brent who just
got a new keyboard, maybe you can give it
14455.939 -> to us twice, because you weren't able to type
for the rest of the week. And so have you
14456.939 -> have a new keyboard.
14457.939 -> So let's get into manage Grafana. Grafana
is a service that's used to enhance productivity,
14458.939 -> while making use of Grafana applications by
taking away a burden of self knowledge because
14459.939 -> it's a managed service. Grafana is an open
source analytical platform that's used to
14460.939 -> visualize query and understand metrics stored
anywhere in your production data center environment.
14461.939 -> It's going to be serverless, which means you
don't have anything to manage. And so they
14462.939 -> say a server list and secure. Users can instantly
query correlate and visualize operational
14463.939 -> metrics and traces from multiple sources.
Now we're dealing with managed Grafana, it's
14464.939 -> going to be highly scalable. And because it's
managed for you, you don't have the burden
14465.939 -> of upgrading your platform. Now, manage Grafana
provides a single dashboard containing all
14466.939 -> of your resources and tools. It's a highly
interactive data visualization service for
14467.939 -> monitoring real time data. It allows for the
easy integration with open source tools like
14468.939 -> AWS tools, or third party tools, and common
data called sources. No manage Grafana support
14469.939 -> SAML Security Assertion Mark markup language,
which is widely used everywhere like Active
14470.939 -> Directory. It's highly secure sharing data
privacy and protection. It eases the stress
14471.939 -> of licensing and removing periodic licensing
with grip grip with Grafana because they manage
14472.939 -> it for you. Now remember, they manage it for
you. Open search server lists. Open search
14473.939 -> is an open source service that allows users
to search analyze and monitor large volumes
14474.939 -> of data from multiple sources. It's going
to incorporate visualization tools that provide
14475.939 -> information to unstructured and semi structured
data. In addition, open source integrates
14476.939 -> well with analytics, machine learning and
other mining tools. When data is captured
14477.939 -> and fully loaded into open search, it's going
to use built in services such as Cabana, full
14478.939 -> text, querying, autocomplete, or scroll search
to search visualize an analogue dogs and get
14479.939 -> real time and insights into your data. And
it can reduce operational overheads because
14480.939 -> it's open source, it's somewhat managed for
you and it's easy to use. Let's talk about
14481.939 -> another AWS is a new one called proton, which
is an automated applicant delivery application
14482.939 -> delivery service that focuses primarily on
containers and serverless workloads. Proton
14483.939 -> enables platform teams to enforce and control
best practices in your underlying infrastructure.
14484.939 -> proton is a service that separates the infrastructure
and its code to promote effective collaboration
14485.939 -> between infrastructure teams and development
teams. Proton provides the offerings and infrastructures
14486.939 -> code, CIC D monitoring and an efficient way
for dealing with containerized and serverless
14487.939 -> applications. These templates can be used
to replicate across various development, staging
14488.939 -> and production environments. And users will
have full capacity to manage, update and troubleshoot
14489.939 -> as appropriate. This deployment is really
a workflow tool for modern applications to
14490.939 -> help DevOps engineers achieve more organizational
agility. Now, we're going to get into something
14491.939 -> that's really cool. VMware on AWS. Now, there's
VMware on all the cloud providers. And this
14492.939 -> is really an infrastructure of a service platform
that basically offers a complete software
14493.939 -> defined data center on AWS on Amazon bare
metal servers. So realistically speaking,
14494.939 -> you got two options. When you go to these
clouds, you can use their management console
14495.939 -> and older stuff, which for many people is
new to them. Now, most data centers for the
14496.939 -> last 20 years have been using VMware. They're
fairly virtualized, fully hyper converged
14497.939 -> just like a cloud. And everybody knows how
to use them. And we're all comfortable with
14498.939 -> using them. And then when we go to the cloud,
our cloud providers make up silly terms, such
14499.939 -> as Elastic Compute Cloud, Compute Engine instance,
and all these things, which confuses customers.
14500.939 -> So now AWS and the main cloud providers say,
Hey, you can just use the same VMware stuff
14501.939 -> on our cloud. So basically, what happens now
is you can now use VMware on the cloud, use
14502.939 -> the same beautiful, elegant VMware interface
that all your people have known for the last
14503.939 -> 20 years, not have to deal with any of those
AWS Management Console or CLI is anyway. And
14504.939 -> well, AWS can say, hey, we made a light, but
a dark mode, who cares, we're trying to do
14505.939 -> these things. This is basically letting your
users use the stuff they've used with all
14506.939 -> the control they've been using forever, I'm
going to take their virtual machines from
14507.939 -> their data center to the cloud, they don't
even need to convert them now because they're
14508.939 -> going to just move them directly and basically.
So now let's the simple VMware user face,
14509.939 -> that same vSphere, all these kind of wonderful
VMware tools that people have used. And now
14510.939 -> they can easily push this on multiple multiple
clouds all at the same time. With an interface
14511.939 -> that's known, that means no real retraining
of your users, because they're going to do
14512.939 -> the same stuff they've ever done. And this
means they're going to use the same VMware
14513.939 -> servers, the same vSphere, the same VMware,
virtual Sam, the same VMware NSX virtualization
14514.939 -> technologies all in the data center, directly
in the cloud, nothing new to learn. So VMware
14515.939 -> on AWS, as well as VMware on the other clouds,
will enable enterprise IT operations continue
14516.939 -> to use their great services now in the cloud.
So now they don't have to buy their hardware,
14517.939 -> but they can still use it the same way they
always have. This is really great service.
14518.939 -> The offering enables customers to quickly
and confidently scale up or down the capacity
14519.939 -> with minimal friction and simplicity with
ease. The service is optimized to run on dedicated
14520.939 -> bare metal servers. So you'd be using the
VMware hypervisor as opposed to the AWS hypervisor,
14521.939 -> very simple migration, very fast disaster
recovery, flexible in every way. And basically,
14522.939 -> hey, you get to use your same VMware now on
the cloud, nothing to learn whatsoever, kind
14523.939 -> of make learning all these services somewhat
irrelevant, because now you can do it all
14524.939 -> on VMware the way you always have, but without
buying the servers. So that's what VMware
14525.939 -> is on all these clouds, simple and elegant,
lots of customers are going to take advantage
14526.939 -> of. Of course, if it's a new customer, they
could go straight to the AWS EC two version.
14527.939 -> But if they've got this and it's deployed
on their team knows about it, it makes it
14528.939 -> simple and elegant, they don't need to hire
or cross train new people to do the implementation.
14529.939 -> Let's talk about AWS web Wailoa. And that
typically exists outside of an AWS center.
14530.939 -> So what with wavelength users can create their
virtual machines otherwise known as easy to
14531.939 -> instances, block storage, otherwise known
as Amazon, elastic block storage, and Amazon
14532.939 -> Virtual Private Cloud subnets, an AWS wavelength
and you services that orchestrate elastic
14533.939 -> Kubernetes service, for example, an Amazon
cluster services, what we're going to be dealing
14534.939 -> with is infrastructures are going to be deployed
on 5g communication provider networks. And
14535.939 -> this is going to be useful when you've got
a low latency environment such as streaming
14536.939 -> applications and things that are going to
be out there. Wavelength is really an infrastructure
14537.939 -> deployment in better than telecommuters facility
like a 5g network. So this can be compared
14538.939 -> to a local zone that works with an availability
zone, but with low latency, part of AWS wavelength
14539.939 -> which you would have had done as application
traffic would have to travel from the device
14540.939 -> to the cell tower, and then a metro aggregation
location, and then it could go to the internet
14541.939 -> before it could reach into the wells. These
network cops were dealing Anytime we're dealing
14542.939 -> with Hops can add milliseconds of latency.
And by doing it this way, it's going to be
14543.939 -> closer. So, think of an internet IoT devices
that are going to go straight to this wavelength
14544.939 -> thing pushed on the 5g network and back to
the cloud. So there's lots of use cases for
14545.939 -> this. Amazon X ray, X ray is a tool used to
troubleshoot and identify root causes of performance
14546.939 -> issues with AWS services. X ray looks at your
application programming interface requests
14547.939 -> as they travel through your application and
produces a map of your application, developers
14548.939 -> can use AWS X ray to analyze and debug their
applications. X ray will provide a full picture
14549.939 -> view of the request passing through user services,
and it helps see who made the request to the
14550.939 -> service when the request was made. And when
the request came back. X ray was going to
14551.939 -> work by collecting data from the applications
or services running in your system, and it
14552.939 -> will then aggregate or combine that data to
form traces of each system. Next, what'll
14553.939 -> happen is X ray will create a service map
or visual representation that can be used
14554.939 -> to trace or debug the debug or even troubleshoot
each service, users will be able to further
14555.939 -> drill down on each service to identify the
root cause of any issue facing their application.
14556.939 -> Some benefits of using x ray are for auditing
purposes, to trace requests made by your applications,
14557.939 -> to create a detailed service map of the applications
running in your system to help find bottlenecks,
14558.939 -> and your architectures to improve performance,
to help us identify the security posture by
14559.939 -> encrypting all traces and to identify all
traces. Okay, so now let's get into something
14560.939 -> funner. And yes, no fun is not a perfectly
good piece of grammar. So wake up everybody,
14561.939 -> we're gonna go talk about containers and container
orchestration. So before I know that you're
14562.939 -> awake, and just want to know you're awake,
give me a hashtag solution architect or a
14563.939 -> hashtag cloud architect. And then we're going
to talk about containers, which is one of
14564.939 -> my favorite things. Because virtual machines
and containers are the basis of all computing
14565.939 -> in today's world.
14566.939 -> And while we're waiting for that, to come
in, you know, Anakin, you know, question in
14567.939 -> there is quite real. All this machine learning
how fast has become soft Skynet and the Terminator
14568.939 -> movies? Well, it depends how fast these things
get used, whether they get used, whether they
14569.939 -> get checked, whether people get wild and crazy
away with them. But automation can be great.
14570.939 -> FET, me is Cloud Architect, good to see you.
Governor, I'm loving us I'm seeing and Solution
14571.939 -> Architect cloud architect, I knew you guys
are awake, alert and oriented. And I do like
14572.939 -> containers. And actually, before we get to
containers, I've got the perfect visual for
14573.939 -> a container. That's going to explain the concept.
And then after we deal with the visual for
14574.939 -> the container, we're going to start talking
about containers. But let me get my container
14575.939 -> visual real first, because I had a really
good container. Example before. So let's talk
14576.939 -> about containers. Before we get into containerization,
I'm going to just share my purpose perfect
14577.939 -> representation of a container. Okay, so here
we go. So before we get into containers, here's
14578.939 -> what a container is. Normally speaking with
a virtual machine, what are we going to have,
14579.939 -> we're going to have a server, it's gonna have
its own operating system, it's going to have
14580.939 -> the application dependencies on the application.
Here, before we get into containers, here
14581.939 -> do we have, we have an application, the application
is represented by the beautiful Cindy the
14582.939 -> cat, who's sitting inside. Now if you notice
the cat put herself in the basket. The basket
14583.939 -> is the container. So basically, we'll container
and we'll talk more about it, because we're
14584.939 -> going to steal parts of the operating system
or libraries from the operating system. And
14585.939 -> it's a fully contained application sitting
inside of a container. Now I can take that
14586.939 -> container from one Linux system, and pop it
on another Linux system by using the same
14587.939 -> Linux libraries. This is how I view a container.
Like Cindy demonstrates containers everywhere.
14588.939 -> And let's talk about containers. And everybody
give me a hashtag Cindy? Well, I started talking
14589.939 -> about containers because Cindy is the best
container teacher I've ever met in my entire
14590.939 -> life.
14591.939 -> So while we talk about containers, there's
going to be two or three ways we can orchestrate
14592.939 -> our containers. Now the first one I'm going
to give you is AWS proprietary, and you probably
14593.939 -> should never use it in reality, because if
you do, you're going to be in trouble when
14594.939 -> you have to use Azure and Google and Nutanix
and OpenStack. Now let's define a container.
14595.939 -> It's a newer, more modern, lightweight version
of a virtual machine. So in a virtual machine,
14596.939 -> we have the entire Our operating system. Every
time we've got a server I showed you on the
14597.939 -> first day, we have our hypervisors. And then
we have a virtual machine, each virtual machine
14598.939 -> has its operating system application dependency
number container is just like Cindy, beautiful
14599.939 -> little Cindy, they're sitting in the container
is just the application. That's all we're
14600.939 -> doing. So by using containers, they're faster,
they're lightweight, and we can use much less
14601.939 -> computing power. Now, when we deal with containers,
14602.939 -> something needs to orchestrate these containers.
And we need to separate them. So we'll talk
14603.939 -> about container orchestration in a minute.
But what are we really talking about? In this
14604.939 -> particular environment, we've got our physical
server, we've got our operating system.
14605.939 -> And then we've got a container on the operating
system, the container on the operating system,
14606.939 -> a container on the operating system, another
container on the operating system, and they're
14607.939 -> all isolated on the same operating system.
So let's talk about the strengths and weaknesses
14608.939 -> of this approach. The container one crashes,
it's completely isolated from container two.
14609.939 -> So container one crashes, guess what? We've
got no problem with containers, two, three,
14610.939 -> and four. Now, everybody in the chat box,
I want you to tell me this, because I mentioned
14611.939 -> to understand this. What do you think happens
if the host operating system crashes, to the
14612.939 -> 1000 containers that are sitting inside of
this system? Everybody tells me in the chatbox,
14613.939 -> what's going to happen if the operating system
crashes, and I've got all these containers
14614.939 -> in the system. I want to make sure you understand
this very critical concept. Good job, Alex.
14615.939 -> Boom, all containers are gone. Lady Godiva
you're gone. Abigail by Yes, all data lives
14616.939 -> are lost, everything is dead. That's the whole
point. So you know, containers already, every
14617.939 -> technology we use has its strengths and weakness.
Containers are beautiful, because they're
14618.939 -> lightweight. But if that host crashes, everything
else is dead. So kind of keep that in the
14619.939 -> back of your mind. It's good. It's good. We
love them. There's a strength and weakness
14620.939 -> to every approach. If a virtual machines operating
system crashes, guess what, we only lose that
14621.939 -> virtual machine in its application. If we
have 1000 containers on a big giant server,
14622.939 -> they're all gone. But containers still make
sense. In most cases, I'm going to tell you
14623.939 -> right now, when they do certification, they'll
tell you, you can just migrate a container
14624.939 -> everywhere. Well, if you develop the container
on a Macintosh, you can't put that container
14625.939 -> on a Linux machine. You also can't put it
on a Windows machine. If you have a Windows
14626.939 -> container, you can't put it on a Linux machine.
If you've got a Linux machine, you can put
14627.939 -> it on any Linux server, where you can actually
put it on a Windows system that's running
14628.939 -> the Windows subsystem for Linux, because the
windows subsystem for Linux isn't a bunch
14629.939 -> of kernel that's added to Windows to Windows.
So keep that in the back of your mind containers
14630.939 -> are portable. But containers borrow things
from the operating system. And therefore a
14631.939 -> Windows container must be deployed on a Windows
system, a Mac container or Mac OS container
14632.939 -> must be deployed on a Mac. And somewhere along
the line. We've got to we've got to orchestrate
14633.939 -> these containers. So if we're going to have
containers, something needs to determine whether
14634.939 -> the containers need to grow size or control
them. So let's talk about this where you're
14635.939 -> at. One way that you can manage them, which
I strongly don't recommend you ever use as
14636.939 -> the AWS elastic container service. And the
elastic container service is 100% proprietary
14637.939 -> AWS only fully managed container service.
They'll they'll tell you it's high availability,
14638.939 -> which they call 99.99% available. That means
that you'll have one hour during the year
14639.939 -> expected 15 minutes a year where your systems
won't work. That's best case scenario. Some
14640.939 -> of the cloud providers and crash. Now, Alaska
10 container service is going to be deployed
14641.939 -> in your VPC, which usually means since it's
in your VPC, you'll be able to use access
14642.939 -> control lists like knuckles and security groups
protect your systems. And Elastic Compute
14643.939 -> Cloud can work with fargate, or virtual machines,
and I'll explain to you what they are. So
14644.939 -> here's the way you would typically build your
containers. And this is the same with a Kubernetes
14645.939 -> environment, or this proprietary AWS EC elastic
container service ECS which locks you into
14646.939 -> AWS. If you use this elastic container service,
it's going to manage and orchestrate your
14647.939 -> containers. And you're gonna have to build
your containers. You're gonna have to put
14648.939 -> your containers in a virtual machine. You'll
manage your virtual machines, and then you'll
14649.939 -> manage your applications and then containers
and you're going to pay for your virtual machine.
14650.939 -> Now if You want to run this in a serverless
environment, which you could also do, you
14651.939 -> could run your Elastic Compute Cloud with
fargate. And what is fargate fargate is an
14652.939 -> AWS managed serverless environment that host
your platforms as your platform. Because it's
14653.939 -> serverless, it means you don't need to manage
your virtual machines. Now, potentially, when
14654.939 -> you go serverless, it can often be cheaper.
Because with a virtual machine, you may be
14655.939 -> buying more capacity than you need, where
when you go serverless, you're not so but
14656.939 -> also when you go serverless, you have much,
much, much, much less control over your systems
14657.939 -> and your performance and your security. And
you're now part of a shared service where
14658.939 -> if the shared service gets hacked, you get
hacked, for example, Microsoft was just hacked.
14659.939 -> And what was it 65,000 of their customers
information that was hacked, I mean, lots
14660.939 -> of information. Because then one of the server
less cloud managed things as the call gets
14661.939 -> hacked, you get hacked to, or at least it's
a possibility. But with server lists, you
14662.939 -> don't have to manage it, which can make it
simpler. So it's an architectural trade off,
14663.939 -> do I want more control don't go serverless,
do we want more performance don't go serverless?
14664.939 -> Do I want simplicity and elegance and lack
of control, less work to do? Go serverless.
14665.939 -> So fargate is kind of that kind of that environment
where it's serverless, container orchestration,
14666.939 -> or serverless container hosting. So instead,
if we wanted to use fargate, versus a virtual
14667.939 -> machine, we've got the same elastic container
service, which is proprietary, which means
14668.939 -> you probably shouldn't use it, managing your
virtual machines. And we'll build our containers
14669.939 -> to find the required compute capacity. And
it'll be managed in this serverless platform.
14670.939 -> So potentially cheaper, much more agile. Now
we can put our containers in a traditional
14671.939 -> virtual machine called an EC two instance
here can be the same thing. If we were on
14672.939 -> Azure, we can put them on Azure virtual machine
on Google, they can put on a Google Compute
14673.939 -> Engine, it's the same concept. And if we need
more control, obviously put it on a virtual
14674.939 -> machine. If you're looking for simplicity,
stick it in a serverless environment, you
14675.939 -> and your business can determine exactly what's
needed. Now, if elastic container service
14676.939 -> is this proprietary service that I strongly
don't recommend you ever use. What would I
14677.939 -> recommend you use Kubernetes, why Kubernetes
is an open standard. You can build your beautiful
14678.939 -> Kubernetes clusters with your own servers,
take one server in your data center, one server
14679.939 -> in Azure, one server and AWS one server in
Google, you can have your multi cloud container
14680.939 -> orchestration, single cloud goes down, who
cares, you're still up and running, and your
14681.939 -> three other clouds, multiple control, your
cloud provider raises your rates, guess what
14682.939 -> you can leave and go to another cloud, your
cloud provider kicks you out. And we've seen
14683.939 -> cloud providers kick businesses out of their
business nearly bankrupting them overnight.
14684.939 -> If you're using Kubernetes, no big deal, you
can pick up your containers and move it to
14685.939 -> any cloud at a moment's notice. Now, if you
didn't want to build and manage your own standards
14686.939 -> based Kubernetes cluster, but you still wanted
to use a standards based process. This is
14687.939 -> where the elastic Kubernetes services. So
it's a fully managed Kubernetes container
14688.939 -> management service, which means you don't
have to build your own cluster. Now, elastic
14689.939 -> Kubernetes service is now in a single column.
So if you use multi cloud in the single cloud
14690.939 -> goes down, well, you got nothing. But if you're
looking for simple and elegant in the AWS
14691.939 -> code, and you're looking for something that
can work that standards base for your future,
14692.939 -> you elastic Kubernetes service is still a
very, very good option. It's an open source.
14693.939 -> Kubernetes, as you know, is an open source
container management platform. It's the standard
14694.939 -> container orchestration platform in the entire
world. And elastic Kubernetes service is similar
14695.939 -> to the elastic compute service, which we just
talked container service, which we just talked
14696.939 -> about. But it's a standard. It's not proprietary
whenever you want innovation, never use proprietary
14697.939 -> because now you can migrate to different clouds
or anything. Now with elastic Kubernetes service,
14698.939 -> we can host our containers in two places.
They can post it on a beautiful virtual machine
14699.939 -> if we need extreme control. Or we can post
it on fargate. And there's nothing to worry
14700.939 -> about. Because it's giving us a premade platform.
So let's look a little bit about the elastic
14701.939 -> Kubernetes service. We create an E Class P
E ks cluster, elastic Kubernetes service cluster
14702.939 -> is cluster is our orchestration platform.
And from there we can stick with server lists,
14703.939 -> which is fargate or Amazon Usutu. Which means
virtual machines and all cloud providers have
14704.939 -> the same service. Of course you could build
your own Kubernetes thing. Now if you build
14705.939 -> your own Kubernetes Then what's the weakness?
Well, the weakness is this, you've got to
14706.939 -> manage the Kubernetes cluster, which means
you need to have someone smart enough to know
14707.939 -> what Kubernetes is, and how to manage it.
But when you do that, you get much, much,
14708.939 -> much more control over your environment. And
you can create a higher availability system
14709.939 -> by using an unmanaged Kubernetes cluster.
We've got your own servers and multiple clouds
14710.939 -> all at the same time.
14711.939 -> Now let's talk about another cool Kubernetes
thing, elastic Kubernetes service distro.
14712.939 -> And this is a service that's going to enable
users to run container applications, containers,
14713.939 -> applications and their data centers. What
is it is Kubernetes. Now this enables users
14714.939 -> to create a Kubernetes cluster with the exact
version of Kubernetes used in AWS eks. The
14715.939 -> main difference between Eks and Eks distro
is that Eks is fully managed on AWS, we're
14716.939 -> Eks distro is basically a download of the
AWS version of it. By using Eks destroy users
14717.939 -> can deploy clusters that in their data centers
that exactly match AWS Eks distro can be used
14718.939 -> for hybrid clusters if users want Kubernetes
clusters that span their data center in the
14719.939 -> cloud. For example, when you need to use the
cloud for extra capacity, you can use Eks
14720.939 -> distro Eks distro could also be used for disaster
recovery, you could set up AWS Eks to be the
14721.939 -> backup data center if your own data center
goes down. Of course, you don't have to use
14722.939 -> anything proprietary like this, you could
create your own Eks, or your own Kubernetes
14723.939 -> environment with your own servers and not
get locked into anything. You just have to
14724.939 -> know how to install Kubernetes and set it
up where Eks disrict gives you a very beautiful
14725.939 -> simple like click click button install. So
it's removing the need to actually understand
14726.939 -> what you're dealing with. Now let's talk about
elastic containers registry. You may have
14727.939 -> been familiar with the interface of say Docker
and Kubernetes. Where basically speaking,
14728.939 -> we had Kubernetes, managing the container
and Docker as a host as basically a container
14729.939 -> runtime module. Docker to some degree is being
phased out by Kubernetes. But let's talk about
14730.939 -> what this is. The elastic Kubernetes registry
is a product that stores and manages the police
14731.939 -> Docker images that our managed clusters of
easy two instances. The elastic Container
14732.939 -> Registry allows developers to save quick configurations
quickly and migrate them to a production environment
14733.939 -> which was going to reduce workload, overall
workload and time. The elastic Container Registry
14734.939 -> provides a command line interface and API's
to manage repositories and integrated services,
14735.939 -> such as the elastic container service that
manages the infrastructure ports containers.
14736.939 -> The elastic Container Registry is a secure,
scalable and reliable service that accesses
14737.939 -> and distributes your application images faster,
reduces downtime, and improves the availability
14738.939 -> of your container. When to use Eks, anywhere,
basically, you're using Eks, anywhere less
14739.939 -> your Kubernetes service anywhere because it's
going to simplify customers on premise Kubernetes
14740.939 -> deployment via management configuration about
auto scaling, that offers a consistent, reliable
14741.939 -> Kubernetes cluster environment with your on
premise. Better than self managed, I don't
14742.939 -> know that it's better than self managed, they
will tell you that it's better than self managed
14743.939 -> because they manage it for you. Personally,
when you self manage things, you can always
14744.939 -> do better. Again, it goes back to can you
cook a better steak than you can get at McDonald's.
14745.939 -> You know, mass volume can never be done as
nice as precision and one on one things. But
14746.939 -> precision one on one things take a lot of
time, effort and money. And when you use Eks
14747.939 -> anywhere, it's going to reduce your support
cost. Because it's going to it's going to
14748.939 -> help you reduce third party application tools.
It's open source. And it's going to make a
14749.939 -> lot easier when somebody else has done the
hard work group a little more about ek as
14750.939 -> anywhere, it's a customer managed service
that's going to allow customers to create
14751.939 -> and manage Kubernetes clusters with optional
support, just deployed as an installable package.
14752.939 -> That simplifies the creation. It's an automates
the management of these clusters. Okay, we're
14753.939 -> gonna get next into IoT services. I think
I talked about some AWS services. And I think
14754.939 -> I talked about some Kubernetes things and
container things. So now let's get into IoT
14755.939 -> services. Well, I've been working with IoT
stuff for 1520 years. Now, when I was at Cisco,
14756.939 -> we were starting to work with all these little
IoT enabled sensors that were going to be
14757.939 -> out there that were going to be weather sensors,
all kinds of pain sensors. Now IoT is everything
14758.939 -> from your refrigerator. Because it enabled
your cable box which is IP enabled. The little
14759.939 -> sensors, we can watch the beach and see what
the beach things are for things like that.
14760.939 -> So AWS accordingly has a bunch of IoT services.
So let's begin with AWS IoT Core, which is
14761.939 -> a cloud service that acts as a communication
gateway, Message Broker and device application
14762.939 -> interface for internet connected IoT devices
is the foundation for Amazon's solution offerings
14763.939 -> that come to deploying, managing and as analyzing
and maintaining an Internet of Things infrastructure
14764.939 -> architecture. As we discussed IoT Core is
going to provide a scalable and fully managed
14765.939 -> solution that's gonna supply and secure connectivity
from devices, rule based IoT traffic manipulation,
14766.939 -> Command Control, really, what it's doing is
it's going to enable your back end fleet of
14767.939 -> cloud services. It can reduce the operational
burden for your IoT devices by providing a
14768.939 -> platform that supports the communication and
management. This service facilitates the communication
14769.939 -> from device to cloud services, applications
and other devices. What's going on is it as
14770.939 -> a built in authentication and authorization
RESTful API, which is basically a programming
14771.939 -> interface for command and control capability.
Multiple IoT communications protocols are
14772.939 -> going to be supported because these things
use lots of communication protocols. And you
14773.939 -> can create an access list to determine who
cannot who or what can access the systems.
14774.939 -> And it's going to provide a registry to store
the data a
14775.939 -> little more on IoT Core, the service is going
to be beneficial to a situation where there's
14776.939 -> a need to connect a fleet of IoT devices,
think weather sensors, or airplanes that are
14777.939 -> constantly transmitting their information.
The back end cloud services. This kind of
14778.939 -> access can give users the ability to process
analyze, and make actionable decisions from
14779.939 -> the IoT data quickly within a millisecond
timeframe. Now this service can be handled
14780.939 -> by device fleet ranging from a single device
to billions or trillions of devices. When
14781.939 -> we're dealing with these kind of IoT devices.
We're dealing with stuff coming from everywhere.
14782.939 -> Let's look graphically what some of these
pieces work like together. We've got an IoT
14783.939 -> device over here on the left, we've got some
restful API's that are sitting up top, we've
14784.939 -> got some internet connected devices, and they're
all going to be talking to each other through
14785.939 -> the IoT Core environment.
14786.939 -> Let's talk about device management. IoT device
management is a device inventory and management
14787.939 -> service for an internet of things connected
devices. Organizations using the AWS Internet
14788.939 -> of Things device management service can easily
register device information, configurations
14789.939 -> and organize and inventory their devices,
monitor them and remotely update their server
14790.939 -> software and firmware on IoT device management
helps to track monitor and manage an entire
14791.939 -> connected fleet. And by doing so it can ensure
that all IoT devices work properly and securely
14792.939 -> after they've been deployed. Device Manager
provides the ability to access securely and
14793.939 -> get information about Device Health defects.
By getting this you can remotely troubleshoot
14794.939 -> product problems while you're managing software.
I'll talk about opportunities to use IoT device
14795.939 -> management, remote fleet monitoring, let's
say you want to monitor your equipments, metadata,
14796.939 -> and set a policy to change like a service
alert. So you can see what's going on. You
14797.939 -> want to perform bulk updates or control the
deployment velocity, do some over the air
14798.939 -> updates like firmware and bug fixes. You want
to define steady jobs for automatic updates.
14799.939 -> Let's see you want to create logical groupings
of devices for say sensors in a specific area
14800.939 -> to organize and target a fleet of remote actions
with a few clicks. Now let's talk about IoT
14801.939 -> events. Now, this is going to be a cloud service
that continually monitors data and applications
14802.939 -> and equipment for any changes in Dell daily
operations. If an event is going to occur,
14803.939 -> it's going to trigger a response. IoT events
run in the serverless environment. So there's
14804.939 -> no host, IoT events monitor ongoing data for
IoT device sensors, and applications to integrate
14805.939 -> with other services like IoT Core, and AWS
IoT analytics for early detection. This will
14806.939 -> help you gain insight and take action against
your data. This service will help manage the
14807.939 -> state of your devices. A little more on IoT
device events that's going to monitor equipment
14808.939 -> for failures and operations. And if you've
got a device that fails to continue or an
14809.939 -> event you know what to do about it. Users
will be better to take input from multiple
14810.939 -> sources and will be able to move device from
using I like IoT Core and collect analytics
14811.939 -> from IoT analytics So gives you kind of things
that are going on. Analytics can take the
14812.939 -> input and run that data on the edge of your
systems. Users can also route sensor data
14813.939 -> IoT events. So realistically, IoT events are
consistent with processing messages in a consistent
14814.939 -> with real time reporting. actions take place
in real time, and IoT events simultaneously
14815.939 -> monitor multiple applications and sensors
to detect critical events. IoT events also
14816.939 -> makes it easier to deploy, detect and respond
to events that happen across multiple devices,
14817.939 -> equipment, systems and applications. IoT events
will assess the behavior and performance of
14818.939 -> the devices and identify issues based upon
what when industry is being used. IoT can
14819.939 -> help an enterprise therefore understand the
conditions of their equipment, it takes more
14820.939 -> than a single sensor to get this kind of information.
Obviously, IoT events can learn new insights
14821.939 -> that will help you automate your operations
faster. And by automating things you can reduce
14822.939 -> costs, potentially reducing costs and making
better decisions faster can increase revenue,
14823.939 -> and decrease expenses, which can enhance profitability.
IoT events can help identify root cause analysis
14824.939 -> with device sensors and applications. And
IoT events will enable organizations to really
14825.939 -> focus on their business operations, and less
about the IoT, because it's a matter of service.
14826.939 -> Let's talk about the IoT of things graph.
AWS IoT things graph as a service that's to
14827.939 -> enable non developers to visually create workflows
between physical sensors, physical assets,
14828.939 -> assets, and web services. By doing so we can
basically build a network across physical
14829.939 -> and virtual things. With IoT great things
graph, we can quickly build IoT applications
14830.939 -> by connecting devices and web services from
different vendors. And of course, when you're
14831.939 -> dealing with IoT devices from different vendors,
they're going to speak different protocols
14832.939 -> and IoT things graph can help do that. Basically,
I've seen graphs gives you a visual editor
14833.939 -> that we can use to wire things together, such
as web series and a workflow, web series and
14834.939 -> web services in a step called the flow. I
like to call things workflow. And because
14835.939 -> it's basically a hosted environment, you're
going to pay for what you use, as opposed
14836.939 -> to just paying down the system, like if you
built it yourself. Now let's talk about a
14837.939 -> Iot IoT analytics. This is stored data. But
why are we using it? We're using a IoT analytics.
14838.939 -> Because it's a fully managed service that
enables users to collect, manage and ingest
14839.939 -> data from millions of sources. It's going
to provide us a solution for collecting, processing
14840.939 -> and analyzing data in real time. Anytime we
can analyze data in real time, we can make
14841.939 -> better business decisions, which means potentially
greater profitability. IoT analysis can help
14842.939 -> enterprises and device manufacturers quickly
and easily gain insights into their data by
14843.939 -> collecting filtering, and transforming things.
So let's talk a little bit more about AWS
14844.939 -> IoT analytics. The benefits of why we might
use something like this, it's going to help
14845.939 -> by storing data in an optimized manner. So
we get faster response times, it can prepare
14846.939 -> data to be easily processed and analyzed,
it can be managed as a pay as you go service,
14847.939 -> which some people like because that way, they
don't have to buy anything ahead of time.
14848.939 -> It's going to be it's going to help the organization
build applications that monitor in real time,
14849.939 -> it's going to be able to help monitor the
efficiency of different processes for improvement.
14850.939 -> Okay, now, we're gonna get into cost management,
at least as it's taught in the context of
14851.939 -> an AWS certification, versus cost management
in the context of reality. Because this is
14852.939 -> what you need to know, for your exams, in
real life, we would obviously teach you how
14853.939 -> to do this in our architecture program, if
this is a certification course. So we must
14854.939 -> do it the AWS way. When it comes to managing
costs, we must understand that moving to the
14855.939 -> cloud can have a profound impact on a customer's
costs. In many scenarios, going to the cloud
14856.939 -> will be cheaper. In some scenarios going to
the cloud can be far more expensive. So what's
14857.939 -> going to determine that how the user, the
systems, they have the capability of their
14858.939 -> systems, the performance of their system,
the engineers, they have the architects, they
14859.939 -> have the technology, people that have them
where those employees actually are. In most
14860.939 -> cases, most moving to the cloud is generally
cheaper, but not always. And that's where
14861.939 -> you're seeing a lot of work in it. Session
is the first one all to the cloud. And now
14862.939 -> they're pulling half of that stuff on the
cloud, putting it back in their data center,
14863.939 -> and they're still using the cloud. But they're
building their own clouds, and they're creating
14864.939 -> multi cloud solutions. I want you to understand
the difference between the two. There is definitely
14865.939 -> a capital structure, change, maybe here's
the capital structures. And when you have
14866.939 -> a data center, you have predominantly capex,
capital expenses, something I buy, a car is
14867.939 -> something I buy. I buy it once, and I can
keep it for years, 10 years, 20 years, depending
14868.939 -> upon how good the car is, and how well it's
maintained, right. that'll determine how long
14869.939 -> I can keep my car. Now, when you rent a car,
if you were to go to the rental agency every
14870.939 -> day, it might be cheaper, it might be more
expensive to rent the car, because the cloud
14871.939 -> is just renting. Now what will determine if
it's cheaper for you to buy the car and maintain
14872.939 -> it yourself? Or rent the car? How much do
you drive the car, for example? What kind
14873.939 -> of car is it? What the rental agencies change
versus what you cost to buy it, the kind of
14874.939 -> deal you get when you buy it. So these things
are not simple. But you need to understand,
14875.939 -> what we're talking about is a shift from a
capital expense to an operational expense.
14876.939 -> And many people think this is a good thing
it could be it could be a disaster. So for
14877.939 -> example, in our case, it was $10,000 to buy
our stuff that the cloud providers were looking
14878.939 -> for around $11,000 pre discount for us to
do. Now, I just broke, wrote a check and paid
14879.939 -> for the $10,000 A servers, it was no big deal.
But businesses don't write checks, they finance
14880.939 -> things. So when you're building a business
case, as an architect, which is something
14881.939 -> I can't teach here, you have to teach it in
our architect program, you're gonna have to
14882.939 -> look at the organization's weighted average
cost of capital, and what it costs to finance
14883.939 -> it versus what it costs to use the cloud,
which is effectively the leasing. So this
14884.939 -> is going to be that lease versus buy decision.
And let's talk about why the data centers
14885.939 -> are so capital intensive, well, there's a
lot of stuff to buy a lot of it. So first,
14886.939 -> with a data center, you gotta buy the real
estate, right. So now you got to buy a big
14887.939 -> building. Now, the buildings aren't designed
immediately to be datacenter. You're gonna
14888.939 -> have to buy your servers, you're gonna have
to buy your routers, you're gonna buy your
14889.939 -> switches, you're gonna buy your firewalls,
you're gonna buy your load balancers, your
14890.939 -> racks, your power environment. And look, data
centers don't have power failures, because
14891.939 -> you're going to be bringing in multiple power
transformers, ideally, to power companies.
14892.939 -> We're going to be having generators, we're
going to be having backup generators, our
14893.939 -> UPS systems and battery backup, we're going
to be dealing with data center cooling equipment,
14894.939 -> and it's a lot of things. Simply go to the
car, but not to buy any of that stuff. Because
14895.939 -> we pay far more for each service going off
the vibe. None of the data center, we have
14896.939 -> a big staff, you need a bunch of expensive
Cisco Certified internet experts like me to
14897.939 -> make sure the network actually works. You
need a lot of people to manage the physical
14898.939 -> servers themselves. Lots of people do parts
replacements with thing happens you don't
14899.939 -> deal with us. Definitely, there's no parts
replacement in the cloud. Somebody does it
14900.939 -> for you. Now on your data center, trust me
these things generate some sky high scary
14901.939 -> electricals things that you can't even imagine.
And then of course, we've got to buy our wide
14902.939 -> area network connections. I've worked with
customers who have spent hundreds of millions
14903.939 -> of dollars a year just for their network,
going from point A to point. Now in the data
14904.939 -> center, the majority of our costs are equipment.
That's where the capital expense, we still
14905.939 -> have operational expenses related to running
this stuff on our people. But the primary
14906.939 -> cost of the data center is capital cost purchases.
And when we go to cloud, the cloud, there's
14907.939 -> nothing to purchase. But we pay far, far,
far more for the use of everything we use.
14908.939 -> And on the cloud, we pay for everything. Like
in the data center, you don't pay for data
14909.939 -> transfer charges in your wide area network
in the US, you got a 10 gig link, you don't
14910.939 -> have to pay to use it on the cloud, you get
a 10 gig link, you have to pay for the link,
14911.939 -> you have to pay a daily fee for the link and
then they charge you to use the link that
14912.939 -> you just paid for. So you know the costs are
different. So it requires somebody with real
14913.939 -> business acumen to make a decision whether
the club makes sense or not makes sense, or
14914.939 -> whether part of the cloud part of the data
center. But for the purpose of your exam in
14915.939 -> the cloud, there's minimal equipment to purchase.
Which means there's low capital expenses because
14916.939 -> there's nothing to purchase, or almost nothing
the purpose, but remember, the ongoing costs
14917.939 -> on the cloud are sky high. So for most organizations
done properly and architected properly, which
14918.939 -> we're going to tell you I'd say two thirds
get wrong. The club will have a lower total
14919.939 -> Cost of Ownership because even if you're paying
so much more for the tech, you're paying so
14920.939 -> much less to operate it, how's it maintain
it? Now when it comes to managing costs, here's
14921.939 -> the thing, provision only what you need. See,
here's where we can gain some benefits on
14922.939 -> some applications in the cloud. And the data
center, we must provision for the worst case
14923.939 -> scenario. In the cloud, we can purchase on
average use, can use autoscaler. So that auto
14924.939 -> scaling thing and the agility of the cloud,
being able to take a virtual machine and created
14925.939 -> in six seconds, as opposed to calling Dell,
and ordering a new server, that agility is
14926.939 -> built as pure transformation for business.
Step to properly size your resources. So use
14927.939 -> whatever the minimum amount that you need
is, and then use auto scaling to scale out
14928.939 -> as needed. Don't over provision the house
can you further reduce your costs, decouple
14929.939 -> them whenever possible, decouple your systems.
So we showed you how using an SQS queue, or
14930.939 -> an Apache Kafka queue can reduce the need
for bigger databases by smoothing out things
14931.939 -> that are going on. We show Joe how using caching
can reduce the load on your servers, and you
14932.939 -> need less than them. So by decoupling things
in your architecture, you can put them together
14933.939 -> into an environment that can totally reduce
your costs. Many of the times step three,
14934.939 -> use the right platform. What I mean by this
is, you know, when we looked at our 10 cloud
14935.939 -> server, and we paid 10 grand for the servers
versus 11 grand a month, that was on demand.
14936.939 -> Now, we could have reserved them, and committed
to buying them three years in advance. And
14937.939 -> instead of paying $360,000, or four, or like
$380,000, for our systems, instead of the
14938.939 -> 10,000, that we paid to do it ourselves, potentially
speaking, we could have got a 40% discount,
14939.939 -> knocking it down to make 200,000. Now we have
to understand that just because I built the
14940.939 -> club for 10 grand, and it would have been
several 100,000 on the cloud doesn't necessarily
14941.939 -> mean my 10 grand was cheaper, because why
was the cheaper, because I have the firewalls
14942.939 -> here, I have the networking gear here, and
are willing to hire anybody to do it, because
14943.939 -> I did it in a couple of hours. And I thought
it was cool and fun. But if it was a production
14944.939 -> environment, you know, we'd have to hire the
people, and then it might be cheaper to the
14945.939 -> cloud. So these analyses are based upon the
people you have the technology you have what
14946.939 -> you need, what you don't need, what's modern
was not. So how do you structure your costs?
14947.939 -> Well, if you know your system, use, reserve
it and get a big discount. If you don't know
14948.939 -> your systems use on demand capacity. And as
soon as you figure it out, go reserve it.
14949.939 -> Now basically, you can reserve all your stuff
based upon what your needs are use on demand
14950.939 -> disco as needed. Let's talk about the Spot
Instances that we talked about the first day
14951.939 -> when we talked about computing. Spot Instances
are the kinds of things that you use to bid
14952.939 -> on unused capacity. So let's think about bidding
on unused capacity. You can get a very cheap
14953.939 -> rate for batch computing, by using Spot Instances,
but Spot Instances can get shut down. So the
14954.939 -> key is when it really comes to cost optimization
on your compute environment, it's going to
14955.939 -> be a combination of on demand reserved and
Spot Instances.
14956.939 -> How else can we manage costs? Well, it's often
cheaper to use a managed service or serverless.
14957.939 -> Because of the server, we probably have to
over provision. But once you go into manage
14958.939 -> servers and server lists, because what you
lose negotiation and bargaining power, and
14959.939 -> here's why your cloud provider knows it's
gonna be really hard for you to leave. And
14960.939 -> it may have costed you millions and millions
and millions of dollars to restructure your
14961.939 -> applications to go serverless. And now you're
trapped, you're locked it. So not in service
14962.939 -> and serverless can be good, it can be not
good. It depends on how you use the amount
14963.939 -> of servers and how you the server lists are
using industry standards, which can get you
14964.939 -> to go to multiple places. Now step five is
let's look at your data transfer costs. If
14965.939 -> you build your own wide area network, you
basically buy for the links, but you don't
14966.939 -> pay to use them. Now we're on the cloud, they
charge you to actually send data over your
14967.939 -> own length or over the cloud. So how do we
minimize the amount of data we're sending
14968.939 -> off the cloud provider? Well, if we've got
an s3 bucket or an object storage bucket into
14969.939 -> regions, maybe we just replicate the data.
So we're not traversing the entire when maybe
14970.939 -> we use CloudFront. So the web requests don't
go across the quality of time or another content
14971.939 -> delivery network, like Akamai. And then maybe
we look at what is our connection to the cloud.
14972.939 -> If we have limited data center, the cloud
is cheaper Do you over a VPN. But if you've
14973.939 -> got a lot of data in the cloud, it might be
cheaper to have a direct connection. Because
14974.939 -> remember, in a normal environment, you pay
for the link and not to use the link. And
14975.939 -> the cloud environment, you pay for the link,
the daily fee to have the link, and then you
14976.939 -> pay to use the link. And in many cases, it's
more expensive to use a VPN than a direct
14977.939 -> connection, you've got a lot of data. So the
next thing you can do is you can set up a
14978.939 -> budget. And a budget can help by basically
alerting you when you're spending too much
14979.939 -> money. So you can create a budget that says,
hey, when I spent over $20 million, send me
14980.939 -> a message $20 million for an organization's
causes have been nothing. But I recommend
14981.939 -> you set up a budget, when you're doing labs,
set the budget for $25. And when you hit $20,
14982.939 -> it's gonna send you an alert for $25, you
hit this alert, you hit this alert, or 50%
14983.939 -> along the way. And that way, it's going to
alert you if you've done a lab and forgot
14984.939 -> to set up a virtual machine. So you don't
get one of those multi $1,000 bills at the
14985.939 -> end of the month that people do when they're
training for certifications, because they
14986.939 -> forgot to set up a virtual machine to create
an budget and send an alert business can do
14987.939 -> this, and they're gonna find out hey, spending
lots of money here do something else.
14988.939 -> How's the budget work? Well. Basically, create
your budget, filter, whatever you want, and
14989.939 -> get your notifications. Now, let's talk about
trusted advisor. Trusted Advisor is a tool
14990.939 -> made by AWS to help you save money.
14991.939 -> It's a tool made by the cloud provider to
help you save money, which means pay them
14992.939 -> less. Is it in anybody's interest to sell
you less stuff? No, it's kind of like when
14993.939 -> a drug company sponsors a study. Again, it's
it's it's not objective. But it's in there.
14994.939 -> So trusted advisors and AWS tool designed
to help you make better decisions on how you
14995.939 -> spend stuff in the cloud. So it's a service
and what's going to happen is the trusted
14996.939 -> advisor service is going to look at your infrastructure.
It's going to then compare your infrastructure
14997.939 -> to what it thinks is right, based upon AWS
best practices. And then it'll give you advice.
14998.939 -> Now, the good news, it can give you advice
that you did stuff wrong. from a budget perspective.
14999.939 -> It could also maybe tell you that you made
some risks, things and things that you should
15000.939 -> fix this so it's good to use a tool. The tool
provides information but the point is the
15001.939 -> tool is not the be all or end all. When you're
using the trusted advisor. There's basically
15002.939 -> two versions. There's the kind of comes with
the the basic and developer support plans,
15003.939 -> where customers are going to get access to
six security checks and 50 service limit trucks,
15004.939 -> or customers that are on business support
plans or AWS enterprise support plans are
15005.939 -> gonna get 115 trusted advisor checks, of which
four are related to 14 are related to cost
15006.939 -> optimization. 17 are related to security.
24 are related to fault tolerance. 10 are
15007.939 -> related to performance and 50 are related
to service limits. Here's another tool that
15008.939 -> the cloud provider is trying to use to help
you save money which means spend less on them,
15009.939 -> which is damaging to their business. So take
it for what it's worth. Compute optimizer
15010.939 -> is a free management tool that recommends
AWS resources to increase the efficiency and
15011.939 -> reduce your user costs. Compute optimizer
reviews previous resources activity to use
15012.939 -> to distinguish between your platforms. Like
where your data is stored. For example, compute
15013.939 -> optimizer will compare your user activities
levels to similar users or similar activities
15014.939 -> and make you give some recommendations. And
compute optimizer will take on comparison
15015.939 -> and prevent graphical data. And it's going
to explain its recommendations what it thinks
15016.939 -> you should do to optimize performance or just
customers but as a tech devices giving you
15017.939 -> information. Now with Compute optimizer clients
are given the opportunity to use the look
15018.939 -> back option to route three months of long
term data history and make recommendations
15019.939 -> based on that. The service will enable users
to utilize resources that theoretically reduce
15020.939 -> cost and improve performance. When users enable
these suggestions, AWS will configure the
15021.939 -> resources deliver optimal performance based
upon business needs. Talk about service quotas.
15022.939 -> Service quotas are going to give the ability
to view log and set limits on several services
15023.939 -> that integrate with the AWS back dashboard.
Service quotas will help users scale various
15024.939 -> workloads. As workloads increase, users can
adjust service quotas, or service quota values
15025.939 -> and monitor them by setting up alerts. And
these alerts will inform users and pin pending
15026.939 -> limits. This will help keep users from from
having unintentional spending that's going
15027.939 -> to negatively impact the company's overhead
service quotas is a is a good resource because
15028.939 -> I'm looking at your logs and it's going to
determine if there's a need are a place where
15029.939 -> you can save in a certain area. Theoretically,
this can help control costs. Another tool,
15030.939 -> a well architected tool, which is a free cloud
service, that's going to give you a general
15031.939 -> guidelines of those practices, it's going
to theoretically help plan to create better
15032.939 -> workloads. Here's the thing with a well architected
tool that's going to recommend AWS services.
15033.939 -> And there may be many good reasons to not
use them. Such as you need good security way
15034.939 -> above, when you can find like next generation
firewalls, you're going to need a more robust
15035.939 -> and more robust applications that are known
that are provided by AWS, you're gonna need
15036.939 -> a more robust content delivery network. Look,
right now, AWS isn't even using CloudFront
15037.939 -> they're using aka my right now. And that's
part of what goes into a well architected
15038.939 -> system, putting in the best tools, from the
best resources, deliver the business business
15039.939 -> outcomes, you know, we have to be careful
where we're getting this information. And
15040.939 -> a service like this is not necessarily going
to give us exactly what we need to. Now here,
15041.939 -> you can see now Amazon is using another content
delivery network, now they're using fastly.
15042.939 -> And that's the point is, you know, when it
comes to high availability, no comes to good
15043.939 -> architecture, everybody should ever use a
single point, or single cloud, it's a single
15044.939 -> point of failure, nobody should ever use a
single content delivery network as a single
15045.939 -> point of failure. Amazon doesn't use a single
content delivery network, we've gone through
15046.939 -> two content delivery networks in two days.
15047.939 -> Now we're gonna get into building high availability
architectures, at least what we're supposed
15048.939 -> to cover for the certification. So before
we come back, if you give me a hashtag, AWS
15049.939 -> Certified Solution Architect Associate.
15050.939 -> So now we're gonna getting into the part of
this program, which I hate teaching, because
15051.939 -> it gives me cognitive dissonance, because
I'm going to tell you what you need to know
15052.939 -> to pass the exam, and it's completely inaccurate.
So I'm going to tell you the accurate thing
15053.939 -> first, when it comes to building a high availability
system, never use a single cloud. I'm gonna
15054.939 -> say it again, if it comes to high availability,
never use a single cloud. When it comes to
15055.939 -> high availability never use a single cloud
because the single cloud is a single point
15056.939 -> of failure. If a cloud no matter how many
availability zones and region you use, gets
15057.939 -> hacked, you're down. If there's a major network,
Miss configuration, there's down your dump
15058.939 -> the whole cloud. If there's a network outage,
they're down. If the control plane goes down
15059.939 -> and gets hacked, they are down. So single
cloud is a single point of failure. Every
15060.939 -> cloud provider has an outage just in the last
few years, none of them have gotten the four
15061.939 -> nines availability. And I want you to think
about this. If you your mother, your sister,
15062.939 -> your brother was in a hospital on life support.
And AWS, or Azure, or Google was the only
15063.939 -> cloud and they had a cloud outage, and cloud
outages happen all the time. And your systems
15064.939 -> that were keeping your parents alive went
down, your parents would die. Would you ever
15065.939 -> want that? No. If you had a bank, by the way,
were billions of dollars or trades were going
15066.939 -> on and they were down the bank could literally
go bankrupt with your money. Would you want
15067.939 -> that? No. So a single cloud is a single point
of failure. So when I go to talk about this,
15068.939 -> what I'm telling you is the stuff that the
cloud providers are telling you as far as
15069.939 -> the exam, but likewise, you know, Amazon right
now is use two different content delivery
15070.939 -> networks and less two days from the times
we did an NS lookup. And I'm sure they use
15071.939 -> more than that. So keep that in the back of
your mind. What I'm going to tell you now
15072.939 -> is passing the exam only. So when you're designing
for availability, understanding that the higher
15073.939 -> availability systems you get, the more costly
it's going to go. And we typically talk about
15074.939 -> availability in terms of nines. 99 is two
nines available and 99.9 is three nines available
15075.939 -> and 99.99. Just four nines availability. AWS
calls that high availability 99.999% availability
15076.939 -> is what I've worked on for the last 20 years.
These are critical performance systems, banks,
15077.939 -> hospitals, internet service writers, they
all need to be at 99.999. As does any business.
15078.939 -> Imagine how much it will cost Amazon. If you
went to Amazon to go buy something, and it
15079.939 -> was unavailable. It'd be a disaster right?
Now, if Netflix goes down for 30 minutes,
15080.939 -> who's care who cares? But if you try to buy
stuff on Amazon, and they can't sell you for
15081.939 -> two hours, imagine what it would cost. So
most organizations would consider 99.99% available
15082.939 -> high availability. real critical availability
systems like a bank of service provider health
15083.939 -> care we consider 99.999% Now when you build
the highest Oh buddy system, you have to think
15084.939 -> about everything, the networking connections
to the cloud provider. Because if you can't
15085.939 -> reach the cloud, guess what, you got nothing.
So my grandmother would call book guests and
15086.939 -> my other grandmother would call Deepa or the
pata. It was just nothing. So you means if
15087.939 -> you're going to have to direct connections
to the to your cloud provider, your two direct
15088.939 -> connections, comm should be on two different
routers. And each router should have three
15089.939 -> different power supplies. Each power supply
plugged into a different outlet why, because
15090.939 -> of the power failures and the rocker the outlet,
you don't want your LAN connections to go
15091.939 -> down. And other routers connecting to the
cloud should have two brains in them and multiple
15092.939 -> cards where your wires are installed. And
that way, you have no single points of failure.
15093.939 -> Now when you build a high availability system,
you can feel comfortable with the cloud because
15094.939 -> they maintain redundant power. Well, AWS has
had to power outages, which took down half
15095.939 -> of their system in the last year. But the
reality is, is data centers and you assume
15096.939 -> a cloud provider has has redundant power in
their data center, so they won't come up with
15097.939 -> outages, which means they have redundant power.
They have redundant generators coming in redundant
15098.939 -> power companies coming in. So if they came
down to a power outage, you can think about
15099.939 -> what that possibly could have been. Now a
good cloud provider like AWS is going to have
15100.939 -> redundant cooling why, if an air conditioner
goes down, or two air conditioners go down,
15101.939 -> their systems will cook and you'll have no
clouds, we have to assume they have redundant
15102.939 -> cooling. We know AWS has multiple redundant
connections to the internet. And their backbone
15103.939 -> is highly redundant. Their routers and switches
are highly redundant. And for people like
15104.939 -> me building these environments, that's what
I did in my sleep. I've been doing it for
15105.939 -> 25 years. But many organizations don't know
how to do this. So for organizations without
15106.939 -> a bunch of network experts, it's often higher
availability for them to go to the cloud provider
15107.939 -> than doing it themselves, because they don't
have the sophistication to do it. But for
15108.939 -> organizations that need it, they can hire
people like me that have been network architects
15109.939 -> and high availability architects for decades.
So when you build a high availability system,
15110.939 -> don't use a single cloud. But if you do, it
leaves us to two availability zones, which
15111.939 -> is two different data centers, theoretically,
according to that the cloud providers can
15112.939 -> get you to 99.99%. I don't think any cloud
providers delivered 99.99% In the last two
15113.939 -> years. So but theoretically, they can do that.
If you need better than that, use multiple
15114.939 -> availability zones, which has data centers
and multiple regions. But if you're going
15115.939 -> to put your stuff in two different regions
in two different data centers, just use two
15116.939 -> clouds, two data centers and two clouds, a
much higher availability solutions. So anything
15117.939 -> that needs high availability, like your servers
should be put in multiple data centers, your
15118.939 -> databases should be in data centers, your
load balancers should be in data centers.
15119.939 -> And of course, you know, DNS or route 53 is
a is a single point of failure and a single
15120.939 -> cloud. Ideally, architect surrounded by using
a real DNS service to comment you would get
15121.939 -> from a fly from the marketplace, and have
your DNS servers in multiple multiple places.
15122.939 -> Building a high availability network, make
sure there's redundant connections, which
15123.939 -> means a direct connection of backup, direct
connection of VPN backup, minimum or direct
15124.939 -> connection in the backup different action.
Now, if you're gonna have to win connections,
15125.939 -> it makes us very clear. If you have two connections
to AWS, this connection, some of this connections
15126.939 -> and at&t and this connections on it into you
just architected a single point of failure,
15127.939 -> because if you get a cable cut goes down on
AT and T you still got the other link. But
15128.939 -> if AT and T goes down, you got nothing. So
for the last 20, some years organizations
15129.939 -> building high availability systems always
use two links from two providers AT and T
15130.939 -> and Verizon, Verizon and NTT. So when it comes
to when building, you always use two connections,
15131.939 -> so each connection to the cloud should be
through different people. So if you had an
15132.939 -> at&t Private line, and an AT and T Internet
connection VPN, you just architected a single
15133.939 -> point of failure, should at&t have a global
audit, because you don't have any connectivity
15134.939 -> to the cloud and all your systems are dumb.
So multiple connections. So if you're gonna
15135.939 -> have direct connections, chances are you might
want redundant ones. And that means you need
15136.939 -> to go to ring different direct connection
location data centers, because for example,
15137.939 -> if you had your direct connection, it was
going to a single direct connection data center.
15138.939 -> Guess what is that their connection data center
goes down, you lost your connections, you
15139.939 -> always want to go to multiple connections,
multiple places. Now let's talk about security.
15140.939 -> If your systems get hacked, they're not available.
So use the principle of least privileges and
15141.939 -> I am disable all unnecessary services and
your systems, regularly Patra systems Micro
15142.939 -> segment your system into multiple V PCs. Use
things like organizations to relax reduced
15143.939 -> blast radius. Keep unwanted traffic out of
your systems with access controls and security
15144.939 -> groups. Make sure you've got good security.
So use a next generation firewall, for example,
15145.939 -> over WAF. Use some sort of a DDoS protection
like shield. Shield is strong physical security.
15146.939 -> If you've got a router over here and the router
is connected to the cloud, and somebody can
15147.939 -> plug into the router, they can just plug an
Ethernet cable into the router, guess what
15148.939 -> they got into the cloud, like nothing. So
make sure the systems are locked up, makes
15149.939 -> it a strong security around the wiring closet
or data center. You need to use passwords,
15150.939 -> use strong passwords and template known good
configurations for your team that are going
15151.939 -> to be deploying it in TerraForm. So they can
redeploy things that you know to be good fast.
15152.939 -> Make sure that your systems are backed up
constantly. Backups should be stored in one
15153.939 -> location. If you're an AWS and you backup,
your AWS, your data to AWS and AWS goes down,
15154.939 -> you're in trouble backup to another cloud,
for example. Take your virtual machines, your
15155.939 -> service current machine and images of them
so you can watch them somewhere else if you
15156.939 -> ever needed to. Now how do you build some
availability and performance will build some
15157.939 -> use auto scaling why you're under a DDoS attack
and all of a sudden, you get a multiple requests
15158.939 -> more than you can handle your systems will
add capacity on demand. decouple your application
15159.939 -> architecture components. If your database
fails, when you've got a queue in front of
15160.939 -> the database, the queue can store your messages.
Use caching what happens if my website to
15161.939 -> www dot coklat careers.com goes down. But
But I had everything cached on a content delivery
15162.939 -> network, you might be able to get to my website
and see it while my web server is down because
15163.939 -> it's stored on the cache. Use DNS with health
checks for load balancing. Use load balancers
15164.939 -> to increase performance and reduce single
points of failure by sharing the load against
15165.939 -> 10s Medium servers as opposed to one gigantic
server. constantly monitoring your system
15166.939 -> so you can figure out what's going on. Look
at the logs, look at the auditing events,
15167.939 -> monitor for security events and monitor your
IDs IPS system for security breaches. Monitor
15168.939 -> the usage of your system, and monitor for
performance. And lastly, change management
15169.939 -> and a real high availability system. Here's
what it's like. Alonza says Mike, I want to
15170.939 -> change the configuration. And I who sends
a message to me, who sends it to Chris, who
15171.939 -> sends it to Leo, who sends it to chow, who
sends it to Manuela who sends it to Eddie,
15172.939 -> who sends it to Anslem. And part of the change
management request is, hey, if I change this
15173.939 -> thing at three o'clock in the morning, will
this affect your system. And we can all analyze
15174.939 -> the change to see if it's going to cause a
problem. And if we all say go ahead and do
15175.939 -> it. Then after Alonso makes that change, he
needs to check in with all of us. And we need
15176.939 -> to retest our systems to make sure he didn't
break anything. And if he did, we need to
15177.939 -> fix it. And that's why all these things are
done, typically speaking in the middle of
15178.939 -> night. That's why I have lots of sympathy
for engineers, because engineers are doing
15179.939 -> work in the middle of night architecture,
buying dinners and drinks, it's a little easier.
15180.939 -> But those that con engineers, we've got a
lot of respect for them. Two o'clock in the
15181.939 -> morning, they're doing work like this. Now
let's briefly talk about passing the exam
15182.939 -> and then I'll answer questions.
15183.939 -> The AWS exams are not difficult, but the way
they ask questions can be brutal. They ask
15184.939 -> questions in a very wordy environment, there's
typically not a winning answer. So let's select
15185.939 -> the best answer. The less you know about tech,
the easier these exams are going to be. Because
15186.939 -> when you if you know a lot about tech, these
exams are going to be hot, complicated, because
15187.939 -> they're gonna give you a question and there's
going to be four answers. One might be the
15188.939 -> way Cisco would do it. One might be the way
VMware would do it, or Microsoft would do
15189.939 -> it. One would be the AWS way. So if you don't
know a lot about tech, this is going to be
15190.939 -> a very simple exam. If you know a lot about
tech, forget everything you know, when you
15191.939 -> took this exam, and just try to pretend that
you just read this book, and you just took
15192.939 -> this class and you don't know anything. And
then it'll be very simple to get to the answers.
15193.939 -> But if you know a lot, it's going to work
against you. So you almost want to shut your
15194.939 -> brain off and think exactly what is only on
the AWS curriculum, and take that exam and
15195.939 -> then be done with it. Now I recommend that
you look at this. Watch this presentation
15196.939 -> again. You carefully look at all documents.
You read the AWS white papers covering the
15197.939 -> services listed in this books. And here's
the reason why. The AWS white paper Pressure
15198.939 -> designed to convince you to go use and sell
AWS stuff. What are these certifications certifications
15199.939 -> in today's world are designed to get you used
to thinking about using the brand terms and
15200.939 -> helping to sell their stuff. So read those
white papers, you're going to see a lot of
15201.939 -> questions from there. I strongly recommend
you get a practice test. There's two companies
15202.939 -> that make practice tests that I like. Holman
Sharma is the CEO of review and trap prep.
15203.939 -> He's a good friend, and he's got excellent
AWS practice exams. I also love Andrew Brown's
15204.939 -> content from example. He focuses on certification,
I focus on getting people hired. Andrew and
15205.939 -> I are good friends, we recommend people back
to each other. He sends me cool people for
15206.939 -> career stuff, I send him people for for a
certification stuff. He also has some free
15207.939 -> AWS training. And I think for less than $20,
guess what you get, you can get his practice
15208.939 -> exams, and they are really, really, really
good. Now I suggest you take a practice exam.
15209.939 -> And when you take a practice exam, you retake
these exams until you can get a 95% or better
15210.939 -> on our practice test. Here's the reason why.
It'll make sure that you're used to that you're
15211.939 -> used to taking exams. And when you get used
to taking exams, these exams will be silly,
15212.939 -> easy, trust me, they're nothing compared to
some of the more complicated exams like a
15213.939 -> CCIE. But I will tell you one more thing,
because the way AWS writes these questions,
15214.939 -> they're ugly, read the way they're written.
So the night before the exam, get a good night's
15215.939 -> sleep, eat healthy cocoa, drink a bottle of
silver oak with your buddies, or have a bunch
15216.939 -> of scotches. Don't drink any alcohol. If you're
in California, don't use any of the other
15217.939 -> substances that are illegal, that can affect
your thinking either Colorado or one of those
15218.939 -> other states. Keep your brain fresh and start
the day before the exam. arrived for the exam
15219.939 -> early, whether it's in person or not, I promise
you tech problems are going to occur, there's
15220.939 -> going to be some tech problem that occurs,
your system will freeze up either security
15221.939 -> software they're putting in there. So the
early and if you drive there be early, don't
15222.939 -> try to be cheap on parking when I had no money,
it's still pay the 20 bucks for parking now
15223.939 -> it's probably more because I wanted to be
there relaxed, not worried to find a parking
15224.939 -> meter worried about who was going to tick
me, ticket me and make sure you've got a valid
15225.939 -> photo ID for the exam. This way, you're out
there, you're relaxed. And why am I so concerned
15226.939 -> with you being relaxed? I'll give you a little
bit of the neurological reasons why. Right
15227.939 -> now we're talking we're having a good time
we're using the prefrontal cortex part of
15228.939 -> our brain is the thinking, the logical reasoning,
the intelligent part of our body. Then when
15229.939 -> we get nervous, what happens is the prefrontal
cortex shuts down. This nasty thing called
15230.939 -> the amygdala kicks in the amygdala is responsible
for freeze, fight or flight and we get dumb.
15231.939 -> So be relaxed, be calm, be good to go. Regarding
the amygdala, if you don't know what I'm talking
15232.939 -> about, let's say you're with your wife, and
she says something that normally be no big
15233.939 -> deal you deal with it. But if you're angry,
you say something and you say something you
15234.939 -> regret, and then you're in the doghouse for
the next three years. Well, husbands could
15235.939 -> do it, wives can do it, best friends can do
it, it doesn't matter. So kind of keep that
15236.939 -> in the back of your mind. And you'll be good
to go. It's been such a privilege and an honor
15237.939 -> to see what to do with you this week. I hope
you guys all learned a lot. Make sure you
15238.939 -> download a copy of that free book. Make sure
you learn the AWS labs and sign up for them.
15239.939 -> They're completely free. And join me on Thursday
on how to get your first cloud architect job
15240.939 -> webinar. I look forward to seeing you there.
Take care everyone have a wonderful day. I'd
15241.939 -> like to tell you about some free things we
do to help you get your first cloud architect
15242.939 -> job or transition into tech free time for
which completely free on YouTube, I will answer
15243.939 -> any type of cloud computing questions you
have come and ask questions about how to build
15244.939 -> your career and I will answer them completely
free. Every Thursday, we have a completely
15245.939 -> free how to get your first cloud job of it.
Our people come from all over the world in
15246.939 -> this webinar, I will tell them the following
how to leverage their life experience. So
15247.939 -> the hiring manager, they're ready. I'll go
over the job, the Cloud Architect job in depth.
15248.939 -> I'll go over the things that hiring managers
desire. I'll teach you how to bypass HR and
15249.939 -> get your hands directly your resume directly
in the hands of the hiring manager. So you
15250.939 -> can get heard about auto rejected by HR and
your lack of experience, and it'll be a great
15251.939 -> time and you'll learn so much and by the end
of this you'll know exactly what you need
15252.939 -> to get hired. This is Michael Gibbs. I'm the
founder and CEO of go kart careers and I look
15253.939 -> forward to seeing you another video. Take
care
Source: https://www.youtube.com/watch?v=uc5C1Zt5tD8