sql >> Database teknologi >  >> NoSQL >> MongoDB

anbefalet måde at installere mongodb på elastisk bønnestængel

Hvis nogen leder efter et svar, her er de råd, jeg modtog fra aws business support.

Al kode implementeret til Elastic Beanstalk skal være "statsløs", dvs. Foretag aldrig ændringer direkte til en kørende beanstalk-instans ved hjælp af SSH eller FTP.... Da dette vil forårsage uoverensstemmelser og/eller datatab!- Elastic Beanstalk er ikke designet til applikationer, der ikke er statsløse. Miljøet er designet til at skalere op og ned i afventende på din netværks-/CPU-belastning og byg nye instanser fra en basis-AMI. Hvis en instans har problemer eller den underliggende hardware, vil Elastic Beanstalk afslutte disse kørende instanser og erstatte dem med nye instanser. Derfor, hvorfor ingen kodeændring skal anvendes eller udføres "direkte" på en eksisterende instans, da nye instanser ikke vil være opmærksomme på disse direkte ændringer. ALLE ændringer/kode skal enten uploades til Elastic Beanstalk-konsollen eller CLI-værktøjerne og skubbes til alle de kørende forekomster.Mere information om Elastic Beanstalk-designkoncepter kan læses på følgende linkhttp://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.concepts .design.html

Foreslået løsning:Med ovenstående i tankerne, hvis du bruger MongoDB til at gemme applikationsdata, vil vores anbefaling være at DE-koble MongoDB-miljøet fra din Node.js-applikation.I.E Opret en MongoDB-server uden for Elastic Beanstalk, f.eks. lancering af MongoDB direkte på en EC2-instans og få din Elastic Beanstalk Node.js-applikation til at oprette forbindelse til MongoDB Server ved hjælp af forbindelsesindstillinger i din app.

-Oprettelse af MongoDBBelow er nogle eksempler på links, der kan være nyttige i dit scenarie til at oprette en MongoDB Server. Implementer MongoDB på EC2,https://docs.mongodb.org/ecosystem/platforms/amazon-ec2/ MongoDB-nodeklienthttps://docs.mongodb.org/getting-started/node /klient/ MongoDB på AWS Cloud lynstartguidehttp://docs.aws .amazon.com/quickstart/latest/mongodb/architecture.html

-Tilføjelse af miljøvariabler til Elastic Beanstalk for at referere til din MongoDB-server Når du har oprettet din MongoDB-server, kan du videregive de nødvendige forbindelsesindstillinger til dit Elastic Beanstalk-miljø ved hjælp af miljøvariabler. Eksempel ved at bruge .ebextensions .config, som du kan tilføje Mongo URL/porte/brugere osv..

option_settings:- option_name:MONGO_DB_URLvalue:"Din MongoDB EC2 interne IP-adresse"

Oplysninger om, hvordan du bruger miljøegenskaber og læser dem inde fra din applikation, kan ses nedenfor.http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs.container.html#create_deploy_nodejs_custom_container-envprop Og oplysninger, der bruger .ebextensions .config, kan findes på følgende linkhttp ://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html

Alternativt kan du også indstille miljøvariablen ved hjælp af cli eller via AWS Consoleeb cli sæt miljøvariabler kan læses via nedenstående link.http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-setenv.html Brug af AWS ConsoleFor at indstille systemegenskaber (AWS Management Console)Åbn Elastic Beanstalk-konsollen.Naviger til administrationskonsollen for dit miljø.Vælg Konfiguration.Vælg Rediger i afsnittet Softwarekonfiguration.Opret dit navn/værdier under Miljøegenskaber...

Adgang til miljøkonfigurationsindstillinger Inde i Node.js-miljøet, der kører i AWS Elastic Beanstalk, kan du få adgang til miljøvariablerne ved hjælp af process.env.ENV_VARIABLE svarende til følgende eksempel.process.env.MONGO_DB_URLprocess.env.PARAM2

http://docs.aws.amazon .com/elasticbeanstalk/latest/dg/create_deploy_nodejs.container.html#create_deploy_nodejs_custom_container-envprop

Resumé:Sammenfattende vil jeg anbefale følgende trin til at integrere MongoDB med Elastic Beanstalk-miljøer.Trin 1) Opret en MongoDB-server uden for Elastic BeanstalkTrin 2) Opret din Node.js-applikation i Elastic Beanstalk, der forbinder til din MongoDB-server



  1. Rails Redis indstilling af maxmemory og maxmemory-policy

  2. MongoDB GridFS - Er det filnavn eller filnavn

  3. Hvordan viser man uploadede billeder til serversiden igen i browseren ved hjælp af MEAN stack?

  4. Kan ikke finde mongoDB-modulet ved implementering til Heroku