Ekbatan Logo
EKbatanEkbatan
Artifact ManagementHigh-Availability Registry

استقرار و مدیریت Nexus Repository در مقیاس انترپرایز

مدیریت و میزبانی متمرکز پکیج‌های نرم‌افزاری و ایمیج‌های کانتینر در مقیاس سازمانی برای تسریع فرآیندهای CI/CD.

معماری و نحوه پیاده‌سازی

  • استقرار Nexus PRO در حالت High Availability (HA) Cluster
  • اتصال نودهای Nexus به دیتابیس PostgreSQL (از طریق CloudNative-PG)
  • مدیریت Blob Store ها روی فضای نامحدود Ceph S3 (Object Storage)
  • پیاده‌سازی قوانین Anti-Affinity برای جلوگیری از قرارگیری نودها روی یک سرور فیزیکی

مزایای کلیدی و قابلیت‌ها

  • کاهش چشمگیر زمان دانلود وابستگی‌ها در پایپ‌لاین‌های بیلد
  • اسکن امنیتی خودکار (Vulnerability Scanning) روی پکیج‌های ورودی
  • همگام‌سازی کامل با رانرهای گیت‌لَب در محیط‌های توزیع‌شده
  • تعریف دقیق منابع (Requests/Limits) برای جلوگیری از Out Of Memory (OOM)

نمونه مانیفست استقرار (Deployment Manifest)

nexus-repository-deployment.yamlProduction-Ready
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nexus-repository-manager
  namespace: devsecops
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nexus
  template:
    metadata:
      labels:
        app: nexus
    spec:
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - nexus
            topologyKey: "kubernetes.io/hostname"
      containers:
      - name: nexus
        image: sonatype/nexus3:3.64.0
        resources:
          requests:
            memory: "4Gi"
            cpu: "2"
          limits:
            memory: "8Gi"
هگمتانه آماده راه‌اندازی و پشتیبانی از این سرویس در زیرساخت شماست.