ARTIFACTORY:使用Nginx-ingress部署ARTIFACTORY Helm图表
当你将Artifactory与我们的Helm图表附带的默认Nginx一起部署时,默认情况下它会创建一个面向互联网的负载均衡器,这在大多数Kubernetes环境中都是受限的。在这种情况下,如果您希望使用外部负载平衡器和仅向您组织的网络公开Artifactory服务的入口来部署Artifactory,则可以遵循以下步骤。
什么是入口?
入口是一个Kubernetes资源,它允许你为Kubernetes服务配置HTTP负载均衡器。这样的负载均衡器配置将服务暴露给Kubernetes集群外部的客户端。
使用Nginx-ingress部署Artifactory Helm图表的步骤:
步骤1:
使用任意云提供商创建Kubernetes集群。我使用过EKS (AWS Kubernetes集群)。此外,请确保已安装kubectl随附服务舵(v3优先)在您的系统上对Kubernetes集群执行Kubernetes和Helm基本实用程序命令。我
步骤2:
使用以下命令安装Nginx-Ingress Controller(我们可以使用自定义证书部署Nginx-Ingress)。欲了解更多信息,请参考Github页面在这里).添加ingress-nginx https://kubernetes.github.io/ingress-nginx
$ helm回购更新
$ kubectl创建nginx-ingress
命名空间nginx-ingress -nginx/ingress-nginx
步骤3:
将域指向Nginx-Ingress服务的EXTERNAL_IP
例如,创建DNStest.artifactory.com并将其指向EXTERNAL_IP##获取EXTERNAL_IP
kubectl get svc -n nginx-ingress- nginx-ingress-controller -o jsonpath='{.status. loadbalance .ingress[0].hostname}'
步骤4:
在Artifactory将要部署的名称空间下,使用下面的命令创建Nginx证书的秘密。
命令:
$ kubectl create secret TLS
例子:
nginx-tls——cert=/Users/admin/Documents/kubernetes/certs/tls。crt——关键= /用户/ admin /文档/ kubernetes /组/ tls。关键字——命名空间工件
步骤5:
使用Helm Chart安装JFrog Artifactory,将以下入口配置添加到values.yaml文件(我们可以添加nginx。注释按照nginx-ingress标准。有关Nginx入口控制器注释的更多信息,请参阅Nginx注释页面在这里).
values.yaml
postgresql:
启用:真
postgresqlPassword: <密码>
databaseUpgradeReady:真
unifiedUpgradeAllowed:真
artifactory:
masterKeySecretName: my-masterkey-secret
joinKeySecretName: my-joinkey-secret
许可:
秘密:artifactory-cluster-license
dataKey: art.lic
nginx:
启用:假
入口:
启用:真
defaultBackend:
启用:真
主机:
-
routerPath: /
artifactoryPath: / artifactory /
名称:“
注释:
kubernetes.io / ingress.class:“nginx”
nginx.ingress.kubernetes。io / proxy-body-size:“0”
nginx.ingress.kubernetes。io / proxy-read-timeout:“600”
nginx.ingress.kubernetes。io / proxy-send-timeout:“600”
nginx.ingress.kubernetes。io / proxy-body-size:“0”
nginx.ingress.kubernetes。io / rewrite-target:“/”
nginx.ingress.kubernetes。io / configuration-snippet: |
重写^/(v2)/token /artifactory/api/docker/null/v2/token;
重写^ / (v2 )/([^\/]*)/(.*) / artifactory / api /码头工人/ 2美元/ 1 / 3美元;
tls:
—secretName: nginx-tls
主机:
-
##命令安装手工使用舵图。
添加jfrog-charts https://charts.jfrog.io
$ helm回购更新
$ helm upgrade——安装artifactory -f值。yaml jfrog-charts / artifactory
安装Artifactory后,请等待几分钟,直到状态显示服务运行正常。然后,您应该能够通过定义的域名访问它。
例子:https://jfrog.artifactory.com
