Script pour créer facilement un environnement de périphérique client pour AWS IoT (version Python v2)

Il s'agit d'un script pour essayer immédiatement PubSub de AWS IoT Device SDK v2 pour Python pour un petit test. Vous pouvez le faire en quelques lignes sur la CLI. La version Node.js est ici

Il est supposé être défini sur Cloud9. Il est utilisé lorsqu'il est difficile de créer avec un mannequin. Je n'expliquerai pas ce que vous faites. .. De plus, si vous souhaitez simplement envoyer quelques messages manuellement, il est préférable d'utiliser la fonction de test d'IoT Core.

Préparation

Créez un environnement Cloud9 et placez les éléments suivants dans le répertoire Environnement.

setup.sh


mkdir $THING_NAME
cd $THING_NAME
POLICY_NAME=${THING_NAME}_Policy

aws iot create-thing --thing-name ${THING_NAME}

git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
pip install ./aws-iot-device-sdk-python-v2
cd aws-iot-device-sdk-python-v2/samples/

wget -O rootca.pem \
    https://www.amazontrust.com/repository/AmazonRootCA1.pem

aws iot create-keys-and-certificate --set-as-active \
    --certificate-pem-outfile    certificate.pem \
    --public-key-outfile         public_key.pem  \
    --private-key-outfile        private_key.pem \
    --query certificateArn

echo -n CERTIFICATE_ARN: 
read str 
CERTIFICATE_ARN=$str

aws iot create-policy                     \
        --policy-name ${POLICY_NAME}      \
        --policy-document file://../../../policy.json

aws iot attach-thing-principal             \
        --thing-name $THING_NAME           \
        --principal $CERTIFICATE_ARN

aws iot attach-principal-policy            \
        --policy-name $POLICY_NAME         \
        --principal $CERTIFICATE_ARN

La politique doit être modifiée en conséquence, mais une fois qu'il y a quelque chose.

policy.json


{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Action":["iot:*"],
    "Resource": ["*"]
  }]
}

Courir


sudo pip install awsiotsdk

aws iot describe-endpoint --endpoint-type iot:Data-ATS 
export ENDPOINT=yourendpoint-ats.iot.ap-northeast-1.amazonaws.com
export THING_NAME=mything
./setup.sh
cd aws-iot-device-sdk-python-v2/samples/
python pubsub.py --endpoint $ENDPOINT --root-ca rootca.pem --cert certificate.pem --key private_key.pem

Lorsque vous essayez avec autre chose, réécrivez THING_NAME et exécutez.

Recommended Posts

Script pour créer facilement un environnement de périphérique client pour AWS IoT (version Python v2)
J'ai écrit un script pour créer rapidement un environnement de développement pour Twitter Bot avec AWS Lambda + Python 2.7
Créons un environnement virtuel pour Python
Python simulé pour essayer AWS IoT Device Shadow
Je veux créer un bel environnement de développement Python pour mon nouveau Mac
Créer un environnement Python
Provisionnement de flotte avec AWS IoT SDK for Python v2
Créer une couche pour AWS Lambda Python dans Docker
Comment créer un simple script serveur / client TCP
Script Python qui crée un fichier JSON à partir d'un fichier CSV
[AWS] J'ai essayé de créer un environnement Python avec un environnement de développement eb [Elastic Beanstalk]
Comment utiliser NUITKA-Utilities hinted-compilation pour créer facilement un fichier exécutable à partir d'un script Python
Exécutez AWS IoT Device SDK for Python sur Raspberry Pi
Comment lancer AWS Batch à partir de l'application cliente Python
Créer un script Python pour Wake on LAN (Wake on LAN over NAT [5])
Créer un environnement virtuel pour python sur mac [Très facile]
Concurrence avec VS Code Créez un environnement Python pour les professionnels sous Windows
Créer un environnement d'exécution Windows Python avec VScode + Remote WSL
[AWS] Version de déploiement d'application Flask qui a tenté de créer un environnement Python avec eb [Elastic Beanstalk]
Créer un environnement Python sur Mac (2017/4)
Créez un script shell pour exécuter le fichier python plusieurs fois
Créez un environnement virtuel avec Python!
Essayez de créer un environnement python avec Visual Studio Code et WSL
De la création d'un environnement Python pour les personnes inexpérimentées à Hello world
Créer un environnement python dans centos
Script de création de couche AWS pour python
Python vba pour créer une chaîne de date pour créer un nom de fichier
5 façons de créer un chatbot Python
[Pour Python] Créez rapidement un fichier de téléchargement vers AWS Lambda Layer
[AWS SAM] Présentation de la version Python
Créer un Ubuntu de démarrage USB avec un environnement Python pour l'analyse des données
Création d'un environnement virtuel pour Mayavi dédié aux utilisateurs de Python 3.6, Anaconda et Spyder
Points à surveiller lors de la création d'un environnement Python sur un Mac
J'ai facilement créé un environnement d'exploitation pour Python3 + Tornado sur AWS EC2.
[AWS] Créez un environnement Python Lambda avec CodeStar et faites Hello World
Créer un environnement de gestion de version pour Python, Ruby, Perl, Node.js sous UNIX
Procédure de création d'un environnement virtuel Python avec VS Code sous Windows
[Python / Tkinter] Rechercher Pandas DataFrame → Créer un formulaire de recherche simple à afficher
Essayez de mettre en place un environnement de test Vim assez sérieusement (pour Python)
Un guide pour faire de l'IoT avec MicroPython facilement jusqu'à la dernière minute
[Python] Créez un environnement virtuel avec Anaconda
[Python] Créer un environnement Batch à l'aide d'AWS-CDK
Je veux créer un environnement Python
[Mac] Création d'un environnement virtuel pour Python
Un outil pour saisir facilement du code Python
Script pour créer un fichier de dictionnaire Mac
Créer un environnement de développement Python pour le développement de l'IA
Ajouter un environnement virtuel Python à VSCode
Comment exécuter des scripts Maya Python
J'ai essayé de créer une classe qui peut facilement sérialiser Json en Python
J'ai essayé d'expliquer à quoi sert le générateur Python aussi facilement que possible.
Quand j'ai essayé de créer un environnement virtuel avec Python, cela n'a pas fonctionné
J'ai essayé de créer facilement un système de présence entièrement automatique avec Selenium + Python
Script Python pour obtenir une liste d'exemples d'entrée pour le concours AtCoder
Créez des paramètres dans terraform pour envoyer des messages depuis AWS Lambda Python3.8 vers Slack
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
[Python] Compréhension de liste Différentes façons de créer une liste
Modifier Excel à partir de Python pour créer un tableau croisé dynamique