Flexibility and reliability of cloud hosting for an IoT solution
Modern IoT solutions make our environment smarter and more responsive, connecting the digital and physical things around us. Of course, such complex systems require highly flexible, secure and advanced hosting for smooth, reliable and fast operation.
Read the predictions of Nicolas Zieglé, Logifleet's chief R&D technician, on a very thoughtful and useful logistic IoT product and select the right cloud hosting provider for it.
1. What is Logifleet's main expertise?
Logifleet is a Swiss based company with offices in Lausanne and St. Gallen. We provide software solutions specifically developed for fleet and asset management, mainly focused on Swiss companies at the moment. Our flagship product is an IoT solution called Logifleet 360°, built to manage and optimize the use of vehicles, machines and tools to improve the logistics of any company.
Logifleet's target definition is actually quite broad, as our customers' needs vary greatly: we have customers who use our product in the construction sector for automatic invoicing, others use temperature tracking and alerts because they deliver food or medicine. We work with companies of all sizes: some need real-time tracking for 4 or 5 major vehicles, others have over 1500 connected objects on the same account, and need detailed monthly reports. Any installed device reports from 3 to 1500 messages per day in the most extreme cases, but we adjust it to get only the necessary information and avoid "data pollution".
2. What software and applications are you using to carry out the project? Why did you choose them and how do they solve the assigned tasks?
We use only open source tools: Elasticsearch as the main database, Kafka for data processing, and some Spring boot projects to serve APIs to the different fronts and also as a producer and consumer of Kafka. We also have a Redis cluster for caching, a Gisgraphy cluster for geocoding, an sFTP server and some CD/CI servers. I may be forgetting a few.
Kafka is the most recent change in our architecture and is perfectly suited to our needs, as Logiflleet has to process thousands of messages per minute. Elasticsearch is quite capable of indexing and searching quickly through this volume. We also have a Kibana server for monitoring the Elasticsearch cluster, which is a really cool tool for an architecture like this.
3. What are your and your customers' requirements for cloud hosting?
From Logifleet's R&D point of view, service availability and data security are of equal importance. Price is also important: we are a small and medium-sized company and we deal with big data and a complete infrastructure built for that. So the infrastructure has to be robust, able to handle a lot of processing and still be affordable for us.
These are really the three biggest requirements for us!
Our customers have basically the same requirements in terms of availability and security, and the fact that their data is hosted in Switzerland is also a big advantage for them.
4. Which hosting solutions did you use before? What difficulties did you encounter with them?
At the very beginning of our project, we hosted the data and applications ourselves, but we could not devote enough time to maintaining the server. We had to deal with problems with the air conditioning and the arrival of summer. That's an old story now...
We then switched to another cloud provider, but even though it was one of the biggest in the industry in Switzerland, it was quite behind in terms of technology. They were working on their customer service, as it was difficult at the time. After spending a night working on a disaster recovery situation, with no disaster but just the loss of a server, we decided to move to a more modern provider.
5. Why did you decide to choose Jelastic PaaS? What benefits helped you make this decision and what results are you getting now?
This may seem like a secondary function, but we liked the idea of being able to control the nodes using a simple graphical interface (this was a big change from our previous way of working with servers), and the dynamic billing based on threshold and server consumption. After 3 years of using Jelastic, we are definitely satisfied with this choice.
Also, now that we are moving to a docker-oriented model for some components, and to a native Jelastic container for others (spring boot is the perfect example), it really helps us to already be on a platform that handles this.
6. With what Jelastic hosting provider do you work? Why did you choose this
6. Which Jelastic hosting provider do you work with? Why did you choose this provider? What results did you get in terms of performance and support?
We discovered Hidora following the decision to change our cloud provider in 2017. It was important for us to have French-speaking human support as well as a third-party partner of our choice - Clever net systems - that helps us with infrastructure maintenance and architecture updates.
Our goal was to spend less time on DevOps and infrastructure tasks to focus on development and with Hidora's competitive pricing this was feasible. In addition to the good communication between our cloud and infrastructure partners, Jelastic allows us to manage small changes quite easily directly, which makes everyone's job easier and more enjoyable.
7. Why did you decide to use a local service provider? What is the role of personal and sensitive data regulation in your company?
Even if we don't work on private vehicles and objects, we still deal with a lot of sensitive information, and I personally consider anything geo-tagged with a time stamp and identifier to be sensitive if you know what it represents or if you can link it to a company or a human.
The simple fact that everything (our company, our customers, our data) is in the same country makes it easier to manage: there is only one law to apply when it comes to storing and regulating sensitive data. Of course, being 'hosted in Switzerland' also has its effects in the minds of our clients, but I am especially happy to work with a local company while using modern cloud technology. This was not possible only a few years ago!
8. What do you think about containerisation? What difficulties (if any) have you encountered in migrating from a VM-based infrastructure to a container-based infrastructure? How are you currently managing containers?
We were a bit scared and sceptical at first, because of our old habits, but we tried it on a few servers, first for our Jenkins, then for Redis and our Gisgraphy geocoder, and we realised the benefits of the container-based architecture.
Personally, I was afraid of "losing control" of the infrastructure at the machine level, but after a few years of maintaining VM-based servers, it's a no-brainer for me now. It simplifies the overall architecture, integrates easily into a full CD/CI environment and hides the things I don't need to know.
9. What do you think of Jelastic's pay-per-use pricing model?
We have peaks always at the same time of the day (during working hours) because our customers are mainly located in Switzerland. This allows us to decrease the server performance during weekends and nights. We can't implement this on all our servers at the moment, but we are working on it.
10. Share your future plans for the project and for cooperation with Jelastic Provider.
As we increase the size of our R&D, we have to spend time on our CD/CI at the moment, and the plan is basically to have as many servers hosted in containers as possible to get all the benefits. Our vendor Hidora is helping us with that, as well as our infrastructure partner. Basically, we're migrating servers hosted on old-school Linux-based operating systems to the native Jelastic container where possible, or to a Docker container.
11. Please describe your stack, types of environment, architecture if possible.
Our product involves many tools and applications, as we have a purpose-built architecture with millions of messages processed every day from all our customers' IoT devices:
- 2 back-end and front-end servers for hosting our main java application (spring).
- An Elasticsearch cluster for the database (7 "data" nodes, 3 "master" nodes, 4 "client" nodes and 1 Kibana node for analysis).
- Some servers for Redis (1 Redis cluster composed of 3 servers), Kafka (3 Kafka + 1 Zookeeper server), 2 geocoding servers using Gisgraphy.
- Some Kafka-consuming spring boot applications running on individual nodes.
At the moment, about half of these servers are running on CentOS VPS, but we plan to have everything in containers by the end of the year.
12. Highlight three main points that you like about Jelastic PaaS.
I would say that the 3 main benefits of the PaaS solution that Jelastic offers are that it gives us a new way to manage our infrastructure securely, at a reduced cost, and in a simplified way. We can always add virtual machines when it's really the only way.
- Two-factor authentication was a prerequisite for us in terms of server security. We need access to the dashboard to view the status of the server, plan a migration or improve performance, but access to production is a sensitive issue at Logifleet. Jelastic allows us to consider getting ISO-27001 certification with our Swiss provider, which would have been impossible with our previous provider.
- Obviously the large container market is useful in our industry, but managing cloudlets (resources allocated to a server) on the fly, without having to reboot, is really the game changer for us, as we can finally oversize our server and scale it down to what we need, without having to plan it days in advance. It's a price optimization, and I like the idea that with this kind of functionality, less resources are reserved and "wasted" for nothing on a large scale.
- The GUI and direct access is also something I'd like to highlight: its well thought-out design allows for a quick overview of the status of the entire infrastructure, and many accesses are simplified once logged in. For example, the merged direct access to /var/log of servers in the same container is really useful when you need quick and secure access to check something. It's a small gain, but it adds up to days at the end of the year.
Matthieu Robin is the CEO of Hidora, an experienced strategic leader, a former system administrator who has managed and configured more environments manually than anyone else on the planet and after realising that it could be done with a few clicks created Hidora SA. He is a regular speaker at conferences and helps companies optimise their business processes with DevOps. Follow him on Twitter @matthieurobin.