चरण 8 - CDR components इंस्टॉल करें.md
अंत में, CDR application services इंस्टॉल करें। इन charts के लिए, सुनिश्चित करें कि आप image tag को release notes में मिले संबंधित tag पर सेट करें।
नीचे दिए गए उदाहरण v2.18.1 के tags के साथ पहले से भरे हुए हैं:
8.1 - Engine
enable_reversing_labs=""
helm upgrade --install cdrplatform-engine cdrplatform-engine \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set configuration.ENABLE_REVERSING_LABS="${enable_reversing_labs}" \
--set cloud_provider=gcp \
--atomic
8.2 - Synchronous API
helm upgrade --install cdrplatform-sync-api cdrplatform-sync-api \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp
8.3 - API access service
API Access सेवा Glasswall Halo Synchronous API और Policy Management API के लिए एक gateway के रूप में कार्य करती है।
यह HTTP पर CDR functionality उपलब्ध कराता है। यदि आपके environment में TLS या SSL के साथ HTTPS आवश्यक है, तो TLS या SSL सक्षम करने के लिए installation instructions का पालन करें। अन्यथा, TLS या SSL के बिना installation के लिए instructions का पालन करें।
8.3A - TLS/SSL के बिना deployments के लिए
helm upgrade --install cdrplatform-api-access cdrplatform-api-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=2.18.1-183506 \
--atomic
8.3B - TLS/SSL के साथ deployments के लिए
CDR API पर SSL certificates का उपयोग करने के लिए, उपयोग किए जाने वाले domain के लिए एक private key और certificate बनाएं।
नीचे दिए गए कमांड का उपयोग करके key और CRT files से एक Kubernetes secret बनाएँ। इस कमांड से हम server.key (private key) और server.crt (certificate) files से "tls-secret" नाम का एक secret बनाते हैं। इस उदाहरण में key passphrase-protected नहीं होनी चाहिए।
kubectl create secret tls tls-secret --key server.key --cert server.crt
इसके बाद इस secret का उपयोग ingress पर TLS सक्षम करने के लिए किया जा सकता है, यह सुनिश्चित करते हुए कि नीचे दिए गए कमांड में domain name सेट हो:
domain_name=""
helm upgrade --install cdrplatform-api-access cdrplatform-api-access \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${domain_name} \
--set ingress.tls.secretName=tls-secret \
--atomic
8.3C - authentication के बिना admin access सक्षम करें
जब portal में Single Sign-On (SSO) login सक्षम नहीं होता है, तब license management और policy configuration जैसी administrative features सुलभ नहीं होती हैं। SSO सेट अप किए बिना इन admin features तक access सक्षम करने के लिए, Helm chart को निम्न configuration के साथ deploy करें:
helm upgrade --install cdrplatform-portal cdrplatform-portal \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${portal_domain} \
--set ingress.tls.secretName=tls-secret \
--set configuration.AutoAdmin="true" \
--atomic
8.3D - basic API authentication सक्षम करने के लिए
Glasswall Halo में Authentication डिफ़ॉल्ट रूप से disabled होता है। सक्षम किए जाने पर authentication, Glasswall Halo Synchronous API और Policy Management API दोनों के लिए सक्षम हो जाएगा। यदि authentication सक्षम करना हो:
-
Google Secrets Manager में दो secrets बनाएँ: एक organisation ID के लिए और एक organisation tokens के लिए।
- एक से अधिक tokens निर्दिष्ट करते समय, उन्हें commas से अलग करें।
- सुनिश्चित करें कि प्रत्येक token में commas न हों।
-
Google Secrets Manager में secrets को नीचे दिए गए naming conventions का पालन करना चाहिए।
-
Organisation ID secret
- की शुरुआत
organisationसे होनी चाहिए - का अंत
-idसे होना चाहिए - प्रिफ़िक्स और सफ़िक्स के बीच एक संख्यात्मक इंडेक्स शामिल करें
- उदाहरण:
organisation0-id,organisation1-id,organisation2-id
- की शुरुआत
-
Organisation tokens secret
- की शुरुआत
organisationसे होनी चाहिए - का अंत
-tokensसे होना चाहिए - प्रिफ़िक्स और सफ़िक्स के बीच एक संख्यात्मक इंडेक्स शामिल करें
- उदाहरण:
organisation0-tokens,organisation1-tokens,organisation2-tokens
- की शुरुआत
-
-
Helm chart deploy करते समय
configuration.AuthenticationScheme=Basicसेट करें। उदाहरण के लिए:
helm upgrade --install cdrplatform-api-access cdrplatform-api-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=2.18.1-183506 \
--set configuration.AuthenticationScheme=Basic \
--atomic
8.4 - Portal
Halo Portal service को deploy करने के लिए, नीचे दिए गए commands चलाएँ।
8.4A - TLS/SSL के बिना deployments के लिए
नोट: इस command में उल्लिखित ip_address load balancer के public IP address को संदर्भित करता है। इसे नीचे दिए गए "Portal & API Access" steps के माध्यम से प्राप्त किया जा सकता है।
ip_address=""
helm upgrade --install cdrplatform-portal cdrplatform-portal \
--set image.registry=glasswallhub.azurecr.io \
--set configuration.BackendUrl="${ip_address}" \
--set image.tag=2.18.1-183506 \
--set configuration.HaloVersion=2.18.1 \
--set configuration.OIDC=null
8.4B - TLS/SSL वाले deployments के लिए
यदि TLS आवश्यक है, तो --set ingress.tls.enable_tls=true parameter जोड़ें और portal_domain=<domain name> सेट करें।
नीचे दिए गए उदाहरण में, TLS certificates प्राप्त करने के लिए API Access service के लिए बनाया गया वही Kubernetes secret उपयोग किया जाता है।
portal_domain=""
helm upgrade --install cdrplatform-portal cdrplatform-portal \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${portal_domain} \
--set ingress.tls.secretName=tls-secret \
--set configuration.BackendUrl="https://${portal_domain}" \
--atomic
8.5 - Portal एक्सेस
Portal access सेवा Halo Portal के लिए backend के रूप में कार्य करती है। यह Halo Portal को Policy Management API और Synchronous API तक पहुंचने में सक्षम बनाती है।
8.5A - TLS/SSL वाले deployments के लिए
यदि TLS आवश्यक है, तो --set ingress.tls.enable_tls=true और --set ingress.tls.domain=<domain name> parameters जोड़ें।
नीचे दिए गए उदाहरण में, API access सेवा के लिए बनाया गया वही Kubernetes secret TLS certificates प्राप्त करने के लिए उपयोग किया जाता है।
domain_name=""
helm upgrade --install cdrplatform-portal-access cdrplatform-portal-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=2.18.1-183506 \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${domain_name} \
--set ingress.tls.secretName=tls-secret \
--set configuration.AuthenticationScheme=None \
--atomic
8.5B - TLS/SSL और authentication के बिना deployments के लिए
helm upgrade --install cdrplatform-portal-access cdrplatform-portal-access \
--set image.registry=glasswallhub.azurecr.io \
--set configuration.AuthenticationScheme=None \
--set image.tag=2.18.1-183506 \
--atomic
8.6 - MongoDB
MongoDB ऑपरेटर
helm install community-operator mongodb/community-operator --namespace cdrplatform \
--set operator.version=0.9.0 \
--set agent.version=107.0.0.8465-1
MongoDB इंस्टॉलेशन
helm upgrade -i cdrplatform-mongodb cdrplatform-mongodb -n cdrplatform --atomic \
--set cloud_provider=gcp
- Kubernetes secret से connection string प्राप्त करें
kubectl get secret mongodb-cdrplatform-cdrp-user -o jsonpath='{.data.connectionString\.standard}' | base64 -d
- MongoDB connection string के साथ Kubernetes secret को अपडेट करें (हटाएं और फिर से बनाएं)
kubectl create secret generic cdrplatform-secrets -n cdrplatform --from-literal=mongodb-cdrp-password=<Add-Value> --from-literal=mongodb-admin-password=<Add-Value> --from-literal=mongodb-connectionstring=<Add-Value>
8.7 - Policy Management API
Policy Management API का उपयोग Glasswall Halo content management flags के लिए policies को प्रबंधित करने के लिए किया जाता है। यह एक वैकल्पिक सेवा है, यदि आप custom polices बनाना और उपयोग करना चाहते हैं तो इसे इंस्टॉल करें।
helm upgrade --install cdrplatform-policy-api cdrplatform-policy-api \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=2.18.1-183506 \
--set cloud_provider=gcp
Policy API swagger page को निम्न का उपयोग करके एक्सेस किया जा सकता है
http://<ip>/swagger/index.html
8.8 - License management API
लाइसेंस प्रबंधन सेवा का उपयोग Glasswall Halo में लाइसेंस प्रबंधित करने के लिए किया जाता है।
helm upgrade --install cdrplatform-license-management cdrplatform-license-management -n license-management\
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=2.18.1-183506 \
-n license-management
8.9 - सेवा साफ़ करें
क्लीन अप सेवा फ़ाइलों के प्रोसेस होने के बाद persistent storage से मूल और पुनर्निर्मित फ़ाइलों को हटा देती है।
helm upgrade --install cdrplatform-cleanup cdrplatform-cleanup \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp \
--set image.tag=2.18.1-183506
8.10 - Asynchronous API
Asynchronous API को नीचे दिए गए कमांड का उपयोग करके डिप्लॉय किया जा सकता है। Asynchronous API के लिए MongoDB डेटाबेस एक पूर्व-आवश्यकता है।
helm upgrade --install cdrplatform-async-api cdrplatform-async-api \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp
8.11 - Metrics projection
Metrics projection सेवा का उपयोग MongoDB से रिपोर्टिंग डेटा खींचकर Portal UI में प्रदर्शित करने के लिए किया जाता है।
helm upgrade --install cdrplatform-metrics-projection cdrplatform-metrics-projection \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp
8.12 - Report extractor
Report extractor सेवा विश्लेषण रिपोर्टों को निकालती है और उन्हें रिपोर्टिंग के लिए प्रकाशित करती है।
helm upgrade --install cdrplatform-report-extractor cdrplatform-report-extractor \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp
8.13 - Tally accumulator
Tally accumulator सेवा उपयोग सांख्यिकी की गणना को ट्रैक करती है और बनाए रखती है।
helm upgrade --install cdrplatform-tally-accumulator cdrplatform-tally-accumulator \
--set image.tag=2.18.1-183506 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=gcp
8.14 - Storage monitoring सेवा
Storage monitoring सेवा कॉन्फ़िगर की गई स्टोरेज सेवाओं जैसे SharePoint और OneDrive में दस्तावेज़ों पर किए गए परिवर्तनों की सदस्यता लेने और उन्हें ट्रैक करने के लिए एक API प्रदान करती है।
Webhook के लिए TLS सक्षम होना चाहिए।
--set ingress.tls.enable_tls=trueऔर--set ingress.tls.domain=<domain name>parameters जोड़ें।
नीचे दिए गए उदाहरण में, TLS certificates प्राप्त करने के लिए API Access service के लिए बनाया गया वही Kubernetes secret उपयोग किया जाता है।
domain_name=""
helm upgrade --install cdrplatform-storage-monitor cdrplatform-storage-monitor --wait --atomic \
--set image.tag="2.18.1-183506" \
--set image.repository="glasswallhub.azurecr.io/cdrplatform-storage-monitor" \
--set configuration.DATABASE__Provider="${database_provider}" \
--set configuration.WEBHOOKS__CallbackBaseAddress="https://${domain_name}" \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${domain_name} \
--set ingress.tls.secretName=tls-secret \
--atomic
8.15 - वैकल्पिक Prometheus स्केलिंग
Prometheus scaling chart केवल तभी install करें जब आप Prometheus-based scaling सक्षम करना चाहते हों।
helm upgrade --install prometheus-scaling prometheus-scaling --wait --atomic \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=3.10.0 \
--set imagePullSecrets[0].name=acr-secret \
--set keda.icap.enabled=<true|false>
8.16 - Portal और API access
अपने cluster से जुड़े external-IP का पता लगाने के लिए नीचे दिया गया command उपयोग करें:
Note: external-IP, AWS load balancer से जुड़े public IP address के समान होगा।
kubectl get services --namespace cdrplatform nginx-ingress-ingress-nginx-controller --output jsonpath='{.status.loadBalancer.ingress[0].ip}'
अब आप ऊपर प्राप्त IP का उपयोग करके Portal और API documentation पर जा सकते हैं।
Note: यदि TLS enabled है, तो HTTPs का उपयोग करें।
Portal: http://<ip>
API documentation: http://<ip>/swagger/index.html
बधाई हो, आपने Glasswall Halo को सफलतापूर्वक deploy कर लिया है!