ARTIFACTORY:如何将NFS挂载点挂载到ARTIFACTORY helm部署上,以配置文件存储和备份目录

Prajyot Pawase
2023-01-22 11:06

当在使用helm charts安装的kubernetes集群上运行Artifactory时,为了配置使用NFS来存储校验和和备份,我们必须使用NFS在kubernetes集群中手动创建PV和PVC。

然后,我们需要使用values.yaml将那些创建的PVC映射到Artifactory头盔部署。

下面是配置将NFS挂载点挂载到Artifactory helm部署的步骤。在这个例子中,我们在CentOs的GCP中使用了一个VM

步骤1:使用CentOS创建GCP机器(您可以使用任何操作系统类型)

步骤2:登录到服务器并使用yum命令为NFS服务器安装下面的包。(也可以使用现有的NFS服务器)。
Yum install -y nfs-utils
步骤3:安装完包后,启用并启动NFS服务。
Systemctl启动nfs-server rpcbind
Systemctl启用nfs-server rpcbind

步骤4:在服务器端创建NFS共享,并允许NFS客户端对创建的目录进行读写操作。
mkdir / nfsfileshare1
Chmod 777 /nfsfileshare1/

步骤5:下一步,修改/etc/exports文件,为您想要共享的目录/nfsfileshare1添加一个条目。

1.vi /etc/exports

2.将NFS共享添加到文件中,如下所示。
/ nfsfileshare1 10.110.20.111 (rw,同步,no_root_squash)
一个。/ nfsfileshare1:共享目录

b. 10.110.20.111:客户端IP地址。我们也可以使用主机名而不是IP地址。也可以定义子网为10.110.20.111/24的客户端范围。为此,我使用了“*”,以便所有客户机都可以访问NFS服务器。

c。rw:共享文件夹的可写权限

d。同步:根据文件系统的所有更改都立即刷新到磁盘;正在等待相应的写操作。

e。no_root_squash默认情况下,客户端机器上的root用户发出的任何文件请求都被服务器上的nobody用户处理。(请求映射到哪个UID取决于服务器上的用户“nobody”的UID,而不是客户端。)如果选择了no_root_squash,那么客户机机器上的根用户对系统上文件的访问权限将与服务器上的根用户相同。

步骤6:使用如下命令导出共享目录,使用如下命令完成NFS Server配置。
exportfs - r
第七步:我们可能需要在NFS服务器上配置防火墙,以允许NFS客户端访问NFS共享。为此,在NFS服务器上运行以下命令。
Firewall-cmd——permanent——add-service mountd
Firewall-cmd——permanent——add-service rpc-bind
Firewall-cmd——permanent——add-service NFS
firewall-cmd——重载

第八步:登录Kubernetes集群,使用下面的YAML和kubectl命令在NFS Server上创建PV。在本例中,我们使用了一个GKE集群

$ kubectl apply -f pv-nfs1。命名空间工件

pv-nfs1.yamlapiVersion: v1
: PersistentVolume
元数据:
名称:artifactory-ha-data-pv-nfs1
标签:
id: artifactory-ha-data-pv-nfs1
类型:nfs-volume
规范:
容量:
储存:50胃肠道
accessModes:
——ReadWriteOnce
persistentVolumeReclaimPolicy:保留
nfs:
服务器:“10.110.20.111”
路径:“/ nfsfileshare1”
只读的:假

步骤9:使用下面的YAML和kubectl命令从步骤8中创建的PV创建PVC。

$ kubectl apply -f pv-nfs1。命名空间工件

pvc-nfs1.yaml
: PersistentVolumeClaim
apiVersion: v1
元数据:
名称:artifactory-ha-nfs-pvc-nfs1
标签:
类型:nfs-volume
规范:
accessModes:
——ReadWriteOnce
storageClassName:“”
2022世界杯阿根廷预选赛赛程资源:
请求:
储存:50胃肠道
选择器:
matchLabels:
id: artifactory-ha-data-pv-nfs1

第十步:在创建的NFS服务器上使用下面的YAML和kubectl命令文件创建另一个PV,以配置人工备份。我已经创建了另一个NFS服务器,这样我就可以将备份存储在不同的NFS上。

$ kubectl apply -f pv-nfs2。命名空间工件

pv-nfs2.yaml:
apiVersion: v1
: PersistentVolume
元数据:
名称:artifactory-ha-data-pv-nfs2
标签:
id: artifactory-ha-data-pv-nfs2
类型:nfs-volume
规范:
容量:
储存:50胃肠道
accessModes:
——ReadWriteOnce
persistentVolumeReclaimPolicy:保留
nfs:
服务器:“10.110.20.112”
路径:“/ nfsfileshare2”
只读的:假

步骤11:使用下面的YAML和kubectl命令从步骤10中创建的PV创建PVC。

$ kubectl apply -f pv-nfs2。命名空间工件

pvc-nfs2.yaml
: PersistentVolumeClaim
apiVersion: v1
元数据:
名称:artifactory-ha-nfs-pvc-nfs2
标签:
类型:nfs-volume
规范:
accessModes:
——ReadWriteOnce
storageClassName:“”
2022世界杯阿根廷预选赛赛程资源:
请求:
储存:50胃肠道
选择器:
matchLabels:
id: artifactory-ha-data-pv-nfs2

步骤12:创造价值。使用下面的代码片段。

values.yaml
postgresql:
启用:真
postgresqlPassword: Password@123
nginx:
启用:真
databaseUpgradeReady:真
unifiedUpgradeAllowed:真
artifactory:
masterKeySecretName: my-masterkey-secret
joinKeySecretName: my-joinkey-secret
copyOnEveryStartup:
-来源:/artifactory_bootstrap/ binarstore .xml
目标:等/ artifactory /
customVolumes: |
- name: "nfs-vol1"
persistentVolumeClaim:
claimName:“artifactory-ha-nfs-pvc-nfs1”
- name: "nfs-vol2"
persistentVolumeClaim:
claimName:“artifactory-ha-nfs-pvc-nfs2”
customVolumeMounts: |
- name: "nfs-vol1"
mountPath:“/ var / opt / jfrog / artifactory / jfrog / filestore”
- name: "nfs-vol2"
mountPath:“/ var / opt / jfrog / artifactory / jfrog /备份”
持久性:
类型:“文件系统”
binarystoreXml:
<配置版本=“v1”>
<链模板=“文件系统”/ >

< baseDataDir > / opt / jfrog / artifactory / var / jfrog < / baseDataDir >
< fileStoreDir > filestore < / fileStoreDir >
> < /供应商
< / config >

步骤13:执行下面的helm命令,使用舵图安装Artifactory。

$ helm upgrade -install artifactory -f values命名空间工件jfrog-charts/artifactory

安装成功后,您可以通过登录Artifactory并导航到Administration→Monitoring→Storage来检查配置的文件存储库。

另外,在我们挂载到Artifactory上的' /var/opt/jfrog/ Artifactory /jfrog/ backup '目录上配置Artifactory备份。有关备份的更多信息,请参阅我们的备份融合页面。