Chuyển đến nội dung chính

Bước 7 - Cài đặt các thành phần CDR

Cuối cùng, cài đặt các dịch vụ Glasswall Halo. Với mỗi Helm chart, hãy đảm bảo rằng image tag được đặt thành phiên bản tương ứng được liệt kê trong ghi chú phát hành.

Các ví dụ dưới đây được điền sẵn các giá trị cho v2.16.0.

7.1 - Engine

Để tích hợp Halo với ReversingLabs, hãy đặt biến enable_reversing_labs thành true. Hãy đảm bảo rằng các secret của ReversingLabs đã được tạo trong Vault, như được mô tả ở Bước 3.

enable_reversing_labs=""
helm upgrade --install cdrplatform-engine cdrplatform-engine -n cdrplatform \
--set image.tag=165275 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle \
--set configuration.ENABLE_REVERSING_LABS="${enable_reversing_labs}" \
--atomic

7.2 - API đồng bộ

helm upgrade --install cdrplatform-sync-api cdrplatform-sync-api -n cdrplatform \
--set image.tag=166415 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle

7.3 - Dịch vụ API Access

Dịch vụ API Access hoạt động như một cổng vào Glasswall Halo Synchronous API và Policy Management API.

Dịch vụ này cung cấp chức năng CDR qua HTTP. Nếu môi trường của bạn yêu cầu HTTPS với TLS hoặc SSL, hãy làm theo hướng dẫn để cài đặt dịch vụ với TLS hoặc SSL được bật. Nếu không, hãy làm theo hướng dẫn cài đặt không có TLS hoặc SSL.

7.3A - Dành cho các triển khai không có TLS/SSl

helm upgrade --install cdrplatform-api-access -n cdrplatform cdrplatform-api-access \
--set image.registry=glasswallhub.azurecr.io \
--atomic --set image.tag=165925

7.3B - Để sử dụng chứng chỉ SSL trên CDR API, hãy tạo khóa riêng tư và chứng chỉ cho miền sẽ được sử dụng.

Tạo một Kubernetes secret bằng cách sử dụng các tệp key và CRT với lệnh bên dưới. Với lệnh này, chúng ta tạo một secret có tên "tls-secret" từ các tệp server.key (khóa riêng) và server.crt (chứng chỉ). Trong ví dụ này, key không được bảo vệ bằng passphrase.

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

Secret này sau đó có thể được օգտագործ để bật TLS trên ingress, bảo đảm rằng tên miền được đặt trong lệnh bên dưới:

helm upgrade --install cdrplatform-api-access -n cdrplatform cdrplatform-api-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=165925 \
--set cloud_provider=oracle \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=<domain name> \
--set ingress.tls.secretName=tls-secret \
--atomic

7.3C - Bật xác thực API

Xác thực cho Glasswall Halo API bị tắt theo mặc định. Để bật xác thực, hãy hoàn thành các bước bên dưới.

  • Thêm hai mục mới vào secret Vault vault_secret_name.

    • Một mục cho ID tổ chức
    • Một mục cho token của tổ chức

    Khi chỉ định nhiều token, hãy phân tách chúng bằng dấu phẩy. Đảm bảo rằng từng token riêng lẻ không chứa dấu phẩy.

  • Các mục secret trong Vault phải tuân theo các quy ước đặt tên dưới đây.

    • ID tổ chức

      • Phải bắt đầu bằng organisation
      • Phải kết thúc bằng -id
      • Bao gồm một chỉ mục số giữa tiền tố và hậu tố
      • Ví dụ: organisation1-id, organisation2-id, organisation3-id
    • Token tổ chức

      • Phải bắt đầu bằng organisation
      • Phải kết thúc bằng -tokens
      • Bao gồm một chỉ mục số giữa tiền tố và hậu tố
      • Ví dụ: organisation1-tokens, organisation2-tokens, organisation3-tokens
{
"organisation1-id": "org-1",
"organisation1-tokens": "org-1-token-1,org-1-token-2"
}
  • Đặt configuration.AuthenticationScheme=Basic trong khi triển khai helm chart. Ví dụ,
  helm upgrade --install cdrplatform-api-access -n cdrplatform cdrplatform-api-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=165925 \
--set configuration.AuthenticationScheme=Basic \
--set cloud_provider=oracle \
--atomic

7.4 - Portal

7.4A - Triển khai không có TLS hoặc SSL

Để triển khai dịch vụ Portal, hãy chạy các lệnh bên dưới.

Lưu ý: <IP-address> được tham chiếu trong các lệnh này là địa chỉ IP công khai của bộ cân bằng tải. Có thể lấy địa chỉ này bằng cách làm theo các bước Portal and API Access bên dưới.

helm upgrade --install cdrplatform-portal cdrplatform-portal -n cdrplatform \
--set image.registry=glasswallhub.azurecr.io \
--set configuration.OIDC=null \
--set image.tag=166435 \
--set configuration.BackendUrl=http://<IP-address> \
--set configuration.HaloVersion=2.16.0 \
--atomic

7.4B - Triển khai có TLS hoặc SSL

Để bật TLS, thêm các tham số --set ingress.tls.enable_tls=true--set ingress.tls.domain=<domain name>.

Trong ví dụ bên dưới, cùng một Kubernetes secret được tạo cho dịch vụ API Access được dùng để lấy các chứng chỉ TLS.

helm upgrade --install cdrplatform-portal cdrplatform-portal -n cdrplatform \
--set image.tag=166435 \
--set image.registry=glasswallhub.azurecr.io \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=<domain name> \
--set ingress.tls.secretName=tls-secret \
--set configuration.BackendUrl=https://<domain name> \
--set configuration.OIDC=null \
--set configuration.HaloVersion=2.16.0 \
--atomic

7.4C - Bật quyền truy cập quản trị mà không cần xác thực

Khi đăng nhập Single Sign On chưa được bật cho Portal, các tính năng quản trị như quản lý giấy phép và cấu hình policy sẽ không thể truy cập.

Để bật quyền truy cập vào các tính năng quản trị này mà không cần cấu hình SSO, hãy triển khai Helm chart với cấu hình sau.

helm upgrade --install cdrplatform-portal cdrplatform-portal \
--set image.tag=166435 \
--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

7.5 - MongoDB

MongoDB là điều kiện tiên quyết cho Policy Management API và Asynchronous API.

helm upgrade -i cdrplatform-mongodb cdrplatform-mongodb -n cdrplatform --atomic \
--set cloud_provider=oracle

Sau khi MongoDB được triển khai, hãy lấy chuỗi kết nối của MongoDB và thêm chuỗi này vào secret key-value.

  • Truy xuất chuỗi kết nối từ Kubernetes secret:
kubectl get secret mongodb-cdrplatform-cdrp-user -o jsonpath='{.data.connectionString\.standard}' | base64 -d
  • Cập nhật Oracle Vault secret bằng cách thêm cặp key-value:
{
"mongodb-connectionstring": "<output-from-previous-step>"
}
  • Sau khi cập nhật Oracle Vault, hãy chạy lệnh sau để đồng bộ các secret với Kubernetes.
kubectl annotate externalsecret external-secret updated_at=$(date +%s) --overwrite -n cdrplatform
  • Mô tả Kubernetes secret cdrplatform-secrets và xác minh rằng mongodb-connectionstring hiện diện và đã được đồng bộ. Sau đó tiếp tục triển khai các Helm chart tiếp theo.
kubectl describe secret cdrplatform-secrets

7.6 - Policy Management API

Policy Management API được sử dụng để quản lý các cờ quản lý nội dung của Glasswall Halo. Dịch vụ này là tùy chọn và chỉ nên được cài đặt nếu bạn dự định tạo và sử dụng các policy tùy chỉnh.

helm upgrade --install cdrplatform-policy-api -n cdrplatform cdrplatform-policy-api \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=165921 \
--set cloud_provider=oracle

7.7 - Truy cập Portal

Dịch vụ Portal Access hoạt động như backend cho Portal. Dịch vụ này cho phép Portal truy cập Policy Management API và Synchronous API.

7.7A - Triển khai với TLS hoặc SSL

Nếu требуется TLS, hãy thêm các tham số --set ingress.tls.enable_tls=true--set ingress.tls.domain=<domain name>.

Trong ví dụ bên dưới, cùng một Kubernetes secret được tạo cho dịch vụ API Access được dùng để lấy các chứng chỉ TLS.

helm upgrade --install cdrplatform-portal-access -n cdrplatform cdrplatform-portal-access \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=166410 \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=<domain-name> \
--set ingress.tls.secretName=tls-secret \
--set configuration.AuthenticationScheme=None \
--atomic

7.7B - Dành cho các triển khai không có TLS/SSL

helm upgrade --install cdrplatform-portal-access -n cdrplatform cdrplatform-portal-access \
--set image.registry=glasswallhub.azurecr.io \
--set configuration.AuthenticationScheme=None \
--set image.tag=166410 \
--atomic

7.8 - Quản lý giấy phép

Dịch vụ License management được sử dụng để quản lý giấy phép trong Glasswall Halo.

helm upgrade --install cdrplatform-license-management cdrplatform-license-management \
--set image.registry=glasswallhub.azurecr.io \
--set image.tag=157724 \
-n license-management \
--atomic

7.9 - Dịch vụ dọn dẹp

Dịch vụ Clean up xóa các tệp gốc và các tệp đã được dựng lại khỏi bộ nhớ lưu trữ bền vững sau khi các tệp được xử lý.

helm upgrade --install cdrplatform-cleanup cdrplatform-cleanup \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle \
--set image.tag=165228 \
--atomic

7.10 API không đồng bộ

Asynchronous API có thể được triển khai bằng lệnh bên dưới. Cần có cơ sở dữ liệu MongoDB cho Asynchronous API.

helm upgrade --install cdrplatform-async-api cdrplatform-async-api \
--set image.tag=166413 \
--set image.registry=glasswallhub.azurecr.io \
--atomic

7.11 - Tổng hợp số liệu (đã bị loại bỏ từ phiên bản 2.6.2)

Dịch vụ tổng hợp số liệu ghi nhận các sự kiện từ CDRPlatform và lưu trữ chúng trong MongoDB. Chỉ triển khai dịch vụ này khi sử dụng Halo phiên bản 2.6.1 trở xuống.

helm upgrade --install cdrplatform-metrics-collation cdrplatform-metrics-collation \
--set image.tag=120018 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle \
--atomic

7.12 - Chiếu số liệu

Dịch vụ chiếu số liệu được dùng để lấy dữ liệu báo cáo từ MongoDB nhằm hiển thị trong Portal UI.

helm upgrade --install cdrplatform-metrics-projection cdrplatform-metrics-projection \
--set image.tag=166407 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle \
--atomic

7.13 - Trình trích xuất báo cáo

Dịch vụ Report extractor trích xuất các báo cáo phân tích và phát hành chúng để phục vụ báo cáo.

helm upgrade --install cdrplatform-report-extractor cdrplatform-report-extractor \
--set image.tag=166411 \
--set image.registry=glasswallhub.azurecr.io \
--wait --atomic

7.11 - Bộ tích lũy tally

Dịch vụ Tally accumulator theo dõi và duy trì số liệu thống kê sử dụng.

helm upgrade --install cdrplatform-tally-accumulator cdrplatform-tally-accumulator \
--set image.tag=165227 \
--set image.registry=glasswallhub.azurecr.io \
--set cloud_provider=oracle \
--wait --atomic

7.12 - Dịch vụ giám sát lưu trữ

Dịch vụ Storage Monitoring cung cấp một API để đăng ký và theo dõi các thay đổi được thực hiện đối với tài liệu trong các dịch vụ lưu trữ đã cấu hình như SharePoint.

TLS phải được bật cho webhook.

Thêm các tham số --set ingress.tls.enable_tls=true--set ingress.tls.domain=<domain name>.

Trong ví dụ bên dưới, cùng một Kubernetes secret được tạo cho dịch vụ API Access được dùng để lấy các chứng chỉ TLS.

helm upgrade --install cdrplatform-storage-monitor cdrplatform-storage-monitor --wait --atomic \
--set image.tag="165098" \
--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

7.13 - Truy cập Portal và API

Sử dụng lệnh bên dưới để xác định địa chỉ IP bên ngoài được liên kết với cluster của bạn.

Lưu ý: IP bên ngoài giống với địa chỉ IP công khai được gán cho bộ cân bằng tải Oracle Cloud.

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

Bây giờ bạn có thể sử dụng IP được trả về ở trên để truy cập Portal và tài liệu API (sử dụng https nếu TLS được bật):

Portal: http://<ip>
API Documentation: http://<ip>/swagger