Ansible for Raspberry Pi - here is a better way to go
Ansible is a great tool for running automation on servers and Linux virtual machines, but what if we would like to deploy BASH commands on thousands of Raspberry Pis running all over the world, in production, in different environments and networks? Here is a great way to go solution that has been built especially for embedded Linux devices, like Raspberry Pi.
Ansible for Raspberry Pi solution, called Upswift.io
Upswift is an IoT platform that provides one place to manage and control Raspberry Pis like devices remotely. Ansible has been built to work on server environments, where the server can be reached through a simple SSH session. While with IoT devices and Raspberry Pis, we can't ensure that the IP always stay the same, moreover, in most of the cases the Raspberry Pis placed over double-nat, which means that the IP of the device is unreachable for the outside network, and it is not possible to reach the device SSH server from everywhere in the world, just from the same local network.
How can we run automation and send BASH commands to a fleet of Raspberry Pis?
Upswift device management platform includes a few amazing tools that let you send BASH commands to all of your devices even if they over double-nat, other networks, or under firewalls. You are also able to deploy a BASH script, run them, and get the output of each device.
What about SSH to the Raspberry Pi?
There may be situations where a much deep debugging is needed, and we would like to have access to the Raspberry Pi device terminal. For these cases, there is a great tool called Remote Control, that provides a fast and secure way to have full access to the device terminal, all through Upswift web platform.
Not less important - Monitoring
Unlike Ansible, Upswift is not just a tool for running and managing BASH automation, with Upswift you can completely manage and maintain your product remotely. Having the ability to monitor each and every device resources like CPU, RAM, DISK usage and set specific alerts to control bad situations, as well as sending relevant data from our Raspberry Pi application to Upswift cloud platform. All the needed features are here to provide a confident way to manage a fleet of thousands or even millions of Raspberry Pis or any other embedded Linux or RTOS remotely.
How can I start deploying BASH commands remotely?
No need to create ssh keys, or learning a new language, to connect a device, all you need is to run 1 command on the device terminal - it takes less than 60 seconds, and here we are! you will be able to see your Raspberry Pi "online" under the "Devices" category, simple as that.
The next step is to change the name of the device and even set a nice description, and we are ready to send BASH commands, run BASH scripts or deploy OTA updates, all remotely and just in a few seconds.
You guessed it right, this is the new generation of managing and controlling Raspberry Pis and IoT devices!
Going to production?
Make sure to arrange your Raspberry Pis to groups. Those groups should help you manage the devices in the right way. Sending commands to a specific group, making sure that all worked as you wished, and sending the same command to other groups as you would like.