To solve the problem of drivers going the wrong way on highways, Robert Bosch tried very hard to find some solution. Atlast he found the wrong-way driver warning (WDW) service and software development kit (SDK). It is designed for use by app developers and original equipment manufacturers (OEMs), the architecture pivots on an innovative map-matching algorithm and the scalability of Microsoft Azure Kubernetes Service (AKS) in tandem with Azure HDInsight tools that integrate with the Apache Kafka streaming platform.
When the product team brainstormed the idea to solve the problem of wrong-way driving, they did not know whether it was technically possible. For such a service to work commercially, it had to locate vehicles in real time with pinpoint precision. Smartphones or an onboard connectivity unit can anonymously record GPS coordinates and can send that location data to the cloud if the device is in a hotspot area, but GPS satellites broadcast their signals in space with only limited accuracy. What is received depends on many factors, including satellite geometry, signal blockage, atmospheric conditions, and the design and quality of the receiver. The team decided to offload the work of scaling and cluster maintenance to a managed service in a public cloud with a global reach. Bosch had a trusted partnership with Microsoft and so, Azure Kubernetes Service was the obvious choice. A team of Microsoft cloud solution architects worked closely with Bosch engineers, who provided valuable feedback to Azure product teams. Microsoft continues to work with Bosch teams around the world. Working together, they devised a solution that produced the speed Bosch needed. The key was orchestration. By orchestrating the deployment of containers using AKS, Bosch would get repeatable, manageable clusters of containers. Bosch already had a continuous integration (CI) and continuous deployment (CD) process to use in producing the container images and orchestration. The result: increased speed and reliability of deployments. AKS also offered the simplicity of a managed Kubernetes service in the cloud. It provided the elastic provisioning that Bosch wanted, without the need to manage its own infrastructure. In addition, the developers did not have to rethink all their design decisions. Instead, they could take the core business logic developed on-premises using the open-source tools they knew and run the solution virtually as is, within a faster infrastructure with a worldwide reach. The developers can deploy self-managed AKS clusters as needed, and they get the benefit of running their services within a secured network environment. In addition, by running their solution on Azure and AKS, the average time to calculate whether a driver is going the wrong way could be improved to approximately 60 milliseconds.
The wrong-way driver warning solution runs as a service on Azure and provides an SDK. Anyone can download the SDK and try it out. The APIs grant a free request quota for test accounts. For production use, service providers request permission and then use the WDW SDK to register themselves for their own API authentication keys via the Azure API Management developer portal.
The point of ingress for the WDW service is Azure API Management, which works in combination with Azure App Gateway, a managed global load-balancing service that can perform Layer-7 routing and SSL termination. The gateway decouples clients from services and acts as a reverse proxy, routing requests from clients to services. For years, Bosch developers had been using the Docker platform to containerize their code. For the first time, however, the WDW team hosted the Docker images in Azure Container Registry. Azure Container Registry is compatible with the open-source Docker Registry v2, so the developers could use the same Docker CLI tools they already knew.
AKS is deployed within a custom virtual network that keeps the applications isolated.