Différence entre s3cmd, boto et AWS CLI
Je suis réflexion sur le redéploiement de mon site web statique pour Amazon S3. J'ai besoin d'automatiser le déploiement alors que je cherchais une API pour de telles tâches. Je suis un peu confus sur les différentes options.
Question: Quelle est la différence entre s3cmd, la bibliothèque Python boto et AWS CLI?
Vous devez vous connecter pour publier un commentaire.
s3cmd et AWS CLI sont à la fois des outils de ligne de commande. Ils sont bien adaptés si vous souhaitez script de déploiement par le biais de scripts shell (par exemple, bash).
AWS CLI vous donne un simple fichier de copie de capacités par le biais de la "s3" de commande, qui doit être suffisant pour déployer un site statique à un compartiment S3. Il a aussi quelques petits avantages comme le fait d'être pré-installé sur Amazon Linux, si c'est là que vous travaillez à partir d' (c'est aussi facilement installable par
pip
).Une AWS commande CLI qui peut être approprié pour synchroniser un répertoire local avec un compartiment S3:
Documentation complète sur cette commande:
http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html
Edit: Comme mentionné par @simon-buchan dans un commentaire, le
aws s3api
commande vous donne accès à la totalité S3 API, mais son interface est plus "brut".s3cmd prend en charge tout AWS CLI n', plus ajoute un peu plus de fonctionnalités étendues sur le dessus, bien que je ne suis pas sûr que vous auriez besoin de tout ça pour vos besoins. Vous pouvez voir toutes ses commandes ici:
http://s3tools.org/usage
Installation de s3cmd peut-être un peu plus compliqué, car il ne semble pas être en paquets dans toutes les distributions principales repos.
boto est une bibliothèque Python, et, en fait, l'officiel AWS SDK Python. AWS CLI, également écrit en Python, utilise en fait partie de la boto bibliothèque (botocore). Il serait bien adapté que si vous avez écrit des scripts de déploiement en Python. Il y a Sdk officiel pour d'autres langues populaires (Java, PHP, etc.) si vous préférez:
http://aws.amazon.com/tools/
La crue forme d'accès à la S3 est grâce à AWS API REST. Tout est construit sur elle à un certain point. Si vous vous sentez aventureux, voici le S3 RESTE documentation de l'API:
http://docs.aws.amazon.com/AmazonS3/latest/API/APIRest.html
s3cmd
officiel de paquets pour Ubuntu: packages.ubuntu.com/trusty/s3cmdaws s3 *
est juste l'interface simplifiée, le plein REPOS de l'API est disponible sousaws s3api *