diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/indexstar/deployment.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/indexstar/deployment.yaml index b3c56e605..04eb44398 100644 --- a/deploy/manifests/dev/us-east-2/tenant/storetheindex/indexstar/deployment.yaml +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/indexstar/deployment.yaml @@ -17,6 +17,7 @@ spec: # TLS handshake overhead. - '--backends=http://ber-indexer:3000/' - '--backends=http://cali-indexer:3000/' + - '--backends=http://ago-indexer:3000/' - '--backends=http://dhstore.internal.dev.cid.contact/' resources: limits: diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/README.md b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/README.md index 9a10c9f39..d92b8a4c6 100644 --- a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/README.md +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/README.md @@ -6,3 +6,4 @@ List of individually configurable instances: |----------|---------------|-------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------| | `ber` | io2 |1 | Pebble | [db83b7c9fab3615621063378fdda568c6e8ba209](https://github.com/filecoin-project/storetheindex/commit/9bdf7023f520aec1526e82dcb153e37d7eccd880) | | `cali` | io2 |1 | Pebble | [db83b7c9fab3615621063378fdda568c6e8ba209](https://github.com/filecoin-project/storetheindex/commit/9bdf7023f520aec1526e82dcb153e37d7eccd880) | +| `ago` | io2 |1 | DHStore | [ce3bb6c48f9e431c634d2eeb722d465328f9be77](https://github.com/ipni/storetheindex/commit/ce3bb6c48f9e431c634d2eeb722d465328f9be77) | diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/config.json b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/config.json new file mode 100644 index 000000000..4278b5d0a --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/config.json @@ -0,0 +1,105 @@ +{ + "Version": 2, + "Identity": { + "PeerID": "", + "PrivKey": "" + }, + "Addresses": { + "Admin": "/ip4/0.0.0.0/tcp/3002", + "Finder": "/ip4/0.0.0.0/tcp/3000", + "FinderWebpage": "https://web-ipni.cid.contact/dev", + "Ingest": "/ip4/0.0.0.0/tcp/3001", + "P2PAddr": "/ip4/0.0.0.0/tcp/3003", + "NoResourceManager": true + }, + "Bootstrap": { + "Peers": [ + "/dns4/bootstrap-0.ipfsmain.cn/tcp/34721/p2p/12D3KooWQnwEGNqcM2nAcPtRR9rAX8Hrg4k9kJLCHoTR5chJfz6d", + "/dns4/bootstrap-3.mainnet.filops.net/tcp/1347/p2p/12D3KooWKhgq8c7NQ9iGjbyK7v7phXvG6492HQfiDaGHLHLQjk7R", + "/dns4/bootstrap-4.mainnet.filops.net/tcp/1347/p2p/12D3KooWL6PsFNPhYftrJzGgF5U18hFoaVhfGk7xwzD8yVrHJ3Uc", + "/dns4/bootstrap-6.mainnet.filops.net/tcp/1347/p2p/12D3KooWP5MwCiqdMETF9ub1P3MbCvQCcfconnYHbWg6sUJcDRQQ", + "/dns4/bootstrap-7.mainnet.filops.net/tcp/1347/p2p/12D3KooWRs3aY1p3juFjPy8gPN95PEQChm2QKGUCAdcDCC4EBMKf", + "/dns4/bootstrap-8.mainnet.filops.net/tcp/1347/p2p/12D3KooWScFR7385LTyR4zU1bYdzSiiAb5rnNABfVahPvVSzyTkR", + "/dns4/node.glif.io/tcp/1235/p2p/12D3KooWBF8cpp65hp2u9LK5mh19x67ftAam84z9LsfaquTDSBpt", + "/dns4/bootstrap-2.mainnet.filops.net/tcp/1347/p2p/12D3KooWEWVwHGn2yR36gKLozmb4YjDJGerotAPGxmdWZx2nxMC4", + "/dns4/bootstrap-5.mainnet.filops.net/tcp/1347/p2p/12D3KooWLFynvDQiUpXoHroV1YxKHhPJgysQGH2k3ZGwtWzR4dFH", + "/dns4/bootstrap-1.starpool.in/tcp/12757/p2p/12D3KooWQZrGH1PxSNZPum99M1zNvjNFM33d1AAu5DcvdHptuU7u", + "/dns4/bootstrap-0.mainnet.filops.net/tcp/1347/p2p/12D3KooWCVe8MmsEMes2FzgTpt9fXtmCY7wrq91GRiaC8PHSCCBj", + "/dns4/bootstrap-1.mainnet.filops.net/tcp/1347/p2p/12D3KooWCwevHg1yLCvktf2nvLu7L9894mcrJR4MsBCcm4syShVc", + "/dns4/bootstrap-0.starpool.in/tcp/12757/p2p/12D3KooWGHpBMeZbestVEWkfdnC9u7p6uFHXL1n7m1ZBqsEmiUzz", + "/dns4/lotus-bootstrap.ipfsforce.com/tcp/41778/p2p/12D3KooWGhufNmZHF3sv48aQeS13ng5XVJZ9E6qy2Ms4VzqeUsHk", + "/dns4/bootstrap-1.ipfsmain.cn/tcp/34723/p2p/12D3KooWMKxMkD5DMpSWsW7dBddKxKT7L2GgbNuckz9otxvkvByP" + ], + "MinimumPeers": 4 + }, + "Datastore": { + "Type": "levelds", + "Dir": "/data/datastore", + "DirAdvertisements": "/addata" + }, + "Discovery": { + "FilterIPs": true, + "LotusGateway": "wss://api.chain.love", + "Policy": { + "Allow": true, + "Except": [ + ], + "Publish": true, + "PublishExcept": null + }, + "PollInterval": "1h0m0s", + "PollRetryAfter": "5m0s", + "PollStopAfter": "168h0m0s", + "PollOverrides": null, + "RediscoverWait": "5m0s", + "Timeout": "2m0s", + "UseAssigner": false + }, + "Indexer": { + "CacheSize": -1, + "ConfigCheckInterval": "30s", + "ShutdownTimeout": "15m", + "ValueStoreDir": "/data/valuestore", + "ValueStoreType": "pebble", + "DisableWAL": true, + "VSNoNewMH": true, + "DHBatchSize": -1, + "DHStoreURL": "http://dhstore.internal.dev.cid.contact" + }, + "Ingest": { + "AdvertisementDepthLimit": 33554432, + "EntriesDepthLimit": 65536, + "HttpSyncRetryMax": 4, + "HttpSyncRetryWaitMax": "30s", + "HttpSyncRetryWaitMin": "1s", + "HttpSyncTimeout": "10s", + "IngestWorkerCount": 20, + "KeepAdvertisements":true, + "PubSubTopic": "/indexer/ingest/mainnet", + "RateLimit": { + "Apply": false, + "Except": null, + "BlocksPerSecond": 0, + "BurstSize": 500 + }, + "ResendDirectAnnounce": false, + "StoreBatchSize": 8192, + "SyncSegmentDepthLimit": 2000, + "SyncTimeout": "2h0m0s" + }, + "Logging": { + "Level": "info", + "Loggers": { + "basichost": "warn", + "bootstrap": "warn", + "dt-impl": "warn", + "dt_graphsync": "warn", + "graphsync": "warn" + } + }, + "Peering": { + "Peers": [ + "/dns4/assigner/tcp/3003/p2p/12D3KooWDBjcDRQ7CKJeF9Yy3UKbriHfyETDrXKzTDB6biH3ibBd" + ] + } +} diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/deployment.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/deployment.yaml new file mode 100644 index 000000000..e1665cf75 --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/deployment.yaml @@ -0,0 +1,30 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: indexer +spec: + template: + spec: + terminationGracePeriodSeconds: 600 + containers: + - name: indexer + volumeMounts: + - name: data + mountPath: /data + - name: addata + mountPath: /addata + resources: + limits: + cpu: "3" + memory: 10Gi + requests: + cpu: "3" + memory: 10Gi + volumes: + - name: data + persistentVolumeClaim: + claimName: ago-data + - name: addata + persistentVolumeClaim: + claimName: ago-addata + diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/identity.key.encrypted b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/identity.key.encrypted new file mode 100644 index 000000000..7e6cf3789 --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/identity.key.encrypted @@ -0,0 +1,22 @@ +{ + "data": "ENC[AES256_GCM,data:67/0zlP6cJ9jtssu+vFzVUkuFkgEYIpFJZjpztbDcp53+3323qmTj8uoiTg3YAgmFRkeD0bj9fUXkj1E/NOEhFaf9R4=,iv:i9cKH73tZ+2owh/C0Zi1bYZZE3EEDuoD/XmNmGPxCRw=,tag:WCvzTiAr1+GeeXtJqNa/1g==,type:str]", + "sops": { + "kms": [ + { + "arn": "arn:aws:kms:us-east-2:407967248065:alias/sti_flux", + "created_at": "2023-01-20T11:47:21Z", + "enc": "AQICAHi99m+hXhXmjeAqO3v9MBDcMaC2zWJIlamGyiBfOVdULAHEXWzouv3pcR05YnPcN0WFAAAAfjB8BgkqhkiG9w0BBwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQM9RNbWpFKceGR9uwVAgEQgDtWvejyQX4NPwf6M/+t+Up/t4FJ3pN0g+S1MHeGqX5bW48S4FxtsTGkIymygsVYROwPMavmmZmTGlyt4w==", + "aws_profile": "" + } + ], + "gcp_kms": null, + "azure_kv": null, + "hc_vault": null, + "age": null, + "lastmodified": "2023-01-20T11:47:21Z", + "mac": "ENC[AES256_GCM,data:1MUTqHyhoQYgLUEbwI8OvqxLGqXk45f88CBu62ArTusgxI5b9R35cBrNhPevBiXbQjKKDGlJxkR37syKBfjRdm0cBQ0W+7V8Gpn+6j3Czh5/Kgf+MIlpWwDkmvadxnRENiCWfEWIlmRa/3WN7xcYb60Nc3OhH18VyTH7rZThazw=,iv:AV4GWYvSVOk8E2GcrgrvLuFG8QN/j8e3Pp1ktMABqxQ=,tag:LY3Si3+w0DGlmbaYvmBjig==,type:str]", + "pgp": null, + "encrypted_regex": "^(data|stringData)$", + "version": "3.7.3" + } +} \ No newline at end of file diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/ingress.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/ingress.yaml new file mode 100644 index 000000000..0b943c2bf --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/ingress.yaml @@ -0,0 +1,30 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: indexer + annotations: + kubernetes.io/ingress.class: "nginx" + cert-manager.io/cluster-issuer: "letsencrypt" +spec: + tls: + - hosts: + - ago.dev.cid.contact + secretName: ago-indexer-ingress-tls + rules: + - host: ago.dev.cid.contact + http: + paths: + - path: /ingest + pathType: Prefix + backend: + service: + name: indexer + port: + number: 3001 + - path: / + pathType: Prefix + backend: + service: + name: indexer + port: + number: 3000 diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/kustomization.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/kustomization.yaml new file mode 100644 index 000000000..10af932bf --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/kustomization.yaml @@ -0,0 +1,31 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +namespace: storetheindex + +resources: + - ../../../../../../base/storetheindex-single + - ingress.yaml + - pvc_addata.yaml + +namePrefix: ago- + +commonLabels: + name: ago + +secretGenerator: + - name: identity + behavior: replace + files: + - identity.key=identity.key.encrypted # 12D3KooWCSqbkKKKYW8RkqwRTt2M6xihv4LgmX5U1qDe3va7FR9Q + +configMapGenerator: + - name: config + behavior: replace + files: + - config=config.json + +patchesStrategicMerge: + - deployment.yaml + - pvc_data.yaml + diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_addata.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_addata.yaml new file mode 100644 index 000000000..3f1b35a61 --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_addata.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: addata +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 3Ti + storageClassName: io2 \ No newline at end of file diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_data.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_data.yaml new file mode 100644 index 000000000..81185b745 --- /dev/null +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/ago/pvc_data.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: data +spec: + resources: + requests: + storage: 1Ti + storageClassName: io2 \ No newline at end of file diff --git a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/kustomization.yaml b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/kustomization.yaml index e219f18a7..0909fb120 100644 --- a/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/kustomization.yaml +++ b/deploy/manifests/dev/us-east-2/tenant/storetheindex/instances/kustomization.yaml @@ -8,3 +8,4 @@ resources: - pod-monitor.yaml - ber - cali + - ago