VAMS (Visual Asset Management System) Version 2.x+ ist die offizielle anerkannte und genehmigte Versionserie.
Alle früheren 1.x -Versionen von VAMs, obwohl sie noch verfügbar sind, werden für die Verwendung nicht mehr unterstützt oder empfohlen.
Visual Asset Management System (VAMS) ist eine speziell gebaute AWS-native Lösung für die Verwaltung und Verteilung spezialisierter visueller Assets, die beim räumlichen Computing verwendet werden. VAMS bietet Organisationen eine vereinfachte Lösung, um visuelle Assets in der Cloud aufzunehmen, zu speichern und zu verwalten, die jedem Benutzer einen Webbrowser zum Hochladen, Verwalten, Visualisieren, Transformieren und Abrufen von visuellen Assets ermöglichen. Vorhandene Workflows, die sowohl benutzerdefinierte Code als auch vorgefertigte oder Drittanbieter-Anwendungen nutzen, können ebenfalls in VAMS migriert und in der AWS-Cloud ausgeführt werden, anstatt durch die verfügbare Kapazität vor Ort begrenzt zu werden. VAMS ist anpassbar und erweiterbar, um von Entwicklungsteams weiter auf bestimmte Anwendungsfälle zugeschnitten zu werden.
Kundenwert: VAMS befasst sich mit Herausforderungen, denen Kunden gegenüber räumlichen Computerinitiativen wie Augmented und Virtual Reality (AR/VR) vorgehen. Organisationen, die diese Vermögenswerte in lokalen Systemen zuvor verwalten mussten, können dies jetzt aus einer webbasierten Anwendung ausführen.
VAMS nutzt den Amazon Simple-Speicherdienst (Amazon S3) als kostengünstige und mit hohe Verfügbarkeitsschicht und bietet eine speziell gebaute API für 3D-Asset-Management. Diese API bietet eine Abstraktionsebene, mit der benutzerdefinierte Integrationen erstellt werden können. Benutzerdefinierte Integrationen ermöglichen die Verschiebung von Workloads und Anwendungen in die Cloud, wodurch der Zugriff auf die gesamte Breite und Tiefe des AWS -Ökosystems freigesetzt wird.
Insgesamt beruht VAMS Super Power aus der Verwendung gemeinsamer AWS -Dienste, Open -Source -Logik und Erweiterbarkeit, um andere Architekturen, Lösungen und Strategien hinzuzufügen oder sie zu kombinieren.
Anwendungsfälle: Zu den Anwendungsfällen für Proben, die frühe Iterationen von VAMs genutzt haben, gehören:
VAMs integriert sich derzeit in mehrere verschiedene Asset -Zuschauer und unterstützt die folgenden Formate für das Betrachten von 3D -Vermögenswerten interaktiv.
Name | Verlängerung | Typ | Zuschauer | Ausgeschlossene Bibliothek | Notizen |
---|---|---|---|---|---|
Wellenfront | obj | Text | Online -3D -Viewer | ||
3D -Studio | 3DS | binär | Online -3D -Viewer | ||
Stereolithographie | stl | Text | Online -3D -Viewer | ||
Stereolithographie | stl | binär | Online -3D -Viewer | ||
GLTF | GLTF | Text | Online -3D -Viewer | ||
GLTF | GLB | binär | Online -3D -Viewer | ||
Objektdateiformat | aus | Text | Online -3D -Viewer | ||
Objektdateiformat | aus | binär | Online -3D -Viewer | ||
Dotbim | Bim | Text | Online -3D -Viewer | ||
Nashorn 3d | 3DM | binär | Online -3D -Viewer | ||
Filmbox | FBX | Text | Online -3D -Viewer | ||
Filmbox | FBX | binär | Online -3D -Viewer | ||
Collada | Dae | Text | Online -3D -Viewer | ||
Modellierungssprache Virtual Reality | wrl | Text | Online -3D -Viewer | ||
3D -Fertigungsformat | 3mf | Text | Online -3D -Viewer | ||
Additive Fertigung | AMF | Text | Online -3D -Viewer | ||
(Ausgeschlossen*) Dotbim | IFC | Text | Online 3D -Viewer* | Web-IFC | |
(Ausgeschlossen*) Freecad | fcstd | Text | Online 3D -Viewer* | occt-import-js | |
(Ausgeschlossen*) Grenzvertreter | Brep | Text | Online 3D -Viewer* | occt-import-js | |
(Ausgeschlossen*) ISO 10303 CAD | Schritt | Text | Online 3D -Viewer* | occt-import-js | |
(Ausgeschlossen*) Grafikaustausch | IGES | Text | Online 3D -Viewer* | occt-import-js | |
Point Cloud - Lidar -Datenaustausch | Laz | binär | Potenzieller Betrachter | ||
Point Cloud - Lidar -Datenaustausch | Las | binär | Potenzieller Betrachter | ||
Point Cloud - Lidar -Datenaustausch | E57 | binär | Potenzieller Betrachter | ||
Polygon -Dateiformat | sply | binär | Potenzieller Betrachter | Geben Sie Speichergitter und Punktwolken ein - VAMs zeigen derzeit nur Punkt -Cloud -Viewer für PLY an | |
Polygon -Dateiformat | sply | Text | Potenzieller Betrachter |
Zu den verfügbaren Zuschauern gehören:
Bitte beachten Sie:
Ausgrenzung* Anmerkungen:
onlineViewer3DFileFormats
Konstanten hinzu, die Array in ./web/src/common/constants/fileFormats.js
. Fügen Sie dann die aufgelistete ausgeschlossene NPM -Bibliothek im Webordner über yarn add
. Mit dieser Lösung können Sie mit Softwarebibliotheken von Drittanbietern und generativen KI (GAI) von Drittanbietern interagieren. Ihre Verwendung der Software-Bibliotheken und GAI-Modelle von Drittanbietern unterliegt den Begriffen, die Sie von der Software-Bibliothek der Drittanbieter und der GAI-Modellanbieter zur Verfügung gestellt haben, wenn Sie Ihre Lizenz zur Verwendung erhalten haben (z. , Akzeptable Nutzungsrichtlinie und Datenschutzrichtlinie).
Sie sind dafür verantwortlich, dass Ihre Verwendung der Software-Bibliotheken und GAI-Modelle von Drittanbietern den Begriffen, die sie regeln, sowie alle Gesetze, Regeln, Vorschriften, Richtlinien oder Standards, die für Sie gelten, entsprechen.
Sie sind auch dafür verantwortlich, Ihre eigene unabhängige Bewertung der von Ihnen verwendeten Softwarebibliotheken und GAI-Modelle von Drittanbietern zu bewerten, einschließlich der Ausgaben und der Art und Weise, wie Software-Bibliotheken von Drittanbietern GAI-Modellanbieter verwenden Konfiguration. AWS gibt keine Zusicherungen, Garantien oder Garantien in Bezug auf die Software-Bibliotheken und GAI-Modelle von Drittanbietern aus, die im Rahmen Ihrer Vereinbarung mit AWS „Inhalte von Drittanbietern“ sind. Diese Lösung wird Ihnen im Rahmen Ihrer Vereinbarung mit AWS als „AWS -Inhalt“ angeboten.
VAMS Codebase ändert sich häufig und wir empfehlen Ihnen, die stabile Version von GitHub zu überprüfen.
Für Windows Direct -Bereitstellungen können einige Änderungen für die folgenden Anweisungen zur Angabe von Umgebungsvariablen in der Befehlszeile erforderlich sein.
Sie können stabile Veröffentlichungen nach ihrem Tag identifizieren. Fetch die Tags git fetch --all --tags
und dann git checkout tags/TAG
oder git checkout -b TAG tags/TAG
wobei das Tag das tatsächliche gewünschte Tag ist. Eine Liste von Tags wird durch Ausführen git tag --list
oder auf der Seite "Releases" gefunden.
Hinweis: Wenn Sie hinter einem HTTPS -SSL -Proxy laufen, bei dem Netzwerkknoten über ein benutzerdefiniertes SSL -Zertifikat verfügen, besuchen Sie die CDK -SSL -Bereitstellung im Entwicklerhandbuch, um mehr zu erfahren.
cd ./web && nvm use
- Stellen Sie sicher, dass Sie die Knotenversion mit dem Projekt übereinstimmen. Stellen Sie sicher, dass Docker Daemon läuft.
yarn install
- Stellen Sie sicher, dass Sie die von der Web -App erforderlichen Pakete installieren (beachten Sie, dass npm install
nicht zu einem Arbeitsaufbau der Anwendung führt - Bitte verwenden Sie Garn).
npm run build
- Erstellen Sie die Web -App.
cd ../infra && npm install
- installiert Abhängigkeiten in package.json.
Wenn Sie Ihr AWS -Konto noch nicht mit CDK gestützt haben. cdk bootstrap aws://101010101010/us-east-1
-Ersetzen Sie durch Ihr Konto und Ihre Region. Wenn Sie ein GovCloud-Konto boostrappieren, führen Sie export AWS_REGION=[gov-cloud-region]
aus, da der AWS SDK informiert werden muss, um GovCloud-Endpunkte zu verwenden. HINWEIS: Verwenden Sie die AWS-Rolle mit der kleinsten Periode für das Boostrapping, mit dem die benötigten AWS-Komponenten aus CloudFormation für VAMS immer noch die benötigten AWS-Komponenten generieren können.
Ändern Sie die config.json
in /infra/config
um die VAMS -Bereitstellungsparameter und -Funktionen festzulegen, die Sie bereitstellen möchten. Empfohlene Mindestfelder zur Aktualisierung sind region
, adminEmailAddress
und baseStackName
, wenn die Standardvorlage verwendet wird. Weitere Informationen zu den Konfigurationsoptionen finden Sie im Konfigurationshandbuch.
export AWS_REGION=us-east-1 && export STACK_NAME=dev
Optional) Überschreiben Stapel, dass die CDK bereitstellen wird.
(Nur FIPs verwenden) Wenn Sie mit FIPs bereitstellen, aktivieren Sie FIPS -Umgebungsvariablen für AWS CLI export AWS_USE_FIPS_ENDPOINT=true
und aktivieren Sie app.useFips
in der config.json
in /infra/config
(Nur externer VPC importieren) Wenn ein externes VPC mit Subnetzen in der config.json
importiert wird, führen Sie cdk deploy --all --require-approval never --context loadContextIgnoreVPCStacks=true
-VPC -abhängige Stapel zuerst. Wenn Sie dies nicht mit der Kontexteinstellung oder der Konfigurationseinstellung von loadContextIgnoreVPCStacks
ausführen, werden die endgültigen Bereitstellung aller Stapelschritte ausgeführt. Siehe Konfigurationshandbuch für den VPC -Import bei zusätzlicher Fehlerbehebung. HINWEIS: Überprüfen Sie den Abschnitt "Zusätzliche Notizen des Konfigurationshandbuchs" für die Anzahl der benötigten IPs pro Subnetz.
cdk deploy --all --require-approval never
-Ein Konto wird in einem AWS -Cognito -Benutzerpool erstellt, das die in der Infrastrukturkonfigurationsdatei angegebene E -Mail -Adresse angegeben hat. Erwarten Sie eine E-Mail von [email protected] mit einem temporären Passwort.
10a. Stellen Sie sicher, dass Docker vor dem Einsatz als Container ausgeführt wird
1.A (Standard) (CloudFront -Bereitstellung) Navigieren Sie zu URL, die in {stackName].WebAppCloudFrontDistributionDomainName{uuid}
aus cdk deploy
bereitgestellt werden.
1.B (ALB Deployment -Funktion) Navigieren Sie zur URL, die in webDistributionUrl
von cdk deploy
bereitgestellt wird.
Überprüfen Sie die E -Mails auf ein patriges Konto Passwort, um sich mit der von Ihnen angegebenen E -Mail -Adresse anzumelden.
(Optional) Befolgen Sie die neuen VAMS -Benutzer im Berechtigungshandbuch, um zusätzliche Benutzer hinzuzufügen
Sie können die Region ändern und eine neue Instanz von VAMs bereitstellen, indem Sie die ./infra/config/config.json
ändern oder die Umgebungsvariablen auf neue Werte ( export AWS_REGION=us-east-1 && export STACK_NAME=dev
) einstellen und dann laufenden npm run deploy.dev
erneut.
Um CustomZationen oder Updates für VAMS bereitzustellen, können Sie den Stack aktualisieren, indem Sie cdk deploy --all --require-approval never
. Ein Änderungssatz wird erstellt und in Ihrem Stapel bereitgestellt.
Bitte beachten Sie, dass VAMS je nach Änderungen im Flug möglicherweise nicht teilweise oder gar nicht während der Bereitstellung verfügbar ist. Bitte lesen Sie das Änderungsprotokoll sorgfältig durch und testen Sie Änderungen, bevor Sie Ihre Benutzer neuen Versionen aussetzen.
Es wird empfohlen, VAMs zwischen den wichtigsten Versionsänderungen, den wichtigsten Konfiguraiton -Updates (KMS -CMK -Schlüsseländerungen, Cloudfront -> ALB -Switches usw.) oder neuem Stapelvermögen in eine andere Region zu aktualisieren, um eine A/B -Bereitstellung mithilfe der zu verwenden Weg. Beachten Sie, dass bei Verwendung der ALB -Konfigurationsoption eine geänderte A/B -Stack -Bereitstellung benötigt wird.
Beachten Sie, dass dies nicht für VAMS -Versions -Upgrades oder A/B -Bereitstellungen verwendet werden sollte, die den Anweisungen in folgen sollten .
VAMs können mit einem Staging -Bucket -Konfigurationsparameter bereitgestellt werden, um das Kopieren von einem vorhandenen Asset -Bucket zu ermöglichen.
Um mit dem Staging -Bucket bereitzustellen, stellen Sie einfach die app.bucketMigrationStaging.assetBucketName
-Konfigurationsparameter in ./infra/config/config.json
an Ihre CDK -Bereitstellung fest, und VAMs registriert Ihren vorhandenen Bucket als Staging -Eimer.
Sobald die Bereitstellung abgeschlossen ist, können Sie die API /assets/uploadAssetWorkflow
-API aufrufen, um die Vermögenswerte in den VAMS S3 -Eimer zu kopieren und die Vermögenswerte zu registrieren.
In den API -Dokumenten finden Sie im Uploadassetworkflow, um sich über die API -Anfrage zu erfahren.
VAMS Backend ermöglicht eine grundlegende bis erweiterte Konfiguration basierend auf der Umgebung und des Anwendungsfalls.
Anweisungen finden Sie unter Konfigurationshandbuch.
VAMS verwendet ein attributbasiertes/rollenbasiertes Zugriffskontrollsystem (ABAC/RBAC) auf der Authentifizierung, um den feinkörnigen Zugriff auf verschiedene Lösungsfunktionalitäten und Datenelemente zu steuern.
Siehe Berechtigungshandbuch für die Verwendung des VAMS -Berechtigungssystems.
VAMS Backend besteht aus AWS -Lambda -Funktionen, auf die über ein AWS -API -Gateway zugegriffen wird.
Pipelines sind eine Funktion in VAMs, mit der Sie bearbeiten können
VAMS Frontend ist eine einzelne Seite ReactJS -Anwendung. Es kann über Cloudfront oder ALB bereitgestellt werden
VAMS -API und Frontend sind standardmäßig durch AWS Cognito -Benutzerkonten autorisiert.
Die Federated Authentication mit SAML ist mit zusätzlicher Konfiguration verfügbar. Anweisungen finden Sie in der SAML -Authentifizierung im Entwicklerhandbuch.
Komponente | Ordner |
---|---|
Webanwendung | Netz |
CDK -Bereitstellung | Infra |
API und Backend | Backend |
Anwendungsfall-Pipeline-Backend | BackendPipelines |
Checkout the VAMS Workshop für detaillierte Walkthrough
Um mehr darüber zu erfahren, wie VAMS funktioniert, und Anweisungen zum Konfigurieren von Pipeline und zur Konfiguration von Pipeline und Workflow finden Sie im Entwicklerhandbuch Developer Guide.
Beziehen Sie sich auf die .
cdk destroy --all
aus dem Infra -Ordner.Die Kosten dieser Lösung können als feste Speicherkosten und variable Kosten der von Ihnen konfigurierten Pipelines verstanden werden. Die Speicherkosten sind proportional zur Datenmenge, die Sie in VAMS hochladen, einschließlich neuer Daten, die Sie mit VAMS -Pipelines erstellen.
Sie sind für die Kosten der AWS -Dienste verantwortlich, die beim Ausführen dieser Lösung verwendet werden. Stellen Sie sicher, dass Sie in den Einschränkungen Ihres Budgets in Rechnungsalarmen festgelegt sind.
Konfigurationsoptionen:
Eine ungefähre monatliche Kostenaufschlüsselung ist unten (ohne einige kostenlose Einschlüsse):
Service | Menge | Kosten (kommerziell) | Kosten (Govcloud) |
---|---|---|---|
VPC (C-0 + C-1/C-2/C-3/C-5, optional) | 1-11X -Endpunkte pro AZ (bis zu 3 AZ) - basierend auf Konfigurationsoptionen | $ <240,91 | $ <311.13 |
Amazon Cloudfront (C-1, Standard) | Erste 1 TB - in der kostenlosen Stufe enthalten | $ 0,00 | N / A |
Amazon ALB (C-1, optional) | 1 ALB, 1 TB verarbeitet | $ 24.43 | $ 52.56 |
Amazon API Gateway | 150000 Anfragen | $ 0,16 | $ 0,19 |
Amazon DynamoDB | 750000 schreibt, 146250 liest, 0,30 GB Speicherplatz | $ 1,18 | $ 2,36 |
AWS Lambda | 12000 Aufrufe, 2-minütig. Dauer, 256 MB Speicher | $ 6 | $ 6 |
AWS -Schrittfunktionen | 92400 Staatsübergänge | $ 2,21 | $ 2,65 |
Amazon S3 | 10 GB Speicher, 4000 Anfragen, 4000 Anfragen erhalten | $ 0,26 | $ 0,41 |
Amazon Rekognition | 9000 Bildanalyse, 3 benutzerdefinierte Label -Inferenzeinheiten | $ 22,32 | N / A |
Amazon Elastic Container Registry | ECR (in Region) 40 GB | $ 4 | $ 4 |
Amazon Open Search Serverless (C-2, Standard) | 2x Index OCU, 2x -Suche OCU, 100 GB Daten | $ 703.20 | N / A |
Amazon Open Search Provisioned (C-2, optional) | 3x Daten (r6g.large.search), 3x Master (r6g.large.search), 240 GB EBS | $ 743.66 | $ 915.52 |
Amazon Standortdienst (C-4, Standard) | 1000 Kartenfliesen abgerufen | $ 40.00 | N / A |
Im Folgenden finden Sie die zusätzlichen Kosten für die Einbeziehung spezifischer Pipeline-Funktionen in Ihrer Bereitstellung (C-5, optional):
Service | Menge | Kosten (kommerziell) | Kosten (Govcloud) |
---|---|---|---|
Batch Fargate | 10 Stunden Bearbeitung | $ 3,56 | $ 4,88 |
Amazon S3 | 300 GB Speicher, 30 GB Übertragung | $ 9.60 | $ 16,34 |
Amazon CloudWatch | 1 GB Protokolle - VPC FlowLogs/API Gateway/Pipeline | $ 3,28 | $ 4.12 |
Amazonas Grundgestein | 1m Token - Claude -Sonett | $ 18 | $ Na |
Amazon Rekognition | 10K Bildverarbeitung | $ 7,50 | $ 9 |
Wenn Sie Systeme auf der AWS -Infrastruktur erstellen, werden die Sicherheitsverantwortung zwischen Ihnen und AWS geteilt. Dieses Modell für gemeinsame Verantwortung reduziert Ihre Betriebsbelastung, da AWS die Komponenten einschließlich des Host -Betriebssystems, der Virtualisierungsschicht und der physischen Sicherheit der Einrichtungen, in denen die Dienste betrieben werden, betrieben, verwaltet und kontrolliert. Weitere Informationen zur AWS -Sicherheit finden Sie unter AWS Cloud Security.
VAMS wird im Rahmen dieses gemeinsamen Verantwortungsmodells bereitgestellt. Jede Anpassung für die Kundennutzung muss eine AppSec -Überprüfung durchlaufen, um zu bestätigen, dass die Änderungen keine neuen Schwachstellen einführen. Jedes Team -Implementierung übernimmt die Verantwortung, sicherzustellen, dass ihre Umsetzung eine ordnungsgemäße Sicherheitsüberprüfung durchläuft.
yarn audit
im web
aus, um sicherzustellen, dass alle Pakete auf dem neuesten Stand sind. Führen Sie yarn audit fix
aus, um kritische Sicherheitslücken zu verringern.Bitte überprüfen Sie alle Überlegungen mit den Sicherheitsteams Ihrer Organisationen, um festzustellen, ob Minderungen erforderlich sind.
Der Beispielcode; Software -Bibliotheken; Befehlszeilenwerkzeuge; Beweise des Konzepts; Vorlagen; oder andere verwandte Technologien (einschließlich des Vorstehenden, die von unserem Personal bereitgestellt werden) wird Ihnen als AWS -Inhalt im Rahmen der AWS -Kundenvereinbarung oder als die entsprechende schriftliche Vereinbarung zwischen Ihnen und AWS (je nachdem, welcher Wert) zur Verfügung gestellt wird. Sie sollten diesen AWS -Inhalt nicht in Ihren Produktionskonten oder in der Produktion oder anderen kritischen Daten verwenden. Sie sind verantwortlich für das Testen, Sicherungs- und Optimieren des AWS -Inhalts, wie z. B. Beispielcode, je nachdem, was für die Verwendung von Produktionsnote basierend auf Ihren spezifischen Qualitätskontrollpraktiken und -standards geeignet ist. Das Bereitstellen von AWS -Inhalten kann AWS -Gebühren für die Erstellung oder Verwendung von AWS -Ressourcen ergeben, z. B. Amazon EC2 -Instanzen oder die Verwendung von Amazon S3 -Speicher.
Sehen Sie sich die beitragende Datei an, um zu beitragen.
Die Lizenzdatei für die Lizenzierung unseres Projekts finden Sie in der Lizenz.
Copyright Amazon.com, Inc. oder seine verbundenen Unternehmen. Alle Rechte vorbehalten.
Sofern nicht nach geltendem Recht oder schriftlich zu vereinbart wird, wird die im Rahmen der Lizenz verteilte Software auf "As is" -Basis ohne Gewährleistung oder Bedingungen jeglicher Art ausdrücklich oder impliziert verteilt.