-
Notifications
You must be signed in to change notification settings - Fork 0
AWS
Marco Paolini edited this page Apr 7, 2025
·
9 revisions
- create aws account, if you dont have one
- install
aws
CLI - enable IAM Identity Center
- create IAM user with PowerUserAccess
- aws configure sso
- set
AWS_DEFAULT_PROFILE
- log in with
aws sso login
- set default region with
aws configure
- test with
aws ec2 desribe-instances
- create an ec2 instance connect endpoint (in vpc tool)
ssh-keygen -m PEM -f ~/.ssh/aws_ec2_mpaolini
aws ec2 import-key-pair --key-name mpaolini --public-key-material fileb://~/.ssh/aws_ec2_mpaolini.pub
aws ec2 describe-instance-connect-endpoints
add to ~/.ssh/config:
Host ec2
HostName localhost
IdentityFile ~/.ssh/aws_ec2_mpaolini
User ec2-user
Port 8888
ForwardAgent yes
ServerAliveInterval 60
ensure you are logged in with aws sso login
aws ec2 run-instances --key-name mpaolini --image-id ami-0bade3941f267d2b8 --output text --query 'Instances[0].InstanceId' --instance-type m7i.large
export AWS_INSTANCE_ID=$(aws ec2 describe-instances --output text --filters Name=instance-state-name,Values=running --query 'Reservations[0].Instances[0].InstanceId')
- start tunnel
aws ec2-instance-connect open-tunnel --instance-id $AWS_INSTANCE_ID --local-port 8888
- remove previous known host
ssh-keygen -R "[localhost]:8888"
-
upload git config
scp ~/.gitconfig ec2:
-
add ssh key to ssh agent (you need ssh agent forwarding for this to work)
ssh-add ~/.ssh/id_github
-
connect
ssh ec2
- Or via VSCode https://code.visualstudio.com/docs/remote/ssh
- without tunnel:
aws ec2-instance-connect ssh --instance-id $AWS_INSTANCE_ID --os-user ec2-user --connection-type eice
-
tune instance
sudo dd if=/dev/zero of=/swapfile bs=1M count=1k
sudo chmod 0600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo dnf install git binutils clang perf lldb gprofng
git clone [email protected]:mpaolini/sqlite_mode.git
aws ec2 stop-instances --instance-id $AWS_INSTANCE_ID
aws ec2 terminate-instances --instance-id $AWS_INSTANCE_ID
check instances
aws ec2 describe-instances --query 'Reservations[].Instances[].State'