![A Step-by-Step Guide to Successfully Migrate from Google IoT Core A Step-by-Step Guide to Successfully Migrate from Google IoT Core](https://www.iotforall.com/wp-content/uploads/2023/03/Google-IoT-Core-1-696x522.jpg)
The upcoming deprecation of Google IoT Core Services (“IoT Core”) has left organizations searching for an alternative technology partner to maintain the functionality and continuity of their IoT solutions.
At Leverege, we’ve helped companies around the world migrate from IoT Core. In the process, we’ve encountered common questions and knowledge gaps. This guide consolidates what we know into a comprehensive resource for companies replacing IoT Core.
The guide:
- Outlines requirements and criteria for a successful IoT Core migration;
- Lays out key questions and considerations in choosing a technology and implementation partner;
- Provides step-by-step instructions to migrate off of IoT Core; and
- Identifies key post-migration activities, including monitoring and optimization.
What are the Requirements and Criteria for a Successful IoT Core Migration?
When is the deadline to migrate off IoT Core?
Existing IoT Core customers must transition to a new device connection service before August 16, 2023. Following deprecation, access to IoT Core Device Manager APIs will no longer be available. IoT devices will be unable to connect to the Google Cloud IoT Core MQTT and HTTP bridges, and existing connections will be shut down.
IoT Core customers that do not develop IoT Core functionalities in-house, or fail to switch to another technology partner before the deprecation deadline, will no longer be able to send or receive data from the cloud.
When should I start preparing to replace IoT Core?
The sooner the better. We’ve seen some organizations procrastinate and then be surprised when they realize that there’s more time and effort to the migration than they expected. If you choose the right technology partner, then the software elements of the migration should be straightforward. Don’t underestimate the potential operational complexity, however.
By starting the process as soon as possible, enterprise organizations can evaluate and implement a new service, while reducing the risk of service interruptions and ensuring a smooth transition.
If my devices are dormant and I can’t update their firmware between now and August 16, 2023, what will happen to them?
Devices without updated firmware will no longer exchange data following IoT Core deprecation. All devices will need to be updated before the deprecation date.
If you’re unable to connect to and update some of your devices before the deprecation date, we’re sorry to say that those devices will no longer be operational and you should consider them lost.
Can I build an IoT Core replacement on my own?
Developing a solution to meet the requirements of a successful migration presents significant challenges. Key requirements include:
- Device management: Building a robust device management system requires careful planning and implementation to support device registration, updates, and decommissioning processes.
- Authentication and security: Implementing PKI and per-device authentication is complex, and ensuring the security of the entire system is crucial to protect sensitive data and prevent unauthorized access.
- Scalability: Creating a reliable and scalable system that can handle anywhere from dozens to millions of devices while maintaining low latency and high throughput is a significant technical challenge.
- Data ingestion and processing: Developing a seamless data ingestion and processing pipeline involves integrating various components and services to store, process, and analyze the data.
- Ongoing support and maintenance: If you develop in-house, you’ll need to allocate resources to support and maintain the system as the landscape evolves.
If you haven’t already started, it’s unlikely that you’ll have the time to build and test a custom-built IoT Core replacement between now and the deprecation deadline.
Even if you have started to develop an in-house replacement, we still recommend you focus on finding a suitable technology partner that offers a replacement ready and tested for implementation today to minimize risk and costs.
What does a successful Google IoT Core migration look like?
A successful migration should meet the following criteria:
- Timely Completion: A successful migration must be completed and tested before the IoT Core deprecation deadline (August 16, 2023).
- Minimal Service Interruption: The migration should cause minimal disruption to your IoT operations. By carefully planning the transition and migrating a test group of devices first, your team can identify and resolve any issues early in the process, ensuring a successful migration for the entire device fleet.
- Cost-Effectiveness: A successful migration involves minimal cost and engineering effort to update devices and modify cloud-side code. Selecting a new device connection service with a similar architecture and compatible technologies can streamline the migration process and reduce the overall cost and effort required.
- Matching (or Better) Functionality: The chosen alternative IoT Core replacement product should offer features comparable to those provided by IoT Core, ensuring your devices can continue to send and receive data without loss of functionality. If the replacement service has additional functionality on top of what IoT Core offers, even better.
- Scalability and Future-Proofing: The IoT Core replacement product should not only match the current scale of your IoT deployment but also be capable of supporting future growth. This includes ensuring the service can handle an increasing number of devices while maintaining low latency and high throughput.
- Maintained Security of Edge Devices: The security of edge devices should be maintained via certificates that can be managed, updated, and revoked after the transition.
How Do I Evaluate and Select the Right Technology and Implementation Partner?
Selecting the right technology and implementation partner is critical for a smooth migration from IoT Core. The following key questions should guide your decision-making process:
Does the partner provide the same pricing tiers, features, and performance as IoT Core, while providing additional capabilities out of the box?
Evaluate whether the partner’s offering aligns with your current needs and future growth plans and how the offering’s pricing compares to IoT Core. The more similar the offering is in functionality and price to Google IoT Core, the easier it will be to compare to build confidence that you can migrate smoothly.
Alternatives to IoT Core should enable enterprise customers to easily and securely connect devices to the cloud, manage devices inside of registries and device groups, and route data to a pub/sub topic. They should also include registries and device group management, secure key pairs, authentication methods, multiple supported protocols, and no-code message routing.
Does the technology partner provide a smooth path to connect your devices?
Your technology partner’s IoT Core replacement product should make it easy to set up an account, create new device registries, migrate existing certificates, and add entries to the new registry.
Do the partner’s hosting options work with your business model?
The partner’s hosting options should cater to your specific requirements and preferences. Evaluate two main hosting options and their associated considerations.
Option 1: Multi-tenant Cloud Hosted by the Connection Partner. This option is ideal for organizations that prefer to outsource infrastructure management and focus on their core business. Benefits can include:
- Lower Maintenance and Update Burden: With this option, the connection partner is responsible for hosting and maintaining the infrastructure, as well as providing updates to the connection platform.
- More Predictable Costs: Billing is typically usage-based, which might be more suitable for organizations with variable device usage patterns.
Option 2: Private Cloud Instance on Your Infrastructure. This option is suitable for organizations that require greater control over their infrastructure and data. Benefits can include:
- Greater Customization and Control: This option offers greater flexibility on domain names, hosting options, and infrastructure separation from other clients, allowing for a more tailored solution.
- Enhanced Security and Data Privacy: While multi-tenant environments provide a cost-effective solution, they may not offer the same level of isolation as private cloud instances. If the IoT Core replacement product runs in your infrastructure, your security teams will have greater control and visibility.
- Potential for Lower Overall Costs: While not guaranteed, this option may result in lower overall costs since you’ll be paying the true cloud costs (as negotiated via a commit agreement with Google Cloud) and more modest product license fees.
Does the partner offer regional support?
Choose a partner that offers infrastructure close to your devices for optimal performance. Latency is highly dependent on infrastructure location. Your latency requirements may also be relevant to the hosting option you select.
Does the partner offer a well-documented, complete API for device and registry management?
A comprehensive, well-documented API is essential for managing devices and integrating with existing systems. Technology partners with mature device connection solutions will have API documentation for device and registry management.
Are the connection and authentication protocols compatible with your existing devices?
Verify that the partner supports the same connection keys (ES256 or RS256) and authentication methods that your devices currently use.
Does the partner offer a migration service?
We recommend choosing a partner that provides white-glove migration assistance to transition devices from IoT Core, especially if you have large numbers of devices used in mission-critical applications. You can try to perform the migration solo using the partner’s documentation, but this may be slower and riskier.
Ideally, the technology partner will offer this migration assistance free of charge.
Does the partner have a core, long-term commitment to IoT?
Ensure the partner is incentivized to maintain and improve their IoT services as part of their core product offerings. Partners building technology platforms exclusively for IoT applications will always offer robust device connection capabilities.
If the partner’s core business isn’t in IoT, it increases the chance that you’ll have to go through another migration sometime in the future.
What Does a Good Migration Plan Look Like?
A good migration plan works backward from deprecation and builds in lead time to implement each step of the process well before August 2023.
Every migration step should be considered holistically prior to selecting a technology partner. Make sure your migration timeline includes sufficient time (1-4 weeks) to evaluate the technology partner guided by the questions in the previous section. This lead time will depend on the length of your organization’s typical procurement process.
Note: regardless of your IoT solution hardware and software architecture, you will need to update your device firmware for your solution to work post-migration. We have found this requirement is often misunderstood. If your devices use any Google client libraries to communicate with IoT Core, those will no longer be supported. You will need an MQTT or HTTP client that is not Google’s SDK. Even if you do not use Google’s SDKs, you will need to update the endpoint and authentication data on every device.
If your current devices support Firmware Over the Air (FOTA), this can be done with relatively little overhead for devices in the field. Otherwise, each device will need a high-touch update to continue functioning as expected. If this applies to you, ensure you have a detailed operational plan in place now to manually update every device. This step will have a significant operational impact on enterprises with tens of thousands of devices installed and configured, and the impact will scale with the size of deployment.
Sample Migration Plan
For reference before and during migration, we’ve created a sample migration plan, including expected timelines for each step. These timelines will depend heavily on the specifics of your enterprise IoT deployment.
Once you’ve selected a technology partner, migration from IoT Core involves four steps:
- Migrate your registry data to the IoT Core replacement product
- Update the firmware for all devices to integrate with the IoT Core replacement product
- Update your cloud infrastructure, if necessary
- Test your enterprise IoT solution
Step 1: Migrate your registry data to the IoT Core replacement product
Timeline: Expect 1 day to complete this step with your technology partner.
Migration Tasks:
- Set up your new registry
- Set up an account with the technology partner you selected.
- Create a new device registry with your technology partner
- (Optional) Migrate existing X.509 certificates to sign the new registry. If a new X.509 certificate is required, be aware that all devices will need new certificates.
- Migrate Your Registry Data
- Start with a small group of test devices and, for each device, add an entry to the new registry including the device’s identification and authentication details (public key, e.g.)
- After testing, repeat the previous step for the remaining devices in your fleet. The technology partner you select should be able to complete this step in one batch automatically.
Step 2: Update the device firmware to integrate with the technology partner
Sample Timeline: Expect this step to take anywhere from days to months, depending on the number of devices you have and whether they can be updated over the air. If you have a lot of devices that need to be touched directly to update, unfortunately, this could take a while so plan ahead.
Migration Tasks:
- Remove Google IoT Core SDKs and replace them with an MQTT or HTTP client library compatible with your device
- Update the connection information (e.g., change from googleapis.com to broker.partner.com) to match the new connection partner.
- Ensure your device can generate the authentication credentials needed to connect to the new service
- Update JWT payload, if needed
- Update MQTT client_id username, if needed
- Update MQTT username and password if needed (note: for solutions similar to IoT Core, a username is not needed, and password is a JWT)
- If a new X.509 certificate was required for the registry, issue new public/private key pairs for each test device.
Step 3: Update your cloud services (if necessary)
Sample Timeline: Expect this step to take days, depending on the number of services that interact with the Google IoT Core API.
Migration Tasks:
- If you have any cloud services that interact with the IoT Core API, for each such service remove any Google SDKs and replace them with off-the-shelf components for communicating with the connection partner’s API.
Step 4: Test your enterprise IoT solution
Sample Timeline: Expect this step to take 1 day.
- Connect a device to the new technology partner service
- Send telemetry data from the device, and ensure data is received at the final processor (e.g., a Pub/Sub subscriber)
- Send state data from the device and ensure data is received
- Send config data from the cloud to the device, and ensure data is received
- Cloud automations can create/read/update/delete devices, registries, etc.
What are the Key Action Items After Migrating from IoT Core?
After completing the migration, it’s crucial to monitor and optimize the performance of your devices and the new device connection service. Post-migration, conduct these five activities:
- Monitor device performance: Assess the performance of your devices, paying attention to any changes in latency, connectivity, or other issues that may arise due to the migration.
- Assess security and data privacy: Verify that the new connection partner maintains the same level of security and data privacy as Google IoT Core.
- Optimize device communication: If necessary, make adjustments to the devices’ communication settings to improve performance, such as adjusting the MQTT QoS levels or altering the frequency of data transmissions.
- Review billing and cost management: Ensure that your organization is getting the best value from the new device connection service by analyzing the pricing tiers and usage patterns.
- Collect user feedback: Gather feedback from end-users and other stakeholders to evaluate the success of the migration and identify any areas for improvement.
By understanding the requirements of your IoT solution and partnering with the right technology partner, you will ensure the continuity of your IoT operations. Start your migration as soon as possible to avoid any disruptions when Google IoT Core is deprecated.
Contact Leverege about Leverege Connect
Do you have questions about Google IoT replacement and migration? Leverege offers a production-ready replacement for Google IoT Core, meeting all of the considerations and migration practices detailed above. For more information, please contact Leverege at google-iot@leverege.com.
Additional information about connected device architectures on Google Cloud can be found here.