Question regarding bi-directional streaming: Is this issue( https://github.com/grpc/grpc-go/issues/484#issuecomment-288880402) solved because of bidirectional rpc? -- it is almost exactly the same as my use case.
On Mon, Feb 5, 2018 at 3:41 PM, 'Carl Mastrangelo' via grpc.io < grpc-io@googlegroups.com> wrote: > Sounds like you want to use a client streaming rpc. The client will start > an RPC, and periodically send messages to the server, which will never > respond. This works well if the time between updates is small perhaps no > more than a minute apart. If it's longer, it would be better to just make > it unary because the connection will be at risk of being torn down by > intermediary things. > > If you trust the hardware you are running on, a common way of authing > would be client side certificates, but we leave the problem of certificate > rotation and revocation up to you. In gRPC, auth is more commonly > (always?) done at the RPC level. Each RPC would need an auth token, like a > JWT. > > If you want a command and control style system, you'll need to use a > bidirectional streaming RPC. This would let the client phone home, and > wait for messages to come down from the server to be executed. The client > must initiate the connection and the RPC, but after that each side is a > peer. > > There are examples on how to do each style of these commands in the github > repos. Look for "Route Guide" examples on how to do it in each language. > > On Sunday, February 4, 2018 at 5:37:40 PM UTC-8, johnpea...@gmail.com > wrote: >> >> I manage a fleet of linux devices and I need a way to send >> telemetry data(CPU, memory, drives, etc.) from devices to a centralized >> server and also send commands(linux service restarts for example) from >> server to devices to execute on the device. The 15 different linux >> devices are bare metal boxes in 15 different locations access to WAN with a >> dynamic IP address. In a year the number of devices could jump to 100. >> >> I'm looking for suggestions on: >> - how to gather telemetry data to send to grpc server >> - how authenticate and identify devices >> - how to run commands locally on each device and report back >> >> Thanks. >> > -- > You received this message because you are subscribed to a topic in the > Google Groups "grpc.io" group. > To unsubscribe from this topic, visit https://groups.google.com/d/to > pic/grpc-io/YB0HErGYZPw/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > grpc-io+unsubscr...@googlegroups.com. > To post to this group, send email to grpc-io@googlegroups.com. > Visit this group at https://groups.google.com/group/grpc-io. > To view this discussion on the web visit https://groups.google.com/d/ms > gid/grpc-io/66ed336c-6de9-4f80-b0e0-55b05338e45a%40googlegroups.com > <https://groups.google.com/d/msgid/grpc-io/66ed336c-6de9-4f80-b0e0-55b05338e45a%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+unsubscr...@googlegroups.com. To post to this group, send email to grpc-io@googlegroups.com. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/CAKNtY_wz%2Bi%2B%3DADc758RDG-1UphP6MSLd-LuCyDQE1i%3Dg_zotwQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.