NCache Es totalmente compatible con varios tipos de Kubernetes, incluidos Azure Kubernetes Service (AKS), AWS Elastic Kubernetes Server (EKS), Google Kubernetes Engine (GKE), Red Hat OpenShift Kubernetes y más. NCache También es totalmente compatible con Docker.
Puedes desplegar NCache dentro de un clúster de Kubernetes y acceda a este NCache implementación tanto desde aplicaciones que se ejecutan dentro de Kubernetes como desde fuera. También puede administrar y monitorear estos NCache Clústeres que ejecutan Kubernetes desde fuera de Kubernetes. El siguiente diagrama muestra el despliegue de NCache en un clúster de Kubernetes. Esta imagen es la misma en Azure Kubernetes Service, Amazon Elastic Kubernetes Service, Google Kubernetes Engine (GKE), Red Hat OpenShift Kubernetes y cualquier otro entorno de Kubernetes.
A continuación se detallan algunos de los conceptos que se deben comprender en la implementación anterior de NCache en Kubernetes.
NCache Es totalmente compatible con Docker de las siguientes maneras.
En la mayoría de las situaciones, está bien simplemente usando la imagen estándar de Docker de NCache de DockerHub. Pero, en algunos casos, es posible que desee crear una imagen de Docker personalizada que incluya su propio software u otras variaciones incluso del software estándar del sistema operativo.
Un ejemplo de esto es el sabor de Linux. NCache Docker Image en Docker Hub usa Debian Linux, pero es posible que desee otra versión de Linux para su NCache servidores; NCache funciona bien en múltiples sabores de Linux. O bien, es posible que desee crear una imagen de Docker personalizada para su servidor de aplicaciones (NCache Cliente) que contiene no sólo su propia aplicación, sino también NCache software del cliente.
En todos esos casos, Alachisoft le proporciona varios Dockerfiles que puede editar y personalizar para satisfacer sus necesidades.
Dockerfiles para NCache
Estos son algunos ejemplos de estos Dockerfiles que puede editar para crear una imagen de Docker personalizada.
Ejemplo de archivos Docker
Así es como funciona un Dockerfile típico "NCache Enterprise Servidor para Windows Server Core".
# Setting base image for NCache.
FROM microsoft/dotnet-framework:4.7.2-runtime
# Setting work directory to copy setups and resources for configuring NCache.
WORKDIR /app
# Make sure that the 2 folders ("resources" and "setup") exist in the same directory as the Dockerfile.
# Make sure that "IPBinding.ps1" script resides in the "resources" folder.
# Make sure that Microsoft Visual C++ 2010 x64 Redistributable setup is placed in the "setup" folder. It can be downloaded from https://www.microsoft.com/en-us/download/details.aspx?id=14632.
# Make sure that NCache setup resides in the "setup" folder. It can be downloaded from http://www.alachisoft.com/download-ncache.html.
# Copying resources and setups into the work directory of the container.
COPY resources .
COPY setup .
# Exposing ports used by NCache for communication.
# Exposing the port at which NCache service will listen for incoming client connection requests.
EXPOSE 9800
# Exposing the port at which NCache service will listen for incoming management connection requests (NCache Manager, Monitor and Tools).
EXPOSE 8250
# Exposing the port at which Bridge service will listen for incoming connection requests from cache processes.
EXPOSE 9900
# Exposing the port at which Bridge service will listen for incoming Management connection requests (NCache Manager and Tools).
EXPOSE 8260
# Installing Microsoft Visual C++ 2010 x64 Redistributable (Prerequisite of NCache).
RUN vcredist_x64.exe /norestart /q
# Installing NCache setup.
# The parameter "INSTALLMODE" represents the NCache installation mode and has the following values:
# Rename this parameter to "EDITION" if you are building image for NCache version 4.8 or older.
# Enterprise Server Install mode = "0"
# Enterprise Remote Client Install mode = "3"
# The parameter "KEY" is the install key and is sent to user through e-mail once they download NCache setup. In case if user does not get a key, contact us at http://www.alachisoft.com/company/contact-us.html.
# The parameter "USERFIRSTNAME" represents the first name of the user.
# The parameter "USERLASTNAME" represents the last name of the user.
# The parameter "COMPANYNAME" represents the company the user works for.
# The parameter "EMAILADDRESS" represents the e-mail address of the user.
# The parameter "INSTALLDIR" represents the installation directory where NCache will be installed.
# the parameter "/qn" specifies that NCache will be installed silently without user interaction and will not prompt the user for anything.
RUN msiexec /i ncache.ent.x64.msi INSTALLMODE="0" KEY="XXXXXXXXXX" USERFIRSTNAME="John" USERLASTNAME="Smith" COMPANYNAME="Alachisoft" EMAILADDRESS="john@alachisoft.com" INSTALLDIR="C:\Program Files\NCache" /qn
# Currently, the IP during NCache installation is stored in the configuration files and it can not be made static at that point.
# However, the IP can be made static once the container is started.
# An IP Binding change task is scheduled to run when the container instance is started. This task replaces the IP with the actual IP assigned to the container.
# Creating one time executing IP Binding task that will change the IP in NCache Configuration files on the first time the container is started.
RUN schtasks /Create /TN IPBinding /SC ONSTART /TR "c:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\app\IPBinding.ps1" /ru SYSTEM
# Entry point for the container, once all the required configurations have been made.
CMD start -Verbose