-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
26 changed files
with
807 additions
and
139 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# =================================================== | ||
# Deploy Syft High Side Node to an AKS Cluster | ||
# DOES NOT sync seaweedfs to a Azure bucket | ||
# =================================================== | ||
|
||
node: | ||
name: syft-azure | ||
side: high | ||
rootEmail: [email protected] | ||
defaultWorkerPoolCount: 1 | ||
resourcesPreset: 2xlarge | ||
|
||
ingress: | ||
# Make sure cluster is created with --enable-app-routing | ||
# az aks create -g group-name -n cluster-name -l region --enable-app-routing | ||
className: webapprouting.kubernetes.azure.com | ||
# or, has azure-application-gateway setup through dashboard or CLI | ||
# className: azure-application-gateway | ||
|
||
|
||
seaweedfs: | ||
resourcesPreset: 2xlarge | ||
|
||
proxy: | ||
resourcesPreset: medium | ||
|
||
registry: | ||
resourcesPreset: medium | ||
|
||
frontend: | ||
resourcesPreset: medium | ||
|
||
mongo: | ||
resourcesPreset: large |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# GCS Deployment | ||
|
||
## Resource Links | ||
* [Autopilot Overview](https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-overview) | ||
* [Autopilot Resource Limits Defaults](https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-resource-requests#compute-class-defaults) | ||
* [AutoPilot Resource Limits Min/Max](https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-resource-requests#min-max-requests) | ||
* [Compute Classes](https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-compute-classes) | ||
* [Performance Pods](https://cloud.google.com/kubernetes-engine/docs/how-to/performance-pods) | ||
|
||
## Setup | ||
|
||
Helm `values.yaml` for high & low side deployments | ||
- [`gcp.high.yaml`](./gcp.high.yaml) | ||
- [`gcp.low.yaml`](./gcp.low.yaml) | ||
|
||
Deployment on GKE with SeaweedFS sync to GCS requires: | ||
1. A GCS bucket in the same project where the cluster will be deployed | ||
* `syft-bucket-high` (for high side deployment) | ||
* `syft-bucket-low` (for low side deployment) | ||
|
||
2. An IAM service account with sufficient permissions to read/write/delete object to these buckets | ||
|
||
## For Autopilot Cluster | ||
|
||
Uncomment the `nodeSelector` to use a specific compute class + machine family. | ||
|
||
Set resource limits in-line with the machine family | ||
|
||
```yaml | ||
nodeSelector: | ||
cloud.google.com/compute-class: Performance | ||
cloud.google.com/machine-family: c3 | ||
|
||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
# =================================================== | ||
# Deploy Syft High Side Node to a GKE Cluster | ||
# Syncs seaweedfs to a GCS bucket "syft-bucket-high" | ||
# =================================================== | ||
|
||
node: | ||
name: syft-gcp | ||
side: high | ||
|
||
# Force backend to write results to this bucket | ||
# should be same as mountApi.mounts.local_bucket | ||
defaultBucketName: syft-bucket-high-gcs | ||
|
||
# For autopilot clusters with GKE 1.28+, uncomment this | ||
# nodeSelector: | ||
# cloud.google.com/compute-class: Performance | ||
# cloud.google.com/machine-family: c3 | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
seaweedfs: | ||
storageSize: 100Gi | ||
|
||
mountApi: | ||
# Mount remote GCS bucket named "syft-bucket-high" to seaweedfs bucket named "syft-bucket-high-gcs | ||
mounts: | ||
- local_bucket: syft-bucket-high-gcs | ||
remote_bucket: | ||
type: gcs | ||
bucket_name: syft-bucket-high | ||
# filename should be as secret.mountCredentials.name | ||
# directory will always be /run/secrets/ | ||
creds: /run/secrets/gcs_creds.json | ||
|
||
secret: | ||
mountCredentials: | ||
# remove this comment and paste the Service Account JSON Here | ||
# TODO: move to workload identity | ||
- name: gcs_creds.json | ||
value: | | ||
{ | ||
"": "" | ||
} | ||
# For autopilot clusters with GKE 1.28+, uncomment this | ||
# nodeSelector: | ||
# cloud.google.com/compute-class: Performance | ||
# cloud.google.com/machine-family: c3 | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
ingress: | ||
# GKE 1.28+ need ingressClassName | ||
className: gce | ||
class: gce | ||
|
||
proxy: | ||
resourcesPreset: medium | ||
|
||
registry: | ||
resourcesPreset: medium | ||
|
||
frontend: | ||
resourcesPreset: medium | ||
|
||
mongo: | ||
resourcesPreset: large |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
# =================================================== | ||
# Deploy Syft Low Side Node to a GKE Cluster | ||
# Syncs seaweedfs to a GCS bucket "syft-bucket-low" | ||
# =================================================== | ||
|
||
node: | ||
name: syft-gcp | ||
side: low | ||
|
||
# Force backend to write results to this bucket | ||
# should be same as mountApi.mounts.local_bucket | ||
defaultBucketName: syft-bucket-low-gcs | ||
|
||
# For autopilot clusters with GKE 1.28+, uncomment this | ||
# nodeSelector: | ||
# cloud.google.com/compute-class: Performance | ||
# cloud.google.com/machine-family: c3 | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
seaweedfs: | ||
storageSize: 100Gi | ||
|
||
mountApi: | ||
# Mount remote GCS bucket named "syft-bucket-low" to seaweedfs bucket named "syft-bucket-low-gcs | ||
mounts: | ||
- local_bucket: syft-bucket-low-gcs | ||
remote_bucket: | ||
type: gcs | ||
bucket_name: syft-bucket-low | ||
# filename should be as secret.mountCredentials.name | ||
# directory will always be /run/secrets/ | ||
creds: /run/secrets/gcs_creds.json | ||
|
||
secret: | ||
mountCredentials: | ||
# remove this comment and paste the Service Account JSON Here | ||
# TODO: move to workload identity | ||
- name: gcs_creds.json | ||
value: | | ||
{ | ||
"": "" | ||
} | ||
# For autopilot clusters with GKE 1.28+, uncomment this | ||
# nodeSelector: | ||
# cloud.google.com/compute-class: Performance | ||
# cloud.google.com/machine-family: c3 | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
ingress: | ||
# GKE 1.28+ need ingressClassName | ||
className: gce | ||
class: gce | ||
|
||
proxy: | ||
resourcesPreset: medium | ||
|
||
registry: | ||
resourcesPreset: medium | ||
storageSize: 50Gi | ||
|
||
frontend: | ||
resourcesPreset: medium | ||
|
||
mongo: | ||
resourcesPreset: large |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
# =================================================== | ||
# Deploy Syft High Side Node to a GKE Cluster | ||
# DOES NOT sync seaweedfs to a GCS bucket | ||
# =================================================== | ||
|
||
node: | ||
name: syft-gcp | ||
side: high | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
seaweedfs: | ||
storageSize: 100Gi | ||
|
||
# Resources set inline with c3-standard-4 machine type | ||
resources: | ||
requests: | ||
cpu: 2 | ||
memory: "8Gi" | ||
limits: | ||
cpu: 4 | ||
memory: "16Gi" | ||
|
||
ingress: | ||
# GKE 1.28+ need ingressClassName | ||
className: gce | ||
class: gce | ||
|
||
proxy: | ||
resourcesPreset: medium | ||
|
||
registry: | ||
resourcesPreset: medium | ||
storageSize: 100Gi | ||
|
||
frontend: | ||
resourcesPreset: medium | ||
|
||
mongo: | ||
resourcesPreset: large |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.