Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Blob Storage on IoT Edge
Search
linyixain
December 27, 2022
Technology
520
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Azure Blob Storage on IoT Edge
linyixain
December 27, 2022
More Decks by linyixain
See All by linyixain
AITRIOSとNode-RED
linyixian
0
130
Algyan イベント振り返り
linyixian
0
400
.NET nanoFramework programming
linyixian
0
430
OpenCVを使ってみよう.pdf
linyixian
0
510
ALGYAN関西支部2019.pdf
linyixian
0
720
Other Decks in Technology
See All in Technology
コミュニティの有益性 ~JAWS Days 2026 での体験を通して~ / The Benefits of a Community ~Through My Experience at JAWS Days 2026~
seike460
PRO
0
120
徹底討論!ECS vs EKS!
daitak
0
130
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
280
2026TECHFRESH畢業分享會 - Lightning Talk - E起 See See : 電商推薦讀心術? 數據說了算
line_developers_tw
PRO
0
1.3k
アジャイルな経理と Claude Code と経営の未来
kawaguti
PRO
3
150
あなたの知らないPDFのアクセシビリティ
lycorptech_jp
PRO
0
220
ザ・データベース、MySQL ~ OSC 2026 Sendai ~
sakaik
0
130
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
4
2.5k
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
240
RAG を使わないという選択肢
tatsutaka
1
270
【Snowflake Summit 2026 Recap!!】Snowflake Summit Deep Dive: Security & Governance
civitaspo
1
260
AIチャット検索改善の3週間
kworkdev
PRO
2
130
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Balancing Empowerment & Direction
lara
6
1.2k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
The SEO identity crisis: Don't let AI make you average
varn
0
490
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
180
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
150
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
Transcript
2022/12/26 YOSHINORI HAYASHI IOT ALGYAN エッジAI入門&活用シリーズ#5 『Azure Blob Storage on
IoT Edge編』
自己紹介 ・林 宜憲(@linyixian) ・2016~ MVP for Internet of Things ・所属
(株)リンシステムズ ・ほぼソフトウェアエンジニアのはずだけど、MVP受賞カテゴリーはハードウェア・・・・ ・仕事も業務システムの開発がメイン。たまにサーバー構築もしたり・・・ ・IoT Algyan関西支部で活動しています。
Azure Blob Storage on IoT Edgeの特徴 ・Edgeデバイス上でBlob Storageサービスが提供されます。 ・BlobはEdgeデバイス上のローカル領域に格納されます。 ・ブロックBlob及び追加Blobが利用できます。
・Edgeデバイス上のBlob StorageにはAzure Storageクライアントライブラリを使用してアクセスできます。 ・ローカルのBlob StorageからAzure Blob Storageへ自動的にアップロードすることができます。 ・アップロード完了後にローカルのBlobを自動削除することができます。
Azure Blob Storage on IoT Edge IoT Edge デバイス edgeAgent
edgeHub Blob Storage on IoT Edge Custom Module Blob Storage Storage Explorer
Blob Storageモジュールのデプロイ 準備 ・IoT Edgeデバイス ・IoT Hub ・Azure Storage Explorer(編集>「Azure
Stack APIを対象にする」に切り替える) ・Azure Storage(アップロード先のコンテナを任意に作成) ・ローカル Blob Storage アカウント名(任意) ・ローカル Blob Storage アカウントキー(https://generate.plus/en/base64で作成) ・ローカル Blob Storage コンテナ名(任意) Azure Potalからデプロイします
デモ
コンテナ―の作成オプション例 { "HostConfig": { "Binds": [ "/srv/containerdata:/blobroot" ], "PortBindings": {
"11002/tcp": [ { "HostPort": "11002" } ] } } }
モジュールツインの設定例 { "deviceAutoDeleteProperties": { “deleteOn”: true, //自動削除 “deleteAfterMinutes”: 5, //自動削除までの待機時間
“retainWhileUploading”: true //アップロード中の期限切れ時Blobを保持するかどうか }, "deviceToCloudUploadProperties": { “uploadOn”: true, //アップロードを実行するかどうか “uploadOrder”: “OldestFirst”, //Blobをコピーする順序 “cloudStorageConnectionString”: “クラウドストレージアカウントの接続文字列", "storageContainersForUpload": { “localblobstorage”: { //ローカルBlob Storageのコンテナ名 “target”: “cloudblobstorage“ //クラウドBlob Storageのコンテナ名 } }, “deleteAfterUpload”: true //アップロード完了時にデータを自動的に削除するかどうか } }
Linuxのコンテナユーザーにディレクトリアクセスを許可する sudo chown -R 11000:11000 /srv/containerdata:/blobroot sudo chmod -R 700
/srv/containerdata:/blobroot Storage Explorerの接続文字列 DefaultEndpointsProtocol=http;BlobEndpoint=http://<host device name>:11002/<your local accountname>; AccountName=<your local account name>;AccountKey=<your local account key>;
サンプルプログラム(抜粋) import cv2 from datetime import datetime from azure.storage.blob import
BlobServiceClient,BlobClient,ContainerClient container_name='localblobstorage' local_name='tmp.jpg' cn_string='DefaultEndpointsProtocol=http;BlobEndpoint=http://localhost:11002/<アカウント名>; AccountName=<アカウント名>;AccountKey=<アカウントキー>;’ serviceClient=BlobServiceClient.from_connection_string(cn_string) cv2.imwrite("tmp.jpg",frame) blob_name=d.strftime("%Y%m%d%H%M")+".jpg" blobClient=serviceClient.get_blob_client(container_name,blob=blob_name) with open(local_name,'rb') as data: blobClient.upload_blob(data)
参考 ・Azure Blob Storage on IoT Edgeのデプロイ https://learn.microsoft.com/ja-jp/azure/iot-edge/how-to-deploy-blob?view=iotedge-1.4 ・エッジでのBlob Storageについて
https://learn.microsoft.com/ja-jp/azure/iot-edge/how-to-store-data-blob?view=iotedge-1.4 ・ジョンさんの解説動画 https://www.youtube.com/watch?v=nDCTiQjm4Uw&t=903s ・サンプルプログラム https://github.com/linyixian/uploadblob
ご清聴ありがとうございました