Softlandia background

Softlandia

Blog

How to migrate to Azure from the discontinued Google IoT Core?

Google recently announced the discontinuation of its popular IoT Core cloud service. This is very bad news for many companies. Thousands of enterprises have built their IoT platform with the help of Google’s IoT Core offering.

Google is very well known for shutting down its services. There’s even a separate site that tracks the services Google has killed. In terms of business, Google Cloud is not performing nearly as well as its main competitors Amazon AWS and Microsoft Azure. Due to this, I believe it’s justifiable to ask if one can trust Google as a cloud vendor anymore. There are some dark clouds hovering over the Google Cloud.

If you are using Google Cloud IoT Core, it’s good to start a migration process to some other cloud platform or solution right now. Migration of complex IoT systems is not easy and requires time. Unfortunately, time is not something that you have since the deprecation schedule of the IoT Core is very tight: less than a year to figure out alternatives and complete the migration process.

To start the migration process, you will have to establish an understanding of the current system architecture and its vendor-lock into Google. This depends on how the software architecture has been designed: is it using Google’s software development kits (SDK) or not? These SDKs are usually used both on the devices themselves and on the cloud side to consume data and manage the devices.

The software that is running in the IoT devices uses most likely the MQTT protocol to connect to the IoT Core services. This connection and its management are usually abstracted away with the help of the cloud provider’s SDKs. Replacing these with basic MQTT client libraries or another cloud provider’s SDKs requires quite a lot of manual coding work. However, if you have chosen to connect to the cloud by using for example some open source MQTT client library, the migration process is very likely much easier as you are not dependent on the cloud providers' own libraries.

The same applies to the cloud side. Cloud infrastructure receives the data from IoT Core likely via Google Cloud’s Pub/Sub. Management of the devices is usually done by some cloud SDK or application programming interface (API) on the cloud side. You could choose to move the whole infrastructure to some other cloud vendor or keep it partially in Google Cloud and move only the IoT Core functionality to some other cloud.

In any case, there’s quite a lot of manual work to do since all the APIs in each cloud are very different. Therefore, it makes probably the most sense to move the whole solution and infrastructure stack to another cloud vendor to avoid similar issues in the future.

We here at Softlandia have used Azure’s IoT services extensively in multiple different IoT projects. On Azure’s side, the equivalent of Google Cloud’s IoT Core is Azure IoT Hub. On AWS the equivalent is called IoT Core. Additionally, Azure and AWS have other useful IoT services. For example, Azure IoT Central is a cloud platform that makes device management easy while shipping with data visualizations and dashboards. Azure IoT Edge is an open-source tool with analytics and machine learning capabilities on the device. We are also familiar with the Google Cloud IoT Core and have integrated IoT devices into it.

If you are looking for a partner to help with the migration process, we are ready to help. Drop us a message at sales@softlandia.fi for more information.