本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
串流管理員
串流管理員元件 (aws.greengrass.StreamManager
) 可讓您處理資料串流,以 AWS 雲端 從 Greengrass 核心裝置傳輸到 。
如需如何在自訂元件中設定和使用串流管理員的詳細資訊,請參閱 管理核心裝 Greengrass 資料串流。
版本
此元件具有下列版本:
-
2.2.x 版本
-
2.1.x
-
2.0.x
注意
如果您使用串流管理員將資料匯出至雲端,則無法將串流管理員元件的 2.0.7 版升級至 v2.0.8 和 v2.0.11 之間的版本。如果您是第一次部署串流管理員,強烈建議您部署最新版本的串流管理員元件。
Type
此元件是一般元件 (aws.greengrass.generic
)。Greengrass 核會執行元件的生命週期指令碼。
如需詳細資訊,請參閱元件類型。
作業系統
此元件可以安裝在執行下列作業系統的核心裝置上:
Linux
Windows
要求
此元件有下列需求:
-
字符交換角色必須允許存取您搭配串流管理員使用的 AWS 雲端 目的地。如需詳細資訊,請參閱:
-
支援在 中執行串流管理員元件VPC。若要在 中部署此元件VPC,需要下列項目。
-
串流管理員元件必須與您發佈資料的 AWS 服務具有連線能力。
-
Amazon S3:
com.amazonaws.
region
.s3 -
Amazon Kinesis 資料串流:
com.amazonaws.
region
.kinesis-streams -
AWS IoT SiteWise:
com.amazonaws.
region
.iotsitewise.data
-
-
如果您將資料發佈至
us-east-1
區域中的 Amazon S3,此元件預設會嘗試使用 S3 全域端點;不過,此端點無法透過 Amazon S3 VPC 介面端點使用。如需詳細資訊,請參閱AWS PrivateLink 適用於 Amazon S3 的限制和限制。若要解決此問題,您可以從下列選項中選擇。-
透過在 中設定 ,將串流管理員元件設定為使用
us-east-1
區域中的區域 S3-Daws.s3UseUsEast1RegionalEndpoint=regional
端點JVM_ARGS
。 -
建立 Amazon S3 閘道VPC端點,而不是 Amazon S3 介面VPC端點。S3 閘道端點支援存取 S3 全域端點。如需詳細資訊,請參閱建立閘道端點。
-
-
端點和連接埠
除了基本操作所需的端點和連接埠之外,此元件還必須能夠對下列端點和連接埠執行傳出請求。如需詳細資訊,請參閱允許裝置流量透過 Proxy 或防火牆。
端點 | 連線埠 | 必要 | 描述 |
---|---|---|---|
|
443 | 否 |
如果您將資料發佈至 ,則此為必要項目 AWS IoT Analytics。 |
|
443 | 否 |
如果您將資料發佈至 Firehose,則為必要項目。 |
|
443 | 否 |
如果您將資料發佈至 ,則為必要 AWS IoT SiteWise。 |
|
443 | 否 |
如果您將資料發佈至 S3 儲存貯體,則為必要。 您可以將 取代 |
相依性
部署元件時, AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求,才能成功部署元件。本節列出此元件發行版本的相依性,以及為每個相依性定義元件版本的語意版本限制。您也可以在 AWS IoT Greengrass 主控台
如需元件相依性的詳細資訊,請參閱元件配方參考。
組態
此元件提供下列組態參數,您可以在部署元件時自訂這些參數。
STREAM_MANAGER_STORE_ROOT_DIR
-
(選用) 用於存放串流之本機目錄的絕對路徑。此值必須以正斜線開頭 (例如
/data
)。您必須指定現有的資料夾,而且執行串流管理員元件的系統使用者必須具有讀取和寫入此資料夾的許可。例如,您可以執行下列命令來建立和設定資料夾
/var/greengrass/streams
,而您指定該資料夾為串流管理員根資料夾。這些命令允許預設系統使用者ggc_user
讀取和寫入此資料夾。sudo mkdir /var/greengrass/streams sudo chown ggc_user /var/greengrass/streams sudo chmod 700 /var/greengrass/streams
預設:
/work/aws.greengrass.StreamManager/greengrass/v2
STREAM_MANAGER_SERVER_PORT
-
(選用) 用於與串流管理員通訊的本機連接埠號碼。
您可以指定
0
使用隨機的可用連接埠。預設:
8088
STREAM_MANAGER_AUTHENTICATE_CLIENT
-
(選用) 用戶端必須先進行身分驗證,才能與串流管理員互動。串流管理員SDK控制用戶端和串流管理員之間的互動。此參數決定哪些用戶端可以呼叫 Stream Manager SDK 來使用串流。如需詳細資訊,請參閱串流管理員用戶端身分驗證。
如果您指定
true
,串流管理員SDK僅允許 Greengrass 元件做為用戶端。如果您指定
false
,串流管理員會SDK允許核心裝置上的所有程序成為用戶端。預設:
true
STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH
-
(選用) 串流管理員可用來匯出資料的平均最大頻寬 (以每秒 KB 為單位)。
預設:無限制
STREAM_MANAGER_EXPORTER_THREAD_POOL_SIZE
-
(選用) 串流管理員可用來匯出資料的作用中執行緒數量上限。
最佳大小取決於您的硬體、串流磁碟區和規劃的匯出串流數量。如果匯出速度很慢,您可以調整此設定,找出適合您硬體和商務案例的最佳大小。核心裝置硬體的 CPU和 記憶體是限制因素。首先,您可以嘗試將此值設定為等同於裝置上處理器核心的數量。
請小心不要設定高於硬體可支援的大小。每個串流都會耗用硬體資源,因此請嘗試限制受限裝置上的匯出串流數量。
預設:5 個執行緒
STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES
-
(選用) 分段上傳到 Amazon S3 中部分的大小下限 (以位元組為單位)。串流管理員使用此設定和輸入檔案的大小,來決定如何在分段PUT請求中批次處理資料。
注意
串流管理員使用串流
sizeThresholdForMultipartUploadBytes
屬性來判斷是否要以單一或分段上傳方式匯出至 Amazon S3。 AWS IoT Greengrass 元件可以在建立匯出至 Amazon S3 的串流時設定此閾值。預設:
5242880
(5 MB)。這也是最小值。 LOG_LEVEL
-
(選用) 元件的記錄層級。從下列日誌層級中選擇,此處依層級順序列出:
-
TRACE
-
DEBUG
-
INFO
-
WARN
-
ERROR
預設:
INFO
-
JVM_ARGS
-
(選用) 啟動時要傳遞給串流管理員的自訂 Java Virtual Machine 引數。依空格分隔多個引數。
只有在您必須覆寫 使用的預設設定時,才使用此參數JVM。例如,如果您計劃匯出大量串流,可能需要增加預設堆積大小。
範例:組態合併更新
下列範例組態指定 使用非預設連接埠。
{ "STREAM_MANAGER_SERVER_PORT": "18088" }
本機日誌檔案
此元件使用以下日誌檔案。
檢視此元件的日誌
-
在核心裝置上執行下列命令,以即時檢視此元件的日誌檔案。將
或 取代/greengrass/v2
C:\greengrass\v2
為 AWS IoT Greengrass 根資料夾的路徑。
變更記錄
下表說明每個版本元件的變更。
版本 |
變更 |
---|---|
2.2.0 |
|
2.1.13 |
|
2.1.12 |
|
2.1.11 |
針對 Greengrass nucleus 2.12.0 版更新版本。 |
2.1.10 |
|
2.1.9 |
針對 Greengrass nucleus 2.11.0 版更新版本。 |
2.1.8 |
|
2.1.7 |
|
2.1.6 |
|
2.1.5 |
針對 Greengrass nucleus 2.10.0 版更新版本。 |
2.1.4 |
|
2.1.3 |
|
2.1.2 |
|
2.1.1 |
針對 Greengrass nucleus 2.8.0 版更新版本。 |
2.1.0 |
|
2.0.15 |
針對 Greengrass nucleus 2.6.0 版更新版本。 |
2.0.14 |
此版本包含錯誤修正和改善。 |
2.0.13 |
針對 Greengrass nucleus 2.5.0 版更新版本。 |
2.0.12 |
|
2.0.11 |
針對 Greengrass nucleus 2.4.0 版更新版本。 |
2.0.10 |
針對 Greengrass nucleus 2.3.0 版更新版本。 |
2.0.9 |
針對 Greengrass nucleus 2.2.0 版更新版本。 |
2.0.8 |
針對 Greengrass nucleus 2.1.0 版更新版本。 |
2.0.7 |
初始版本。 |