En utilisant NCache in Azure Kubernetes Service (AKS)

Cluster Azure Kubernetes avec conteneurs Docker

Azure Kubernetes Service (AKS) est une plate-forme d'applications de conteneurs open source de Microsoft basée sur l'orchestrateur de conteneurs Kubernetes pour le développement et le déploiement d'applications d'entreprise.

Si vous travaillez avec .NET/.NET Core ou Java s'exécutant dans Azure Kubernetes et que vous souhaitez utiliser NCache pour améliorer ses performances et son évolutivité pour les pics de charges de transactions, soyez assuré que NCache prend pleinement en charge cet environnement.

Regardez cette vidéo pour voir à quel point il est facile de déployer NCache pour votre cluster Azure Kubernetes en tant que déploiement Docker.

AKS est un service de conteneur géré disponible sur le cloud public Microsoft Azure. Il est construit autour de conteneurs d'applications alimentés par Docker tandis que les services d'orchestration et de gestion sont fournis par Kubernetes et aujourd'hui, je vais vous montrer des détails étape par étape pour le déploiement et l'utilisation de NCache dans cette plateforme. Commençons rapidement avec cela.

NCache Déploiement dans AKS

Tout d'abord, passons en revue NCache Déploiement dans AKS.

utilisant-ncache-dans-azure-kubernetes-service-aks
En utilisant NCache in Azure kubernetes Service (AKS)

Voici un déploiement typique de NCache dans l'AKS. Je montre un seul cluster Kubernetes avec différents déploiements d'applications ainsi que NCache Déploiement de cluster. J'ai une application Web Java utilisant Docker Image sur différents pods. J'ai également un service Web Java, à nouveau déployé sur différents pods et ces applications Java utilisent le client Java de NCache pour me connecter à mon cluster de cache.

De même, j'ai un ASP.NET Core Application Web déployée sur différents pods à l'aide de Docker Image et ceux-ci, vous savez, ces instances utilisent .NET Core installation de NCache pour connecter mon cluster de cache. Mon cluster de cache est également basé sur Docker Image, qui est une image basée sur Linux de NCache, disponible sur notre site Web ainsi que sur Docker Hub et c'est ce que j'ai utilisé pour créer un cluster de cache sur différents pods.

En plus j'ai ça NCache Passerelle de surveillance à distance. Il s'agit d'une passerelle pour les opérations de surveillance et de gestion effectuées depuis l'extérieur de ce cluster Kubernetes pour gérer et surveiller mon cluster de cache et j'ai ce service de découverte de cache. Il s'agit d'un service sans tête qui est également nommé et c'est là que mes clients se connectent et qui gère tout le type de communication du serveur avec mon cluster de cache. Je n'ai pas besoin de connaître l'adresse IP des pods 10, 11 et 12. L'application cliente se connecte uniquement à ce service de découverte et celui-ci gérera à son tour la découverte et le routage de ces commandes ou de ces opérations vers les pods sous-jacents.

Je vous montrerais étape par étape comment créer réellement ce service de découverte et cette passerelle de surveillance à distance, ainsi que le cluster de cache et le déploiement de ces applications client, une fois que nous serons entre nos mains ou en partie. Mais pour l'instant, il s'agit d'un déploiement typique de NCache dans AKS à l'aide d'un seul cluster Kubernetes.

Configuration de l'environnement de démonstration

Voici des détails sur la configuration de notre environnement de démonstration.

démo-environnement-détails
Détails de l'environnement de démonstration

J'utilise 2 NCache Des serveurs pour héberger mon cluster de cache et j'exécuterai 2 applications clientes pour me connecter à ce cache. J'utilise l'image Docker basée sur Linux de NCache pour ce déploiement et il est représenté avec cette balise "enterprise-server-linux-5.0.1" et cette balise doit également faire partie de votre commande Docker Pull afin d'utiliser cette image. j'utilise NCache Enterprise 5.0 Service Pack 1 et .NET Core libération de celui-ci. Que vous pouvez déployer sur Windows ainsi que sur des environnements Linux, mais pour le déploiement dans AKS, j'utilise une image basée sur Linux pour cette version. J'utilise Java Application qui va utiliser Java Client de NCache et puis j'utilise 1 .NET Core Application également qui utilise .NET Core Client de NCache. Dans ces applications, j'utiliserai CRUD Operations, qui représenterait le cas d'utilisation de la mise en cache des données d'application pour mes applications.

Déployer NCache Serveurs

La première étape consiste à déployer NCache Serveurs dans AKS. Alors, commençons rapidement avec ça. Ok, je suis connecté au portail de gestion Azure et c'est là que je vais commencer avec tous les déploiements.

portail-de-gestion-azure
Portail de gestion Azure

La première chose que je dois faire est de créer un groupe de ressources et après cela, je continuerais et avec tous les déploiements, appuyez sur "Ajouter" et je vais commencer par cette étape.

création-de-groupes-de-ressources
Création de groupes de ressources

Gardez tout simple, 'Revoir + créer', cliquez sur 'Créer' et cela continuerait et créerait un groupe de ressources, où je déploierais mon service Kubernetes. Donc, si je me rafraîchis sur ce point. Après cela, nous continuerons et créerons notre service Kubernetes.

création-du-service-kubernetes
Création du service Kubernetes

Si je clique dessus, je devrais pouvoir voir tous les déploiements qu'il contient.

service-kubernetes
Service Kubernetes

Il est vide pour le moment et la prochaine chose est que nous devons créer le 'Kubernetes', à droite et je peux maintenant créer le service Kubernetes.

recherche-et-création-du-service-kubernetes
Rechercher et créer un service Kubernetes

création-kubernetes-services-étape2
Création de services Kubernetes

Au fait, je peux également le faire via Azure Cloud Shell, qui se trouve ici et "Reconnecter". Ou je peux utiliser le portail de gestion, ce qui est pratique. Donc, je vais choisir mon abonnement, puis le groupe de ressources doit être "aksdemo", celui que nous avons récemment créé. Je vais nommer le cluster Kubernetes « myaks » et, comme vous pouvez le voir, le nom DNS a également été automatiquement pré-rempli. je vais choisir '(US) Central US' comme mon emplacement. La "version de Kubernetes" doit être spécifiée et je vais utiliser la valeur par défaut, mais vous pouvez choisir celle que vous souhaitez et vous reposer, je garderais tout simple. Pour 'Primary node pool', je dois spécifier la 'Node size' et le 'Node count'. Ainsi, vous pouvez soit choisir la norme, soit modifier la taille. C'est là que votre service Kubernetes sera réellement hébergé, n'est-ce pas. Donc, vous devez trouver le bon choix de service avec suffisamment de ressources de mémoire, de processeur et de réseau.

créer-un-cluster-kubernetes
Créer un cluster Kubernetes

Il vous offre de nombreuses options à choisir parmi les tailles de machine virtuelle, puis en fonction de différents paramètres tels que la RAM, le processeur, le disque et d'autres paramètres. Donc, je vais choisir 'B2ms' parce que c'est le minimum que je peux utiliser pour ce test et 'Node count' va être 2 pour moi, mais vous pouvez trouver n'importe quel nombre de nœuds comme 2 ou 3 et c'est le nombre de serveurs avec Kubernetes Cluster qui va être hébergé, n'est-ce pas.

sélection-d-une-vm
Sélection d'une machine virtuelle

Donc, après avoir traversé cela, je vais choisir "Revoir + créer" et cela créerait mon cluster Kubernetes.

revoir-et-créer-le-cluster
Examen et création du cluster

Il effectuerait un tas de validations dans Microsoft Azure, mais vous pouvez voir différents paramètres tels que 'Scale', 'Authentication', 'Networking'. Vous pouvez tout conserver par défaut ou modifier au besoin et vous pouvez également voir la surveillance et si vous appuyez sur "Réviser + créer", cela commencera avec le processus de validation.

démarrage du processus de validation
Le processus de validation démarre

Donc, une fois la validation finale terminée, je vais appuyer sur "Créer". Cela prendrait 5 à 10 minutes pour terminer cela dans Microsoft Azure, mais après cela, nous devrions pouvoir commencer les déploiements. Comme vous pouvez le voir, votre déploiement est en cours, une fois que cela est fait, cela transformerait la marque de statut en vert, donc, je dois mettre cette vidéo en pause à ce stade et revenir une fois que cela est fait. C'est déjà fait, comme vous pouvez le voir.

achèvement du déploiement
Achèvement du déploiement

Votre déploiement est terminé après avoir pris 5 à 10 minutes et je peux maintenant aller dans "Ressources" et sur cette base, je peux voir mon service AKS, qui est "myaks", voilà, créé avec succès.

vérification-du-service-aks-depuis-les-ressources
Vérification du service AKS à partir des ressources

Si je clique dessus, je peux voir tous les détails des déploiements pour ce service, tels que la version de Kubernetes, l'adresse du serveur API, puis son statut est réussi et l'emplacement est celui que nous avons spécifié. Ainsi, cela a terminé notre service Kubernetes.

déploiements-détails
Détails des déploiements

NCache déploiement côté serveur

Pour en revenir au diagramme de déploiement, notre service Azure Kubernetes est maintenant créé dans Microsoft Azure, mais il est vide pour le moment. La prochaine étape est d'aller de l'avant avec NCache déploiement côté serveur pour déployer notre cluster de cache. Alors, voyons comment faire cela.

Très bien, mon cluster AKS est maintenant configuré et il est disponible pour être utilisé pour les déploiements. Nous avons utilisé le portail de gestion Azure, mais pour la prochaine étape, pour tous les déploiements, nous utiliserons un Azure Cloud Shell et la première chose que nous devons faire est de pointer vers le cluster AKS dans ce shell. Alors, pour ça je courrais 'az aks get-credentials' commander. Ainsi, dans « az aks » correspond à Azure Kubernetes Service. La commande 'get-credentials' me permet d'apporter le contexte actuel à 'myaks' qui est notre service AKS et dans le 'aksdemo', c'est le nom du groupe de ressources où il est créé. Cela me permettrait donc de pointer vers le service Azure Kubernetes "myaks" et de commencer les opérations de gestion et de déploiement.

azure-cloud-shell-pointant-vers-aks
Azure Cloud Shell : pointant vers AKS

Donc, la première chose que nous devons examiner est de savoir s'il existe un déploiement existant ? Donc, j'irais de l'avant et exécuterais la commande très rapidement, ce qui est 'kubectl obtenir des pods' et cela me donnerait les Pods existants. Ainsi, aucune ressource n'a été trouvée dans l'espace de noms par défaut, ce qui suggère qu'il n'y a pas encore de déploiements.

vérification des déploiements existants
Vérification des déploiements existants

Mais nous devons déployer NCache Les serveurs et pour ça, j'apporterais le NCache Fichier YAML et c'est ce que j'utiliserais pour NCache Déploiement côté serveur. Ainsi, le type est choisi pour être 'Déploiement', le nom est bien sûr 'ncache', c'est donc ce à quoi je ferai référence à l'avenir pour tout le déploiement côté serveur de NCache dans d'autres services et dans les applications client également. L'image que nous utilisons est une image Docker basée sur Linux de NCache et j'utilise deux répliques. Essentiellement, nous avons deux pods, où NCache Le cluster va être déployé pour commencer, puis nous pourrons ajouter plus de pods ultérieurement. L'image Docker, parlons-en un peu plus. L'image Docker que nous utilisons est Linux 5.0.1 Docker Image, qui est disponible sur notre Alachisoft Page du hub Docker.

ncache-fichier yaml
NCache Fichier YAML

Nous avons une commande 'docker pull' qui par défaut va vous chercher une image Windows, mais vous pouvez également utiliser Linux, en utilisant cette balise ici 'enterprise-server-linux-5.0.1' et cela vous chercherait et c'est ce que j'utilise.

docker-pull-commande-sur-alachisoft-site Internet
Commande « Docker Pull » activée Alachisoft Site Web

Alors, allons-y et ajoutons ce YAML pour commencer NCache Déploiement côté serveur. Alors, je vais courir 'kubectl créer -f' et fournissez ce fichier YAML pour commencer NCache configuration et charge du serveur NCache Image basée sur Linux dans notre cluster AKS. Voilà, NCache Le déploiement est créé. C'est si simple.

ncache-déploiement côté serveur
NCache Déploiement côté serveur

Dans le cadre du déploiement, cela a également ouvert certains ports de gestion et de surveillance, 8250 et 8251. Ainsi, tous les pods auraient ces ports ouverts pour la gestion et la surveillance et cela aussi de l'extérieur de ce cluster Kubernetes également, puis nous avons également le 'client-port' qui est le port 9800 et qui est le principal port de communication client-serveur, que notre application utiliserait et se connecterait à ce cluster de cache. À ce stade, notre NCache Le déploiement côté serveur dans EKS est terminé.

ports-de-gestion-et-de-surveillance
Ports de gestion et de surveillance

Nous allons ensuite créer une passerelle de découverte et de gestion, puis nous reviendrons et examinerons tous ces déploiements en même temps.

Service de découverte de cache

Maintenant que notre NCache Les pods de serveur sont déployés avec succès dans AKS, l'étape suivante consiste à créer un service de découverte de cache, ainsi qu'une passerelle de gestion dans AKS. Le service de découverte permettrait à mes applications clientes de découvrir, de connecter et d'utiliser des pods sous-jacents dans le cluster de cache que nous allons créer, puis notre passerelle de surveillance à distance permettrait à tous les administrateurs système extérieurs à ce cluster Kubernetes de gérer et de surveiller ces pods pour le cluster de cache. .

ncache-service-découverte
NCache Service Découverte

Alors, passons en revue toutes les étapes ici. Maintenant, pour créer ces services, j'ai ce fichier 'services.yaml' ici qui me permettrait de créer ces services. Donc, je crée deux services une passerelle ainsi qu'un service de découverte de cache. La passerelle sert à la surveillance et à la gestion, tandis que le service de découverte sert à la communication client ou serveur pour, vous savez, le routage et la découverte vers les pods sous-jacents au sein du cluster de cache.

services-fichier-yaml
Fichier Services.yaml

Ainsi, le premier service est notre service de « passerelle », ici même. Le type est choisi pour être `` service '' et il mappe le port 8251 sur les pods soulignés et c'est pour que le monde extérieur puisse réellement se connecter aux pods en ligne pour la gestion et la surveillance et c'est pourquoi j'ai choisi le type pour être 'LoadBalancer' et le sélecteur d'application est 'ncache' et 'sessionAffinity' est un concept très important. Nous devons le choisir comme 'ClientIP'. C'est une étape obligatoire et cela permet à mes connexions aux pods sous-jacents d'être persistantes. Nous utilisons un outil de gestion basé sur le Web pour gérer et surveiller NCache Gousses. Cela crée une session, donc si la première demande va au Pod un, elle doit être collante à ce Pod afin que cette session reste également intacte pour les appels suivants. Donc, vous devez avoir le bit 'sessionAffinity' défini sur 'ClientIP' pour ce service de passerelle comme un must. C'est une étape obligatoire et vous pouvez ensuite commencer le déploiement de ceci.

Le deuxième service est un service sans tête pour la découverte automatique de vos nœuds de serveur de cache pour la communication client à serveur. J'ai choisi le nom pour être 'cacheserver'. Encore une fois, le genre de ceci est 'Service', donc, c'est encore un service, un service sans tête et ce qui le rend vraiment sans tête est le 'clusterIP', qui est choisi pour être 'Aucun'. Il n'a donc pas d'adresse IP. Il gère simplement la découverte interne et le routage des applications clientes pour établir des connexions avec NCache Gousses. Et comment il se connecte à NCache Gousses ? A l'aide du sélecteur qui est 'ncache' et c'est ce que nous avons utilisé pour NCache déploiement ainsi que lorsque nous avons déployé NCache Les pods de serveur et dans ce cas, nous avons essentiellement un mappage pour, vous savez, pour ce service de découverte, nous avons un mappage de 8250 aux pods sous-jacents, un mappage de 8251, puis 9800 pour la communication client-serveur.

service sans tête
Service sans tête

Donc, nous allons continuer et charger ce fichier YAML, en utilisant à nouveau le même 'kubectl créer' commande avec /f et nous déploierons ces deux services dans notre cluster AKS. Je pense qu'il y a une faute de frappe, 'aksconfigs/services.yaml'. Si j'appuie sur Entrée, je devrais pouvoir voir deux services créés. Un service de passerelle et un serveur de cache, qui est un service de découverte automatique pour NCache Modules de serveur.

Kubectl-créer
Création Kubectl

Maintenant, si je vous montre rapidement 'kubectl obtenir des pods' commande, cela me montrerait, tout d'abord NCache Les pods de serveur, car ce sont deux pods qui vont avoir et obtenir un déploiement côté serveur. Vous pouvez voir que nous avons NCache Des pods avec ces identifiants et nous avons également des IPS qui leur sont également attribués. Ils fonctionnent et le premier pod fonctionne avec l'IP 10.244.1.4, puis nous avons également le deuxième pod avec l'IP .0.9.

kubectl-get-pods
Kubectl Obtenir des pods

Je vous montrerais également le 'kubectl obtenir des services' vous pouvez simplement dire "svc" et cela ferait tomber tous les services que nous avons créés. Donc, nous avons 'cacheserver', qui est un service sans tête, puis nous avons aussi la 'passerelle', qui a également une adresse IP qui nous permet de surveiller et de gérer réellement notre NCache Pods à l'aide de la cartographie des ports du monde extérieur. Ainsi, 8251, vous pouvez voir qu'il est également ouvert pour cela et que le serveur de cache n'affiche aucune adresse IP, c'est essentiellement un service sans tête permettant aux applications clientes de se connecter au cluster de cache.

kubectl-get-services
Kubectl Obtenir des services

Ainsi, en utilisant cette adresse IP externe, je devrais pouvoir me connecter à la console de gestion. Donc, je lance notre outil de gestion basé sur le Web en utilisant ce 8251, je pense qu'il y en a un, laissez-moi juste le changer, 8250, ouais, voilà. Donc, je suis connecté à cet outil de gestion et je suis en fait, je suis connecté au serveur 10.244.0.9 et cela garantit que nos services sont pleinement fonctionnels. Nous sommes en mesure de surveiller et de gérer NCache, puisque nous avons pu ouvrir l'outil de gestion à partir de ma machine. La prochaine étape consiste à commencer à créer un cluster de cache. Alors, on va revoir ça. À ce stade, tous nos déploiements sont terminés.

surveiller-et-gérer-ncache depuis la console de gestion
Surveiller et gérer NCache depuis la console de gestion

Créer un cluster de cache

Nous pouvons maintenant aller de l'avant et créer notre NCache Cluster de cache ensuite. Je vais maintenant créer un cluster de cache en cliquant sur "Nouveau", cela ouvrira le cache via l'assistant de création.

créer un cluster de cache
Créer un cluster de cache

Je nommerais simplement mon cluster de cache "democache". Gardez tout par défaut ici. La première adresse IP est automatiquement suggérée et la deuxième adresse IP est quelque chose que je peux choisir ici 1.4, la ramener ici, puis je devrais pouvoir l'ajouter également et appuyer sur "Suivant" pour continuer et me donner plus de paramètres. Gardez tout par défaut et c'est tout. Mon cluster de cache est maintenant créé. Si je clique sur "Afficher les détails", je peux voir qu'il est entièrement créé.

démarrage-demo-cache
Démarrage du cache de démonstration

Donc, je vais continuer et démarrer ce cluster de cache sur les deux pods et cela démarrerait mon cluster de cache et vous pouvez voir que le message d'état a affiché que le cluster est entièrement fonctionnel et démarré également.

Je peux maintenant ouvrir l'outil de surveillance qui est à nouveau un outil de surveillance basé sur le Web pour NCache cela me permettra de surveiller mon service ainsi que les clients et cela montre qu'il est entièrement connecté entre ces deux pods, c'est le statut entièrement connecté. Donc, je suis prêt à aller aussi loin que la création de cluster est concernée. Un tas de paramètres, aucune application client n'est connectée à ce stade, mais nous pouvons réellement l'exécuter une fois que nous déployons et exécutons l'application client.

état-entièrement-connecté-entre-2-pods
État entièrement connecté entre 2 pods

Déployer et exécuter des applications client

L'étape suivante consiste à déployer et exécuter des applications client pour se connecter à notre cluster de cache dans AKS. D'accord, maintenant nous devons également déployer le client de déploiement et pour cela j'ai un autre conteneur que je vais déployer et c'est un conteneur client unique qui a à la fois Java et.NET Core Applications clientes intégrées.

Donc, je vais continuer et charger le fichier 'client.yaml' et dès que ce déploiement sera créé, j'aurai mes deux applications qui seront prêtes à être utilisées contre mon cluster de cache. Afin de vérifier si ceux-ci sont, vous savez, déployés correctement, je lancerais tout d'abord 'kubectl obtenir des pods' commande et cela me montrerait que le conteneur est en cours de création, à droite. Donc, l'état actuel est et je peux voir un conteneur supplémentaire, donc c'est un bon début.

Donc, mon déploiement côté client est en cours et si vous vous souvenez que nous avons déjà exécuté cette commande, le 'kubectl obtenir des pods' auparavant nous n'avions que NCache Déploie deux pods là-dedans, mais maintenant nous avons un pod supplémentaire sous Déploiement client et il a son propre ensemble de paramètres et certains IPS lui seraient attribués. Donc, si je l'exécute une fois de plus, il est entièrement fonctionnel et sa propre adresse IP lui est attribuée avec cet ID spécifique, ici.

déployer et exécuter des applications clientes
Déployer et exécuter des applications client

Maintenant, pour exécuter les applications clientes pour se connecter à ce cluster de cache, je lancerais 'kubectl exec' fournissez l'ID de ce pod, puis j'irais dans le répertoire ici, app/tester et je vais d'abord exécuter le .NET Core Le client et moi exécuterions ce script run.sh. Cela me permettrait de tourner un .NET Core Application qui se connecterait à mon Cache. J'ai également besoin du nom du cache, 'democache', puis j'ai également besoin du service de découverte de cache qui était 'cacheserver'. Cela me permettrait de découvrir et de me connecter à tous les pods à l'intérieur NCache Déploiement et c'est une fonctionnalité dans NCache Client, qui se connecte automatiquement à tous les pods si vous spécifiez simplement ce service de découverte. Donc, mon 'democache' a été initialisé.

démo-cache-est-initialisé
Le cache de démonstration est initialisé

Si je reviens au Monitoring Tool, je devrais voir des paramètres, des matrices de performance. Un client est entièrement connecté à .9 et à .4 également et nous avons des demandes/seconde. La microseconde moyenne par opération de cache, ajouts, récupérations et mises à jour, sur tous les compteurs, affiche une activité et nous avons un processus client qui apparaît maintenant, qui est de 1.5 et c'est l'adresse IP de notre pod client, qui est connecté aux deux serveurs. 9 ainsi qu'à .4. Donc, cela montre que notre conteneur d'application client et .NET Core L'application est entièrement capable de se connecter à notre cluster de cache.

processus-client-entièrement-connectés
Processus client : entièrement connectés

Lançons l'application Java, pour cela j'ai juste besoin de changer 'dotnet' en 'java' et de l'exécuter. Donc, cela exécuterait simplement un autre script à l'intérieur de celui-ci et cela s'exécuterait 'NCacheTester.jar ', c'est donc le fichier Java qui va se connecter et commencer à effectuer des opérations de création/lecture et de mise à jour/suppression. Ainsi, les opérations CRUD sont en cours d'exécution en ce moment.

application-java-en-cours
Exécution de l'application Java

Donc, si je reviens à la surveillance, j'ai maintenant deux processus client. Nous en voyons quatre, car il y a deux serveurs. Ainsi, chaque processus client établit des connexions avec tous les serveurs, mais vous avez deux clients exécutés sur notre cluster de cache et il y a deux pods dans le cluster de cache.

cluster à deux pods dans le cache
2 pods dans le cluster de cache

Nous avons un "tableau de bord de rapport" plus avancé, comme la vue de rapport côté serveur qui me montre les compteurs côté serveur et les répliques des deux pods, puis nous avons également le rapport client, montrant également les compteurs côté client. Ainsi, au sein d'AKS, nous sommes en mesure de gérer et de surveiller entièrement nos déploiements client et serveur, sans aucun problème.

rapport-tableau de bord
Tableau de bord du rapport

Mise à l'échelle NCache Grappe

La prochaine chose que je vais démontrer est la mise à l'échelle de votre NCache Cluster de cache dans la plate-forme AKS. Cela vous aidera à augmenter votre capacité de traitement des demandes pour NCache et cela aussi à un moment donné. Voyons toutes les étapes impliquées ici.

Maintenant, pour passer de 2 nœuds à 3 nœuds et cela également au moment de l'exécution sans arrêter le cluster de cache dans AKS ou arrêter les applications de type, nous pouvons simplement continuer et le démontrer. Donc, tout d'abord, je voudrais vous montrer le déploiement actuel. Voyons les pods actuels que nous avons et si vous remarquez que nous avons deux pods dans NCache Déploiement des adresses IP .4 et .9, puis j'aurais besoin d'exécuter cette commande ici, où je règle le nombre de répliques sur 3 et le fais pour 'deployment/ncache' et cela devrait automatiquement faire tourner un nouveau pod et l'ajouter à ncache/déploiement. Je pense qu'il y a une faute de frappe, alors laissez-moi simplement exécuter ceci en corrigeant le déploiement et cela a fonctionné. Alors, NCache le déploiement a pris de l'ampleur.

Maintenant, nous avons 3 pods à l'intérieur NCache Déploiement. Donc, si j'exécute à nouveau la même commande, je devrais maintenant voir un pod supplémentaire dans NCache Déploiement. Donc, auparavant, nous avions deux déploiements pour NCache .4 et .9 et maintenant nous avons un troisième Pod ajouté. En plus de .4, .9, nous avons également .6. Voilà donc notre troisième Pod ajouté, qui est maintenant entièrement fonctionnel.

mise à l'échelle-ncache-grappe
Mise à l'échelle NCache Grappe

J'ai remarqué que nous n'avons pas arrêté l'application ou le cache lui-même. Maintenant, j'ai juste besoin d'ajouter ce pod pour être pod de NCache Cluster de cache. Ainsi, il a été déployé dans AKS.

ajouter-pod-à-ncache-cluster de cache
Ajouter un pod à NCache Cluster de cache

Je l'ajouterais ici, puis j'irais de l'avant et 'Démarre' pour rejoindre le cluster de cache et cela sera fait au moment de l'exécution. Ainsi, sans aucun délai, il rejoindrait le cluster de cache en cours d'exécution et il serait également entièrement fonctionnel.

cluster de cache en cours d'exécution
Exécution du cluster de cache

Si je reviens rapidement à l'outil de surveillance, vous verriez maintenant un troisième nœud joint au moment de l'exécution. Ainsi, .6 est maintenant entièrement joint. Il a toutes les données. Vous pouvez voir le nombre, puis toutes les requêtes sont entièrement distribuées à 3 nœuds au lieu de 2.

troisième nœud ajouté
3e nœud ajouté

Vous pouvez également voir l'état du cluster, .6 est entièrement connecté avec 2 clients connectés également et nous avons maintenant des compteurs pour 3 serveurs au lieu de 2 et les processus clients sont à nouveau connectés aux 3 serveurs à .6, .4 , à .9 également.

statistiques du 3e nœud entièrement connectées
Statistiques du 3e nœud entièrement connecté

Conclusion

Ainsi, cela complète la partie de mise à l'échelle automatique pour AKS, où vous pouvez ajouter des pods au moment de l'exécution et vous n'avez pas à arrêter le cache ou l'un des clients qui y sont connectés. Tout se fait au moment de l'exécution.

Cela nous amène à la fin de notre vidéo. Nous avons démontré avec succès comment vous pouvez déployer NCache dans la plate-forme AKS et sa facilité d'utilisation NCache depuis votre Java et .NET Core Applications. Nous avons également examiné l'efficacité avec laquelle vous pouvez gérer et surveiller votre NCache déploiements dans AKS. J'espère que cela a été utile.

S'il vous plaît partagez vos commentaires ou questions avec nous à Alachisoft Support support@alachisoft.com. Je vous remercie!

© Copyright Alachisoft 2002 - . Tous droits réservés. NCache est une marque déposée de Diyatech Corp.