Lumaktaw sa pangunahing nilalaman

Hakbang 8 - I-install ang mga component ng CDR.md

Panghuli, i-install ang mga application service ng CDR. Para sa mga chart na ito, tiyaking itatakda mo ang image tag sa kaukulang tag na makikita sa mga release note.

Ang mga halimbawa sa ibaba ay naka-pre-populate na gamit ang mga tag para sa v2.18.1:

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 - Serbisyo ng access sa API

Ang serbisyo ng API Access ay nagsisilbing gateway sa Glasswall Halo Synchronous API at sa Policy Management API.

Inilalantad nito ang functionality ng CDR sa pamamagitan ng HTTP. Kung nangangailangan ang iyong environment ng HTTPS na may TLS o SSL, sundin ang mga tagubilin sa pag-install para sa pag-enable ng TLS o SSL. Kung hindi, sundin ang mga tagubilin para sa pag-install nang walang TLS o SSL.

8.3A - Para sa mga deployment na walang TLS/SSL

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 - Para sa mga deployment na may TLS/SSL

Upang gumamit ng mga SSL certificate sa CDR API, gumawa ng private key at certificate para sa domain na gagamitin.

Gumawa ng Kubernetes secret gamit ang key at CRT files sa pamamagitan ng command sa ibaba. Sa command na ito, gumagawa tayo ng secret na may pangalang "tls-secret" mula sa mga file na server.key (private key) at server.crt (certificate). Hindi dapat passphrase protected ang key sa halimbawang ito.

kubectl create secret tls tls-secret --key server.key --cert server.crt

Magagamit ang secret na ito upang i-enable ang TLS sa ingress, na tinitiyak na nakatakda ang domain name sa command sa ibaba:

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 - I-enable ang admin access nang walang authentication

Kapag hindi naka-enable ang Single Sign-On (SSO) login sa portal, hindi maa-access ang mga administrative feature, gaya ng license management at policy configuration. Para ma-enable ang access sa mga admin feature na ito nang hindi nagseset up ng SSO, i-deploy ang Helm chart gamit ang sumusunod na configuration:

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 - Para i-enable ang basic API authentication

Ang Authentication sa Glasswall Halo ay naka-disable bilang default; kapag na-enable, maa-activate ang authentication para sa parehong Glasswall Halo Synchronous API at Policy Management API. Kung kailangang i-enable ang authentication:

  • Gumawa ng dalawang secret sa Google Secrets Manager: isa para sa organisation ID at isa para sa organisation tokens.

    • Kapag nagsespecify ng maraming token, paghiwalayin ang mga ito gamit ang mga kuwit.
    • Tiyaking ang bawat indibidwal na token ay walang kuwit.
  • Ang mga secret sa Google Secrets Manager ay dapat sumunod sa mga naming convention sa ibaba.

    • Secret ng Organisation ID

      • Dapat magsimula sa organisation
      • Dapat magtapos sa -id
      • Isama ang isang numeric index sa pagitan ng prefix at suffix
      • Mga halimbawa: organisation0-id, organisation1-id, organisation2-id
    • Secret ng mga token ng organisasyon

      • Dapat magsimula sa organisation
      • Dapat magtapos sa -tokens
      • Isama ang isang numeric index sa pagitan ng prefix at suffix
      • Mga halimbawa: organisation0-tokens, organisation1-tokens, organisation2-tokens
  • Itakda ang configuration.AuthenticationScheme=Basic habang dine-deploy ang Helm chart. Halimbawa:

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

Para i-deploy ang serbisyo ng Halo Portal, patakbuhin ang mga command sa ibaba.

8.4A - Para sa mga deployment na walang TLS/SSL

Tandaan: ang ip_address na binanggit sa command na ito ay tumutukoy sa public IP address ng load balancer. Maaari itong makuha sa pamamagitan ng mga hakbang na "Portal & API Access" sa ibaba.

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 - Para sa mga deployment na may TLS/SSL

Kung kinakailangan ang TLS, idagdag ang parameter na --set ingress.tls.enable_tls=true at itakda ang portal_domain=<domain name>.

Sa halimbawa sa ibaba, ang parehong Kubernetes secret na ginawa para sa serbisyo ng API Access ay ginagamit upang kunin ang mga TLS certificate.

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 - Access sa Portal

Ang Portal access service ay nagsisilbing backend para sa Halo Portal. Pinapahintulutan nito ang Halo Portal na ma-access ang Policy Management API at Synchronous API.

8.5A - Para sa mga deployment na may TLS/SSL

Kung kinakailangan ang TLS, idagdag ang mga parameter na --set ingress.tls.enable_tls=true at --set ingress.tls.domain=<domain name>.

Sa halimbawa sa ibaba, ang parehong Kubernetes secret na ginawa para sa API access service ay ginagamit upang kunin ang mga TLS certificate.

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 - Para sa mga deployment na walang TLS/SSL at authentication

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 operator

helm install community-operator mongodb/community-operator --namespace cdrplatform \
--set operator.version=0.9.0 \
--set agent.version=107.0.0.8465-1

Pag-install ng MongoDB

helm upgrade -i cdrplatform-mongodb cdrplatform-mongodb -n cdrplatform --atomic \
--set cloud_provider=gcp
  • Kunin ang connection string mula sa Kubernetes secret
kubectl get secret mongodb-cdrplatform-cdrp-user -o jsonpath='{.data.connectionString\.standard}' | base64 -d
  • I-update ang Kubernetes secret gamit ang MongoDB connection string (alisin at muling likhain)
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

Ang Policy Management API ay ginagamit upang pamahalaan ang mga policy para sa mga flag ng pamamahala ng nilalaman ng Glasswall Halo. Isa itong opsyonal na serbisyo; i-install ito kung nais mong gumawa at gumamit ng mga custom na policy.

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

Maaaring ma-access ang swagger page ng Policy API gamit ang

http://<ip>/swagger/index.html

8.8 - API sa pamamahala ng lisensya

Ang serbisyo ng License management ay ginagamit upang pamahalaan ang mga lisensya sa 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 - Linisin ang serbisyo

Tinatanggal ng serbisyo ng Clean up ang mga orihinal at muling binuong file mula sa persistent storage pagkatapos maproseso ang mga file.

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

Maaaring i-deploy ang Asynchronous API gamit ang command sa ibaba. Ang MongoDB database ay isang paunang kinakailangan para sa Asynchronous API.

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 - Projection ng metrics

Ginagamit ang serbisyo ng Metrics projection upang kunin ang reporting data mula sa MongoDB para maipakita sa 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 - Extractor ng ulat

Kinukuha ng serbisyo ng Report extractor ang mga ulat ng pagsusuri at inilalathala ang mga ito para sa reporting.

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

Sinusubaybayan at pinananatili ng serbisyo ng Tally accumulator ang tally ng mga istatistika ng paggamit.

 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 - Serbisyo sa pagsubaybay ng storage

Ang serbisyo sa pagsubaybay ng Storage ay nagbibigay ng API upang mag-subscribe sa at subaybayan ang mga pagbabagong ginawa sa mga dokumento sa mga naka-configure na storage service gaya ng SharePoint at OneDrive.

Dapat naka-enable ang TLS para sa Webhook.

  • Idagdag ang mga parameter na --set ingress.tls.enable_tls=true at --set ingress.tls.domain=<domain name>.

Sa halimbawa sa ibaba, ang parehong Kubernetes secret na ginawa para sa serbisyo ng API Access ay ginagamit upang kunin ang mga TLS certificate.

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 - Opsyonal na Prometheus scaling

I-install lamang ang Prometheus scaling chart kung gusto mong i-enable ang 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 - Access sa Portal & API

Gamitin ang command sa ibaba upang matukoy ang external-IP na nauugnay sa iyong cluster:

Tandaan: Ang external-IP ay magiging kapareho ng pampublikong IP address na nakakabit sa AWS load balancer.

kubectl get services --namespace cdrplatform nginx-ingress-ingress-nginx-controller --output jsonpath='{.status.loadBalancer.ingress[0].ip}'

Maaari mo na ngayong gamitin ang ibinalik na IP sa itaas upang pumunta sa Portal at dokumentasyon ng API.

Tandaan: gamitin ang HTTPs kung naka-enable ang TLS.

Portal: http://<ip>
API documentation: http://<ip>/swagger/index.html


Binabati kita, matagumpay mong na-deploy ang Glasswall Halo!