NeuVector عبارة عن منصة أمان للحاويات ذات الثقة المعدومة. إنه مفتوح المصدر بنسبة 100% ويوفر حلاً لتأمين دورة حياة صورة الحاوية وتنفيذها دون تقييد البائع. كما هو مفصل في الوثائق هناك طرق متعددة لتثبيت NeuVector. سنركز على الحالة التي قمنا فيها بتثبيت NeuVector من Rancher للاستفادة من التكامل بين الأداتين، ولا سيما إعادة توجيه عنوان URL وRancher RBAC. يمكن إجراء تثبيت NeuVector من Rancher UI. من الرائع الاكتشاف والتجربة: لكنه يدوي ولهذا أردت أن أوضح لك كيفية تشغيله تلقائيًا. تطبيقات Rancher هي تطبيقات Helm، تستخدم مستودع مخططات Helm، لذلك لدينا كل شيء لأتمتتها بأفضل طريقة ممكنة في عالم Cloud Native، وهو GitOps! هناك أدوات مختلفة لتنفيذ GitOps وArgoCD وFlux، ولكن هناك أيضًا Fleet الذي يأتي افتراضيًا مع Rancher وهو ما سأستخدمه. نحتاج إلى مستودع git لتخزين وإدارة تعريفات كائنات Kubernetes. لدي واحد على GitHub وفي الداخل لدي ملفان: أحدهما لـ NeuVector CRD والآخر لـ NeuVector. لقد قمت بتسميتها rancher-neuvector-crd وrancher-neuvector لأنني سأستخدم مخطط Rancher Helm للتكامل مع Rancher.
rancher-neuvector-crd/fleet.yaml
:
defaultNamespace: cattle-neuvector-system
helm:
repo: https://charts.rancher.io
chart: neuvector-crd # https://github.com/rancher/charts/tree/release-v2.7/charts/neuvector-crd
version: 102.0.1+up2.4.3 # 5.1.2
releaseName: neuvector-crd
labels:
app: neuvector-crd
rancher-neuvector/fleet.yaml
:
defaultNamespace: cattle-neuvector-system
helm:
repo: https://charts.rancher.io
chart: neuvector # https://github.com/rancher/charts/tree/release-v2.7/charts/neuvector
version: 102.0.1+up2.4.3 # 5.1.2
releaseName: neuvector
values:
controller:
replicas: 1
cve:
scanner:
replicas: 1
targetCustomizations:
– name: aks-business-blueprod
helm:
values:
containerd:
enabled: true
global:
cattle:
url: https://rancher.xxxxx.sslip.io
clusterName: c-xxxx
dependsOn:
– selector:
matchLabels:
app: neuvector-crd
rancher-neuvector-crd/fleet.yaml: defaultNamespace: cattle-neuvector-system helm: repo: https://charts.rancher.io chart: neuvector-crd # https://github.com/rancher/charts/tree/release-v2.7/charts/neuvector-crd version: 102.0.1+up2.4.3 # 5.1.2 releaseName: neuvector-crd labels: app: neuvector-crd rancher-neuvector/fleet.yaml: defaultNamespace: cattle-neuvector-system helm: repo: https://charts.rancher.io chart: neuvector # https://github.com/rancher/charts/tree/release-v2.7/charts/neuvector version: 102.0.1+up2.4.3 # 5.1.2 releaseName: neuvector values: controller: replicas: 1 cve: scanner: replicas: 1 targetCustomizations: – name: aks-business-blueprod helm: values: containerd: enabled: true global: cattle: url: https://rancher.xxxxx.sslip.io clusterName: c-xxxx dependsOn: – selector: matchLabels: app: neuvector-crd y
في “Rancher” > “التسليم المستمر”، قمت بتعريف اثنين من “GitRepo”. يعد هذا مطلوبًا لإدارة التبعيات، حيث أنه في بعض الحالات يجب تثبيت CRD قبل التطبيق الفعلي (قادم من قيود تصميم Helm). ستلاحظ “التعريفات” و”الأمان”. في المجلد الأول سأضيف مجلد “rancher-neuvector-crd” والمجلد الثاني “rancher-neuvector”. وهاهو قد تم تثبيته وأصبح NeuVector متاحًا الآن! اسمحوا لي أن أعرف إذا واجهت مشكلة أو تريد معرفة المزيد.
منقول ومترجم من:
Automate NeuVector installation and management with Fleet – The GitOps way