Best way to restart a Greengrass component, from another component

0

My requirement is to have one greengrass component, upon receipt of an MQTT message, update the local config file for another component, and then restart the other component.

Upon restarting, this config file is read by another gg component.

My issue is running the 'greengrass-cli component restart' command from another component, as it does not have sufficient priveleges to run that command.

I know another approach would be to send an IPC message from one component to another, and upon receipt of that message, the receiving component could do some restart/re-init task. However in our use case, it would be far easier to simply restart the other component altogether.

Are there any suggested ways to achieve this? Is it possible to restart a component in any way other than the 'greengrass-cli component restart' command?

3回答
0

Another way to fulfill your use case is to have the "other" component to watch the config file. This is similar to the IPC solution but with this approach you are not limited to the programming languages supported by the Greengrass SDK.

AWS
エキスパート
回答済み 2年前
0

Using the CLI is the only way to restart a component at this time. Assuming that you control the code in the component which is reading the configuration file, you could update it such that it calls exec to create a new instance of itself with the updated configuration. Even more ideally, it could be written to dynamically update based on configuration changes, for example by using our configuration subscription IPC https://docs.aws.amazon.com/greengrass/v2/developerguide/ipc-component-configuration.html#ipc-operation-subscribetoconfigurationupdate.

AWS
エキスパート
回答済み 2年前
0

Hi , apologies for the delay on this follow up -

The documentation for the greengrass-cli component has a configuration for "AuthorizedPosixGroups". If I explicitly add the user (ggc_user) to this group, will I be able to invoke the restart command from another component without using any of the workarounds suggested?

LInk to docs: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-cli-component.html

回答済み 2年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ