La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Interface ligne de commande

Présentations similaires


Présentation au sujet: "Interface ligne de commande"— Transcription de la présentation:

1 Interface ligne de commande
02/04/2017 02/04/2017 02/04/2017 Formation Interface ligne de commande 1 1 1

2 AWS EN LIGNE COMMANDE 2 Formation AWS CLI 02/04/2017 02/04/2017

3 Plan Présentation des différents outils EC2 API/AMI tools Euca2ools
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Plan Présentation des différents outils EC2 API/AMI tools Euca2ools S3cmd AWS CLI 3 3 3 3

4 PRÉSENTATION DES DIFFÉRENTS OUTILS
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 PRÉSENTATION DES DIFFÉRENTS OUTILS 4 4 4 4

5 Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Panorama (1) Pas (encore) d'outils en ligne de commande supportés officiellement par Amazon EC2 API/AMI/etc. Tools (AWS) En java pour la plupart Un ensemble de commandes peu cohérent AWS CLI (AWS) Ligne de commande unifiée pour gérer l'ensemble des services AWS Developer preview 5 5 5 5

6 Panorama (2) Euca2ools (Eucalyptus/communautaire)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Panorama (2) Euca2ools (Eucalyptus/communautaire) Développé à l'origine pour Eucalyptus (Open Source) Compatible AWS, OpenStack, OpenNebula S3cmd (communautaire) Utilitaire dédié à S3 Le couteau suisse pour manipuler S3 6 6 6 6

7 Récupérer ses identifiants AWS (1)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Récupérer ses identifiants AWS (1) Compte Amazon : compte Maître, à ne pas utiliser en production ! Pour la production, utiliser le service IAM pour générer des identifiants avec des ACL réduits Identifiants AWS: une paire de clés d'accès Identifiant de clé d'accès Clé d'accès secrète 7 7 7 7

8 Récupérer ses identifiants AWS (2)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Récupérer ses identifiants AWS (2) Certificats X.509 Nécessaire pour signer les AMI Nécessaire pour accéder à l'API SOAP (déconseillé) Limité à 2 par compte ! Les identifiants et certificats ne peuvent être récupérés qu'à la création par mesure de sécurité Attention ! En cas de perte d'identifiants, désactiver les clés et regénérer en de nouveaux ! 8 8 8 8

9 Récupérer ses identifiants AWS (3)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Récupérer ses identifiants AWS (3) Se connecter à la console d'administration https://aws.amazon.com Aller sur l'onglet « Compte/Console » puis cliquer sur l'entrée « AWS Management Console » Se connecter avec son compte Amazon Cliquer sur « security credentials » Créer une paire de clés d'accès identifiant de clé d'accès/clé d'accès secrète Créer un certificat X.509 pour signer vos AMI 9 9 9 9

10 Récupérer ses identifiants AWS (3)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Récupérer ses identifiants AWS (3) Dans la console AWS, se connecter au service IAM Aller dans le menu « users » Cliquer sur le bouton « Create users » Récupérer le fichier CSV contenant les identifiants 10 10 10 10

11 Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Démo IAM 11 11 11

12 EC2 API/AMI TOOLS 12 Formation AWS CLI 02/04/2017 02/04/2017

13 Installation Télécharger les EC2 API Tools
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Installation Télécharger les EC2 API Tools https://aws.amazon.com/developertools/351 Télécharger les EC2 AMI Tools https://aws.amazon.com/developertools/368 13 13 13 13

14 Configuration Configurer les variables d'environnement :
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Configuration Configurer les variables d'environnement : export EC2_HOME=/opt/ec2-api-tools-xxxx  export EC2_AMITOOL_HOME=/opt/ec2-ami-tools-xxx export PATH=$EC2_HOME/bin:$EC2_AMITOOL_HOME/bin:$PATH export AWS_ACCESS_KEY=XXXX export AWS_SECRET_KEY=XXXX On peut également les passer en ligne de commande avec respectivement les options --aws-access-key et --aws-secret-key (ou -O et -W) 14 14 14 14

15 Quelques commandes (1) Démarrer une instance Lister les instances
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (1) Démarrer une instance ec2-run-instances <ami-xxx> -k <cle-ssh> -t <instance-type> [-g <security-group>] Lister les instances ec2-describe-instances –region eu-west-1 Arrêter une instance ec2-terminate-instances <liste instance-id> 15 15 15 15

16 Quelques commandes (2) Créer un groupe de sécurité
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (2) Créer un groupe de sécurité ec2-create-group ssh-access -d <description> Ajouter une règle au groupe de sécurité ec2-authorize ssh-access -P tcp -p 22 [-s ip] Supprimer une règle du groupe de sécurité ec2-revoke -P tcp -p 22 16 16 16 16

17 Euca2ools 17 Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 17 17

18 Contexte Développé par Eucalyptus
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Contexte Développé par Eucalyptus Interaction avec des services web compatibles EC2 et S3 (Eucalyptus/Walrus) Inspiré par les ec2-{api,ami}-tools 18 18 18 18

19 Installation Via le gestionnaire de paquetages de votre distribution
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Installation Via le gestionnaire de paquetages de votre distribution apt-get install euca2ools yum install euca2ools Manuelle (nécessite d'avoir Python 2.6+, Boto, M2Crypto d'installé) Via le Cheese Shop (aka PyPI) virtualenv euca2ools && cd euca2ools && source bin/activate && pip install euca2ools 19 19 19 19

20 Configuration Via les variables d'environnements
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Configuration Via les variables d'environnements export EC2_ACCESS_KEY=XXXX export EC2_SECRET_KEY=XXXX export EC2_CERT=XXX Via le fichier de configuration « $HOME/.eucarc » EC2_REGION=eu-west-1 EC2_ACCESS_KEY=XXXX EC2_SECRET_KEY=XXXX EC2_URL=https://ec2.${EC2_REGION}.amazonaws.com 20 20 20 20

21 Utilitaires Lister les régions
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Utilitaires Lister les régions euca-describe-regions Lister les zones de disponibilité au sein d'une région euca-describe-availability-zones 21 21 21 21

22 Gestion paire de clés ssh
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gestion paire de clés ssh Créer une paire de clés ssh euca-create-keypair <nom-paire-clés>  Importer une clé ssh publique existante  euca-import-keypair -f <clé-publique> <nom- paire-clé>  Lister les paires de clés  euca-describe-keypairs 22 22 22 22

23 Gestion d'instances EC2 (1)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gestion d'instances EC2 (1) Lister les instances  euca-describe-instances Récupérer les infos sur une instance euca-describe-instances <id> Démarrer une instance  euca-run-instances <ami_id> \ --region eu-west-1 -g ssh-access \ -k mykey -f initscript.sh -n 4 23 23 23 23

24 Gestion d'instances EC2 (2)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gestion d'instances EC2 (2) Mettre en pause une instance (EBS)  euca-stop-instance <id> Relancer une instance en pause (EBS) euca-start-instance <id> Arrêter une instance euca-terminate-instance <id> Redémarrer une instance (EBS)  euca-reboot-instance <id> 24 24 24 24

25 Gestion d'instances EC2 (3)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gestion d'instances EC2 (3) Se connecter à une instance EC2 via ssh  ssh -i mykey.pem instance> 25 25 25 25

26 Réseau (1) Créer un groupe de sécurité
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Réseau (1) Créer un groupe de sécurité euca-create-group prod Ajouter une règle dans le groupe de sécurité euca-authorize prod -P tcp -p 80 -s /0 Supprimer une règle du groupe de sécurité euca-revoke prod -P tcp -p 80 -s /0 Ajouter une règle pour ouvrir un port pour un groupe de sécurité  euca-authorize database -P tcp -p 5432 \ -o prod 26 26 26 26

27 Réseau (2) Supprimer un groupe de sécurité Allouer une adresse IP fixe
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Réseau (2) Supprimer un groupe de sécurité euca-delete-group prod Allouer une adresse IP fixe  euca-allocate-address  Associer une adresse IP fixe à une instance  euca-associate-address -i <id> <ip>  Casser l'association d'une adresse IP fixe d'une instance euca-deassociate <ip> Libérer une adresse IP fixe euca-release-adress <ip> 27 27 27 27

28 Gérer les volumes blocs (1)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gérer les volumes blocs (1) Créer un volume bloc euca-create-volume --zone <zone> --size 8 Amarrer un volume à une instance  euca-attach-volume -i <id> -d /dev/sdb <volume-id> Détacher un volume d'une instance euca-detach-volume -i <id> <volume-id> Détacher un volume de toutes les instances euca-detach-volume <volume-id> Supprimer un volume bloc euca-delete-volume <volume-id> 28 28 28 28

29 Gérer les volumes blocs (2)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gérer les volumes blocs (2) Créer un snapshot (doit être en état « in-use » ou « available »)  euca-create-snaphot <volume-id> Créer un nouveau volume à partir d'un snapshot euca-create-volume --zone <zone> --snapshot <snapshot-id> Vérifier l'état d'un snapshot euca-describe-snapshots <volume-id> Supprimer un snapshot euca-delete-snapshot <volume-id> 29 29 29 29

30 Gérer les volumes blocs (3)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Gérer les volumes blocs (3) Une fois attaché, le volume doit-être formaté et monté  mkfs.ext4 /dev/sdb && mount /dev/sdb/ /mnt/disk1 Il est préférable de démonter un volume pendant la création d'un snapshot pour éviter les corruptions de données 30 30 30 30

31 Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 S3Cmd 31 31 31 31

32 Contexte Amazon S3 : un service de stockage à prix raisonnable
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Contexte Amazon S3 : un service de stockage à prix raisonnable Très populaire pour servir, partager et archiver des fichiers S3cmd : couteau suisse pour gérer Amazon S3 32 32 32 32

33 Configuration Utilisez l'assistant interactif !
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Configuration Utilisez l'assistant interactif ! s3cmd --configure Configuration stocké dans le fichier $HOME/.s3cfg 33 33 33 33

34 Quelques commandes (1) Lister les buckets Créer un bucket
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (1) Lister les buckets  s3cmd ls Créer un bucket  s3cmd mb s3://sysfera-test Lister le contenu d'un bucket  s3cmd ls S3://sysfera-test 34 34 34 34

35 Quelques commandes (2) Upload d'un fichier
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (2) Upload d'un fichier  s3cmd put boto.jpg s3://sysfera-test Upload d'un fichier publique  s3cmd put --acl-public --guess-mime boto.jpg s3://sysfera-test Télécharger un fichier  s3cmd get s3://sysfera-test/boto.jpg 35 35 35 35

36 Quelques commandes (3) Suppression d'un fichier
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (3) Suppression d'un fichier  s3cmd del s3://sysfera-test/boto.jpg  Suppression d'un bucket (doit être vide) s3cmd rb s3://sysfera-test  Copier un fichier : s3cmd cp s3://sysfera-test/boto.jpg s3://sysfera-prod/  Déplacer/renommer un fichier s3cmd mv s3://sysfera-test/boto.jpg s3://sysfera-prod/boto.jpg  36 36 36 36

37 Quelques commandes (4) Récupérer information sur un fichier
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Quelques commandes (4) Récupérer information sur un fichier  s3cmd info s3://sysfera-test/boto.jpg Visualiser l'espace disque consommé s3cmd du s3://sysfera-test Synchroniser un répertoire avec un bucket  s3cmd sync test/ s3://sysfera-test/ 37 37 37 37

38 Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 AWS CLI 38 38 38 38

39 Contexte Client unifié pour l'ensemble des services AWS
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Contexte Client unifié pour l'ensemble des services AWS Basé sur Python 2/3 et la bibliothèque botocore Developer preview actuellement Sémantique simple aws <service> <commande> <options> Prends en entrée des données au format JSON Sortie formatée en JSON par défaut 39 39 39 39

40 Installation Via le Cheese Shop (aka PyPI)
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Installation Via le Cheese Shop (aka PyPI) virtualenv awscli && cd awscli && source bin/activate && pip install awscli 40 40 40 40

41 Configuration (1) Via un fichier de configuration
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Configuration (1) Via un fichier de configuration Gère différents profils (option --profile) Accessible via une variable d'environnement export AWS_CONFIG_FILE=$HOME/.awscli 41 41 41 41

42 Configuration (2) [default]
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Configuration (2) [default] aws_access_key_id=<default access key> aws_secret_access_key=<default secret key> region=us-west-1 # optional, to define default region for this profile [testing] aws_access_key_id=<testing access key> aws_secret_access_key=<testing secret key> region=us-west-2 42 42 42 42

43 Comparatifs des différents outils
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Comparatifs des différents outils 43 43 43 43

44 Comparatif statut Mainteneur Langage ec2-api-tools mature AWS Java
Formation AWS CLI 02/04/2017 02/04/2017 02/04/2017 Comparatif statut Mainteneur Langage ec2-api-tools mature AWS Java ec2-ami-tools Ruby elb-api-tools euca2ools Eucalyptus Python s3cmd communauté AWS CLI Developer Preview 44 44 44 44


Télécharger ppt "Interface ligne de commande"

Présentations similaires


Annonces Google