Comment rendre votre Kuzzle Backend compatible avec la nouvelle architecture des processeurs Apple ? On vous dit tout dans notre article !
Fin 2020, Apple a annoncé la commercialisation de ses propres processeurs, les puces M1, et à mis fin à sa collaboration avec Intel.
Au lancement de la nouvelle architecture ARM des processeurs Apple, certaines solutions n’étaient pas encore compatibles. Kuzzle Backend en faisant partie, notre équipe à œuvré pour rendre notre backend exploitable avec cette architecture de puce.
Pourquoi cette feature ARM pour votre Kuzzle Backend ?
Les nouveaux ordinateurs d’Apple fonctionnent désormais avec l'architecture ARM Apple Silicon et mettent fin à l'ère de l'architecture x86.
La principale différence entre les deux architectures réside dans le choix de la conception de leur jeu d’instruction. En effet, le x86 est une architecture CISC (Complex Instruction Set Computer), tandis que l’ARM est une architecture RISC (Reduced ISC).
Cependant, la plupart des applications ou solutions sont conçues pour l’architecture x86 d’Intel. Nous avons dû analyser d’où proviennent les erreurs de comptabilité afin de les résoudre et ainsi utiliser Kuzzle Backend sans perte de performances sur un ordinateur équipé d’un processeur avec une architecture ARM.
Solution Kuzzle Backend pour l'architecture ARM Apple
Nous nous sommes rendu compte que Kuzzle Backend ne pouvait pas être lancé sur les puces arm 64 pour deux raisons :
- La première étant que Kuzzle Backend utilise une images elasticsearch modifiée et qu’une de ces modifications n’était pas supportés par le nouveau processeur d’Apple.
- La seconde toutes nos images docker étaient construite sur une architecture amd64 seulement.
Comment lancer Kuzzle Backend avec un M1 ?
Installez Docker :
Pour utiliser Kuzzle Backend sur votre Macbook m1, vous avez besoin de Docker et de Docker-compose. Si vous ne possédez pas déjà ces outils, vous pouvez consulter ces tutoriels :
Paramétrez Kuzzle Backend :
Vous devez ensuite paramétrer votre application Docker Desktop afin qu’elle ait au minimum 3GB de ram allouée. Pour effectuer cette action vous devez aller dans les paramètres de l'application Docker Desktop puis dans Ressources. Vous pourrez gérer votre RAM allouée avec la partie Memory.
Installez Kuzzle Backend :
Si vous n’avez pas d’application Kuzzle Backend existante, veuillez vous référer à la documentation ci-dessous pour en créer une facilement : Run Kuzzle Backend
Une fois dans votre application créée, Kuzzle Backend vous a installer toutes les dépendances associées à son bon fonctionnement grâce à la commande suivante :
npm install:docker
Vous pouvez maintenant lancer votre application Kuzzle Backend avec la commande :
docker-compose up
Pensez à consulter l'intégralité de la documentation et découvrez notre Getting Started.
Une “Godoc” est également générée depuis Github via les commentaires que nous laissons dans le code : https://pkg.go.dev/github.com/kuzzleio/sdk-go/
Conclusion
Nous espérons que notre article vous permettra d’utiliser Kuzzle Backend à 100% de ses capacités avec le nouveau processeur d’Apple M1.
Le détail de chaque étape pour résoudre le manque de comptabilité vous permettra d’y faire face aisément.
Merci à Clément et Matisse pour la rédaction de cet article : )
Rejoignez la communauté !
Kuzzle Backend est en constante évolution, tout comme notre communauté, alors venez nous rejoindre sur Discord à l'adresse suivante http://join.discord.kuzzle.io.
Nous sommes un logiciel libre, alors n'hésitez pas à contribuer ;)
https://github.com/kuzzleio/kuzzle/
https://github.com/kuzzleio/kuzzle/blob/master/CONTRIBUTING.md