Comment utiliser Kuzzle Backend avec les puces ARM Apple ?

Comment rendre votre Kuzzle Backend compatible avec la nouvelle architecture des processeurs Apple ? On vous dit tout dans notre article ! 

 

Read in english 


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 ?

 

Apple_M1 (1)

 

 

 

 

 

 

 

 

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 :

 

  1. 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.
  2. La seconde toutes nos images docker étaient construite sur une architecture amd64 seulement.

Nous avons changé la configuration de notre image elasticsearch, puis re-build et déployé nos images docker avec le support des architectures amd64 et arm64 pour permettre la compatibilité.

 

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

 

 

 

 

Kuzzle Team

Postes associés