पूर्वापेक्षाएँ
Glasswall Halo को deploy करने की प्रक्रिया शुरू करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित tools और resources इंस्टॉल और setup किए गए हैं।
सिस्टम आवश्यकताएँ
निम्नलिखित guide यह मानकर लिखी गई है कि इसे Linux shell पर चलाया जा रहा है। यदि आप किसी अलग shell पर चला रहे हैं, तो कुछ commands को चलाने के लिए उनमें संशोधन करने की आवश्यकता हो सकती है।
यदि आप Windows पर चला रहे हैं, तो कृपया सुनिश्चित करें कि आप Windows subsystem for Linux का उपयोग कर रहे हैं।
आवश्यक tools
आवश्यक Azure संसाधन
1. AKS instance
-
कम से कम कुल 8 vCPU और 32 GB RAM की अनुशंसा की जाती है।
-
न्यूनतम node आकार 4 vCPU और 16 GB RAM है।
-
production workloads के लिए कम से कम 2 nodes की अनुशंसा की जाती है।
-
नीचे दिए गए चरणों में, AKS cluster को इस प्रकार संदर्भित किया गया है: aksname
नोट: Glasswall Halo arm64 node VMs का समर्थन नहीं करता है।
AKS cluster बनाने के मार्गदर्शन के लिए कृपया देखें:
2. Key Vault
-
Glasswall Halo secrets को Azure Key Vault का उपयोग करके प्रबंधित किया जाता है। इन secrets को External secrets के माध्यम से AKS cluster में sync किया जाता है।
-
नीचे दिए गए चरणों में, Key Vault को इस प्रकार संदर्भित किया गया है: kvname
Azure Key Vault बनाने के मार्गदर्शन के लिए कृपया देखें:
3. Storage account
-
platform द्वारा प्रोसेस की गई प्रत्येक फ़ाइल की reports संग्रहीत करने के लिए एक storage account का उपयोग किया जाता है। storage account का SKU performance को प्रभावित नहीं करता, लेकिन हम कम से कम GRS configuration की अनुशंसा करते हैं।
-
एक अतिरिक्त storage account का उपयोग cluster के persistent volume के लिए Azure file share backing के रूप में किया जाता है। इसे AKS cluster के resource group में स्वचालित रूप से जोड़ा जाता है।
-
नीचे दिए गए चरणों में, CDR reports एकत्र करने वाले storage account को इस प्रकार संदर्भित किया गया है: saname
File shares:
-
1 X 10 TB provisioned capacity (1100.0 MiB/s throughput)
- Glasswall Halo transient file store और Glasswall Halo RabbitMQ के लिए उपयोग किया जाता है
4. Database
Option 1 - MongoDB database
MongoDB का उपयोग Glasswall Halo content management policies और asynchronous file processing के लिए आवश्यक data को संग्रहीत करने के लिए किया जा सकता है। MongoDB का उपयोग cdrplatform-policy-API, cdrplatform-async-API, cdrplatform-metrics-projection, cdrplatform-tally-accumulator services द्वारा किया जाता है।
-
MongoDB API compatibility के साथ एक CosmosDB deploy करें।
-
सुनिश्चित करें कि instance को उपयुक्त throughput allocation के साथ setup किया गया है, यह इस पर निर्भर करता है कि Glasswall Halo से कितना data गुजरने की अपेक्षा है।
नोट: वैकल्पिक रूप से, MongoDB को सीधे आपके cluster के अंदर deploy किया जा सकता है। इसे MongoDB Helm charts का उपयोग करके deploy किया जा सकता है, जैसा कि Step 8 में दिखाया गया है।
विकल्प 2 - CosmosDB database
वैकल्पिक रूप से, CosmosDB का उपयोग Glasswall Halo content management policies, asynchronous file processing के लिए data, और metrics को store करने के लिए किया जा सकता है।
-
Azure में एक CosmosDB instance deploy करें।
- सुनिश्चित करें कि instance को उपयुक्त throughput allocation के साथ setup किया गया है, यह इस पर निर्भर करता है कि Glasswall Halo से कितना data गुजरने की अपेक्षा है।
5. App registrations
SSO authentication का उपयोग करने के लिए Glasswall Halo के Portal हेतु एक domain name configure किया जाना चाहिए।
जब भी Azure AD का उपयोग करके SSO authentication सक्षम करना हो, Azure app registrations आवश्यक होते हैं।
3 app registrations बनाए जाने आवश्यक हैं:
-
cdrplatform-API-access
-
cdrplatform-portal-access
-
cdrplatform-portal-client
संलग्न shell script इन 3 app registrations को बनाने में मदद करती है। Portal के लिए जिस domain name का उपयोग करना चाहते हैं, उसे shell script के लिए argument के रूप में दर्ज करें। उदाहरण के लिए, domain name के रूप में halo.glasswall.com का उपयोग करें और script चलाएँ:
bash create-azure-app-registrations.sh halo.glasswall.com
Glasswall Artifact Registry तक पहुँच
-
आपको Glasswall's Artifact Registry तक पहुँचने के लिए एक token और token ID प्रदान की जाती है।
-
यह आपको अपने AKS cluster से सीधे container images और Helm charts pull करने की अनुमति देता है।
-
नीचे दिए गए चरणों में, token और token ID को इस प्रकार संदर्भित किया जाएगा: token और token_id.
वेरिएबल असाइन करना
शुरू करने से पहले असाइन किए गए वेरिएबल
ऊपर Required Tools में बताए गए वेरिएबल, Glasswall Halo installation शुरू करने से पहले असाइन किए जाने चाहिए। आपको **"..." **को अपने मानों से बदलना होगा।
-
Azure resource group का नाम: rgp="..."
-
Azure Kubernetes service का नाम: aksname="..."
-
Azure Key Vault का नाम: kvname="..."
-
Azure storage account का नाम: saname="..."
-
Azure container registry token ID: token_id="..."
-
Azure container registry token: token="..."
**नोट: ऊपर दिए गए चरण यह मानते हैं कि प्रत्येक resource उसी resource group में है, जिसे rgp कहा गया है। **
चरणों के दौरान असाइन किए गए वेरिएबल
निम्नलिखित वेरिएबल installation प्रक्रिया के दौरान, resources बनाए जाने पर, असाइन करने होंगे।
-
Azure storage account connection string: saconnstring ="..."
-
objectid का उपयोग करके key vault get और list permissions के लिए managed identity access: objectid ="..."
-
Helm install के लिए client ID का उपयोग करके key vault तक Managed identity access: miclientid ="..."
नोट: सुनिश्चित करें कि सही database provider सेटअप है और Step 3 में बताए अनुसार संबंधित secrets Key Vault में हैं।
| Variable | provider |
|---|---|
Mongo | MongoDB |
Cosmos | CosmosDB |