(upbeat music)
Have you ever had to remotely SSH
into one of your EC2 servers to manage your AWS account?
Have you ever tried to use the AWS Command Line Interface
to make a repetitive change,
to extract information from a report
or to make a quick configuration edit?
Setting up an environment to use AWS Command Line tools
can take a lot of time
and you may even have to spend money
running a Linux virtual machine,
just so you have a shell to run all of those tools.
Well, AWS have made this process considerably easier
with the AWS CloudShell.
AWS CloudShell is a browser-based shell
which makes managing your AWS environment
through the command line and absolute breeze.
This is useful because no matter where you are
or what computer you're logged into your AWS console from,
you will get a consistent shell,
which allows you to securely manage your AWS account.
And the shell comes with a lot of really useful tools too.
The most powerful of all being
the AWS Command Line Interface or the CLI.
In this ACG Fundamental,
we're going to see how easy it is to start using CloudShell.
We'll see what tools it provides,
like the AWS Command Line Interface.
And we'll see how easily configurable it is
by installing some shell customizations.
And best of all, it's completely free
and available right now in these AWS regions.
Let's dive in.
Okay, here I am in my AWS console.
And you might not even notice it,
but here in the top corner
is a button which will launch AWS CloudShell.
Let's click it and see what happens.
Welcome to CloudShell.
Don't show this again.
But it just mentions we have some pre-installed tools.
We've got included storage and we can save our files
and settings in our home directory.
Let's click close.
This can take up to a minute or two to launch.
So be patient and we'll be ready to go.
Preparing terminal.
And here we go.
So now we have a command line that we can use.
This is it, this is CloudShell.
From here, we have full access to our AWS account
and we don't even have to configure any keys or credentials.
You will automatically assume a role
based on your IAM identity.
Let's see what tools are available by default.
First thing on your list is the AWS Command Line Interface.
Excellent.
Looking further down,
there's the Elastic Beanstalk Command Line Interface,
the Elastic Container Command Line.
There's Flask, there's SAM,
which is Serverless Application Manager.
And if the tool want isn't here,
you can even install your own.
CloudShell provides you with one gigabyte
of home directory space, which is persistent.
That's right, whenever you launch CloudShell,
you will get access to the same one gigabyte of storage.
So you can install whatever tools you need
to operate in your AWS accounts
and they will always be there.
Let's take a quick look at the actions menu
up in the top right.
We have a way to launch a new tab
just in case you need to be typing in one window
and looking at logs in another window.
You can have two of them running at the same time.
And we're also able to download files from the shell
or upload files to the shell.
And you can even restart or delete the entire home directory
if you've broken something
and you wanna reset it back to what it was like
when you first launched it.
All right, let's go through a quick demo.
Firstly, let's try the AWS command.
I'm gonna list all my EC2 instances.
Let's see if I have any in this account.
So AWS EC2 describe instances.
And you can see, we instantly are able to see
what EC2 instances are running
via our Command Line Interface
without having to configure the Command Line Interface,
which is awesome, it makes it so easy to use.
Now let's go through a quick demo.
Say you would like to install the AWS Cloud Development Kit
and then initialize a new cloud application using it.
First, we can install the AWS CDK
with the NPM command sudo npm install -g, for global,
so everyone can use it,
and then aws-cdk.
And that will go off, use the NPM command
to download and install it into our CloudShell.
Excellent.
Now we need to create a directory, mkdir cdk.
Let's go into that directory
and we're going to cdk init app --language
and I'll choose Python.
And it's that simple.
We didn't need an EC2 instance.
We didn't need a local shell with credentials configured
and SSH keys downloaded.
One click and two commands gives you an AWS CDK project
ready to be developed.
If you also prefer a different shell
or you want to reconfigure your default bash environment
to something more functional for you,
because you have that local disc space to work with,
you are free to do whatever you'd like.
Let's install an open source bash framework called Oh My Bash.
And I'm gonna paste this command in.
And that was pretty simple.
And it took about one second.
You can see, we now have a simple, pretty, themable,
customizable bash shell in our CloudShell.
(upbeat music)
It's pretty easy to see with my two examples
that options are pretty much limitless
when using AWS CloudShell.
Well, limitless up to one gigabyte of storage.
You can install what you need,
you can interact with any AWS service
that the AWS command line interface gives you access to,
and you can do it from anywhere
as long as you're able to log into your AWS account
and click that CloudShell button.
Thank you for watching, keep being awesome Cloud Gurus,
and we'll see you next time.
(upbeat music)