[PYTHON] [AWS CLI] Activez l'AWS CLI sur Red Hat Enterprise Linux 8

Cible

· Installez l'AWS CLI sur une instance EC2 basée sur Red Hat Enterprise Linux 8. -Utilisez l'AWS CLI pour activer les opérations sur les ressources dans le compte AWS cible.

Déclencheur

C'est presque un mémorandum. Quand j'ai essayé d'utiliser l'AWS CLI (*) sur Red Hat Enterprise Linux 8 Je l'ai écrit parce que j'étais un peu ennuyé par la commande qui ne se trouve pas dans les commandes liées à python.

※AWS CLI Type d'API fourni par AWS qui permet les opérations sur les ressources AWS sur la ligne de commande.

Environnement d'utilisation

Matériel: ** serveur AWS EC2 ** OS(AMI) : Red Hat Enterprise Linux 8 (HVM), SSD Volume Type Autres logiciels: Python 3.8.0 aws-cli/1.18.81 Python/3.8.0 Linux/4.18.0-193.el8.x86_64 botocore/1.17.4

Flux de travail

Numéro d'article Titre
1 installation de python
2 Installation de l'AWS CLI
3 Émission de l'ID de la clé d'accès et de la clé d'accès secrète
4 Vérification du fonctionnement de l'AWS CLI

procédure

1. Installez python

Étant donné que l'AWS CLI est basée sur python, vous devez d'abord installer l'environnement d'exécution python. Mais Red Hat Enterprise Linux 8 ne semble pas avoir installé python par défaut. Tout d'abord, installez-le (*). Depuis le 17 juin 2020, j'ai installé le dernier python3.8 avec yum.

** ① Installez python3.8 ** Exécutez yum install python38 ⇒ Il devrait être affiché comme «Complet!

[root@ip-172-31-45-222 ~]# yum install python38
Installed:
  python38-3.8.0-6.module+el8.2.0+5978+503155c0.x86_64                       python38-libs-3.8.0-6.module+el8.2.0+5978+503155c0.x86_64
  python38-pip-19.2.3-5.module+el8.2.0+5979+f9f0b1d2.noarch                  python38-pip-wheel-19.2.3-5.module+el8.2.0+5979+f9f0b1d2.noarch
  python38-setuptools-41.6.0-4.module+el8.2.0+5978+503155c0.noarch           python38-setuptools-wheel-41.6.0-4.module+el8.2.0+5978+503155c0.noarch

Complete!

** ② vérification du fonctionnement de la commande python ** Exécutez python3 --version (Notez que dans RHEL, la version doit également être incluse dans la commande) ⇒ Les informations de version sont sorties normalement


[root@ip-172-31-45-222 ~]# python3 --version
Python 3.8.0

2. Installez l'AWS CLI

** ① Installation de l'AWS CLI ** Exécutez pip3 install awscli ⇒ Il devrait être affiché comme "Installé avec succès".

[root@ip-172-31-45-222 ~]# pip3 install awscli
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Collecting awscli
  Downloading https://files.pythonhosted.org/packages/9f/13/a93f9ef5d6a0820dbd324a222aba7ff299454cbc0f8c8d37d918e3b530fb/awscli-1.18.81.tar.gz (1.2MB)
     |????????????????????????????????| 1.2MB 7.3MB/s
Collecting botocore==1.17.4 (from awscli)
  Downloading https://files.pythonhosted.org/packages/bc/83/e5c0420ed9d628c6cd054c8a0782dece06515a90b63de4e1c3ce2b943dc2/botocore-1.17.4-py2.py3-none-any.whl (6.3MB)
     |????????????????????????????????| 6.3MB 23.7MB/s
Collecting docutils<0.16,>=0.10 (from awscli)
  Downloading https://files.pythonhosted.org/packages/22/cd/a6aa959dca619918ccb55023b4cb151949c64d4d5d55b3f4ffd7eee0c6e8/docutils-0.15.2-py3-none-any.whl (547kB)
     |????????????????????????????????| 552kB 36.8MB/s
Collecting rsa<=3.5.0,>=3.1.2 (from awscli)
  Downloading https://files.pythonhosted.org/packages/e1/ae/baedc9cb175552e95f3395c43055a6a5e125ae4d48a1d7a924baca83e92e/rsa-3.4.2-py2.py3-none-any.whl (46kB)
     |????????????????????????????????| 51kB 27.9MB/s
Collecting s3transfer<0.4.0,>=0.3.0 (from awscli)
  Downloading https://files.pythonhosted.org/packages/69/79/e6afb3d8b0b4e96cefbdc690f741d7dd24547ff1f94240c997a26fa908d3/s3transfer-0.3.3-py2.py3-none-any.whl (69kB)
     |????????????????????????????????| 71kB 32.6MB/s
Collecting PyYAML<5.4,>=3.10 (from awscli)
  Downloading https://files.pythonhosted.org/packages/64/c2/b80047c7ac2478f9501676c988a5411ed5572f35d1beff9cae07d321512c/PyYAML-5.3.1.tar.gz (269kB)
     |????????????????????????????????| 276kB 37.7MB/s
Collecting colorama<0.4.4,>=0.2.5 (from awscli)
  Downloading https://files.pythonhosted.org/packages/c9/dc/45cdef1b4d119eb96316b3117e6d5708a08029992b2fee2c143c7a0a5cc5/colorama-0.4.3-py2.py3-none-any.whl
Collecting python-dateutil<3.0.0,>=2.1 (from botocore==1.17.4->awscli)
  Downloading https://files.pythonhosted.org/packages/d4/70/d60450c3dd48ef87586924207ae8907090de0b306af2bce5d134d78615cb/python_dateutil-2.8.1-py2.py3-none-any.whl (227kB)
     |????????????????????????????????| 235kB 41.5MB/s
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.17.4->awscli)
  Downloading https://files.pythonhosted.org/packages/07/cb/5f001272b6faeb23c1c9e0acc04d48eaaf5c862c17709d20e3469c6e0139/jmespath-0.10.0-py2.py3-none-any.whl
Collecting urllib3<1.26,>=1.20; python_version != "3.4" (from botocore==1.17.4->awscli)
  Downloading https://files.pythonhosted.org/packages/e1/e5/df302e8017440f111c11cc41a6b432838672f5a70aa29227bf58149dc72f/urllib3-1.25.9-py2.py3-none-any.whl (126kB)
     |????????????????????????????????| 133kB 47.5MB/s
Collecting pyasn1>=0.1.3 (from rsa<=3.5.0,>=3.1.2->awscli)
  Downloading https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl (77kB)
     |????????????????????????????????| 81kB 35.4MB/s
Collecting six>=1.5 (from python-dateutil<3.0.0,>=2.1->botocore==1.17.4->awscli)
  Downloading https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl
Installing collected packages: six, python-dateutil, docutils, jmespath, urllib3, botocore, pyasn1, rsa, s3transfer, PyYAML, colorama, awscli
  Running setup.py install for PyYAML ... done
  Running setup.py install for awscli ... done
Successfully installed PyYAML-5.3.1 awscli-1.18.81 botocore-1.17.4 colorama-0.4.3 docutils-0.15.2 jmespath-0.10.0 pyasn1-0.4.8 python-dateutil-2.8.1 rsa-3.4.2 s3transfer-0.3.3 six-1.15.0 urllib3-1.25.9

** ② Confirmation de l'installation de l'AWS CLI ** Exécution de ʻAws --version` ⇒ Les informations de version sont sorties normalement


[root@ip-172-31-45-222 ~]# aws --version
aws-cli/1.18.81 Python/3.8.0 Linux/4.18.0-193.el8.x86_64 botocore/1.17.4

3. Émission de l'ID de clé d'accès et de la clé d'accès secrète

Pour accéder aux ressources de votre compte AWS à partir de l'AWS CLI Vous aurez besoin de votre ID de clé d'accès et de votre clé d'accès secrète, alors publiez-les sur la console AWS.

** ① Accès aux éléments suivants ** https://console.aws.amazon.com/iam/home?#/security_credential

** ② Cliquez sur Créer une nouvelle clé d'accès ** tempsnip.png

** ③ Cliquez sur Télécharger le fichier clé ** Après avoir cliqué, un fichier appelé "rootkey.csv" sera téléchargé. L'ID de la clé d'accès et la clé d'accès secrète y sont répertoriés. tempsnip.png

3. Chargez l'ID de clé d'accès et la clé d'accès secrète dans l'AWS CLI

Exécution de ʻAws configure` Entrez les valeurs (*) dans chaque élément comme indiqué ci-dessous.


[root@ip-172-31-45-222 ~]# aws --version
aws-cli/1.18.81 Python/3.8.0 Linux/4.18.0-193.el8.x86_64 botocore/1.17.4
[root@ip-172-31-45-222 ~]# aws configure
AWS Access Key ID [None]: {rootkey.AWSAccessKeyId décrit dans csv}
AWS Secret Access Key [None]: {rootkey.Clé secrète AWS décrite dans csv}
Default region name [None]: ap-northeast-1
Default output format [None]: json

4. Vérification du fonctionnement de l'AWS CLI

Installez jq pour couper la valeur de sortie de json.

Exécutez sudo yum install jq ⇒ Il devrait être affiché comme "Terminé!"


[root@ip-172-31-45-222 ~]# sudo yum install jq

Installed:
  jq-1.5-12.el8.x86_64                                                      oniguruma-6.8.2-1.el8.x86_64

Complete!

aws ec2 describe-instances | jq '.Reservations[].Instances[] | {InstanceId, PrivateIpAddress}' (Découpez et affichez l'ID d'instance et l'adresse IP privée de toutes les instances) ⇒ L'ID et l'adresse IP de chaque instance doivent s'afficher normalement.


[root@ip-172-31-45-222 ~]# aws ec2 describe-instances | jq '.Reservations[].Instances[] | {InstanceId, PrivateIpAddress}'
{
  "InstanceId": "i-0e2d37561986006ae",
  "PrivateIpAddress": "172.31.42.251"
}
{
  "InstanceId": "i-04b2b0295c4ace2c8",
  "PrivateIpAddress": "172.31.42.211"
}
{
  "InstanceId": "i-05479d1f45744d4e6",
  "PrivateIpAddress": "172.31.33.200"
}
{
  "InstanceId": "i-01996d692bf2eeee6",
  "PrivateIpAddress": "172.31.34.245"
}
{
  "InstanceId": "i-07e3cd75ed7d0e213",
  "PrivateIpAddress": "172.31.34.137"
}
{
  "InstanceId": "i-01ea4405ab69ba0fd",
  "PrivateIpAddress": "172.31.45.222"
}

Recommended Posts

[AWS CLI] Activez l'AWS CLI sur Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 8.3 Diverses confirmations
Installez JDK sur Linux
Collez le lien sous Linux
Comment installer nkf avec un fichier rpm sur Red Hat Enterprise Linux 7.7 (pour les environnements sans connexion Internet)
Inclut le transfert de port docker-nginx sur AWS Linux 2
Compilation du noyau Linux (Linux 5.x sur Ubuntu 20.04)
Le jour où le serveur Flask fonctionnant sous Linux sur AWS était semi-persistant (fonctionnant en arrière-plan)
[Linux] Examen des commandes de déploiement sur AWS
Obtenez les dernières informations AMI avec l'AWS CLI
[2020July] Vérifiez l'UDID de l'iPad sous Linux
[AWS S3] Confirmation de l'existence de dossiers sur S3
Définir le script de démarrage sur Linux (RasPi, Edison)