在 Openshift 中部署客户端应用程序
成功部署服务器端后,您需要部署客户端应用程序 NCache 在 Openshift Kubernetes 集群内。
将客户端连接到 NCache
为了将客户端应用程序连接到缓存集群,请使用以下两种方法之一:
方法1:
使用 GetCache
方法。 请参考 连接到缓存 查看客户端如何连接到缓存。
方法2:
您可以通过添加预先创建的缓存发现服务(无头服务)的名称来连接缓存 客户端.ncconf 你的客户。
在缓存配置下为 演示集群缓存, 添加服务的名称 缓存服务器 ,在 <server name>
标签。
<cache id="democlusteredcache" ...">
<server name="cacheserver"/>
使用 NCache 客户端 Dockerfile
用你的 NCache 客户端 dockerfile 包含使用运行时 .NET 或运行时 SDK 创建容器映像的命令。 这允许同时使用 InProc 和 OutProc 缓存。
为了创建 dockerfile:
- 获取由提供的 dockerfile NCache.
备注
对于 .NET SDK,您需要如下所示更改基本映像标记,这将允许访问运行时和其他包,如 PowerShell 工具。
FROM mcr.microsoft.com/dotnet/core/sdk
在 资源 与从下载的其他文件一起放置的文件夹 NCache docker 存储库,放置您的客户端应用程序。
在MyCAD中点击 软件更新 启动文件 ,在 资源 文件夹中。
更换
sleep infinity
使用您的客户端应用程序的路径并保存 启动文件 文件中。
为了遵循替代方法,请按照以下步骤操作:
- 在 dockerfile 的 COPY 命令中添加应用程序的路径。
COPY [application-path]
- 在 启动文件 文件,替换
sleep infinity
使用应用程序的路径标记并保存文件。
# Setting base image for dotnet
FROM mcr.microsoft.com/dotnet/core/sdk:3.0
Tips:
在中添加客户端应用程序路径 ENTRYPOINT
dockerfile 中不使用的部分 启动文件 共。
编辑客户端 dockerfile 后,执行以下命令将客户端应用程序的 dockerfile 转换为容器映像并上传。
备注
确保您的机器上安装了 docker 以创建客户端 docker 映像。
docker build . -t [image tag]
docker push [repository]:[image tag]
在您的 dockerfile 中,建议使用 .NET SDK 以获得附带 PowerShell 工具的额外好处。
在命令行工具上执行以下命令以访问 Kubernetes 集群内的 PowerShell 工具。
oc exec client-pod-name -- pwsh -NoExit
执行成功后,导入 NCache PowerShell 模块使用以下命令:
Import-Module /opt/ncache/bin/tools/ncacheps
您现在可以在 Kubernetes 集群内的任何 pod 上执行 PowerShell 命令。 为了获得完整的列表 NCache PowerShell工具请参考 NCache PowerShell 参考.
嵌入 NCache 客户端库
对于没有的应用程序 NCache 安装,可以使用Nuget包部署 NCache Kubernetes 集群中的客户端。
从安装 Nuget 包 NCache Nuget 包 按照中提到的步骤 在 Microsoft Visual Studio 中安装 Nuget. 成功安装后,创建客户端应用程序的映像。
对于 OpenShift 中的客户端应用程序部署,创建一个 YAML 文件。 这是一个示例 客户端.yaml 文件:
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: client
labels:
app: client
spec:
replicas: 1
template:
metadata:
labels:
app: client
spec:
imagePullSecrets:
- name: ncache-private
containers:
- name: client
image: your-client-application-repo-path
ports:
- name: management-tcp
containerPort: 8250
- name: management-http
containerPort: 8251
- name: client-port
containerPort: 9800
使用 OpenShift 门户网站或命令行工具导入 YAML 文件。 为了检查客户端容器状态,请使用以下命令:
oc get pods -o wide
下一章解释 监控缓存集群和客户端 部署客户端应用程序后。
参见
在 Openshift 中创建新项目
在 Openshift 中创建缓存发现服务
如何连接到缓存
创建 NCache Openshift 中的集群