Ricerca…


Distribuzione di un'applicazione con database separato (MONGO_URL)

Dovrai separare il livello dell'applicazione dal livello del database e ciò significa specificare MONGO_URL. Il che significa eseguire l'app tramite il comando bundle, decomprimerla, impostare le variabili di ambiente e quindi avviare il progetto come app nodo. Ecco come...

#make sure you're running the node v0.10.21 or later
npm cache clean -f
npm install -g n
sudo n 0.10.21

# bundle the app
mkdir myapp
cd myapp 
git clone http://github.com/myaccount/myapp
meteor bundle --directory ../deployPath
cd ../deployPath

# make sure fibers is installed, as per the README
export MONGO_URL='mongodb://127.0.0.1:27017/mydatabase'
export PORT='3000'
export ROOT_URL='http://myapp.com'

# run the site
node main.js

Replica Set Configuration

Quindi vai nella shell di mongo e avvia il set di repliche, in questo modo:

mongo

> rs.initiate()
PRIMARY> rs.add("mongo-a")
PRIMARY> rs.add("mongo-b")
PRIMARY> rs.add("mongo-c")
PRIMARY> rs.setReadPref('secondaryPreferred')

Configurazione di un set di repliche per l'utilizzo di Oplogging

Il set di repliche avrà bisogno di un utente oplog per accedere al database.

mongo

PRIMARY> use admin
PRIMARY> db.addUser({user:"oplogger",pwd:"YOUR_PASSWORD",roles:[],otherDBRoles:{local:["read"]}});
PRIMARY> show users

Script Upstart di Oplog

Lo script di upstart dovrà essere modificato per utilizzare più indirizzi IP del set di repliche.

start on started mountall
stop on shutdown

respawn
respawn limit 99 5

script
    # our example assumes you're using a replica set and/or oplog integreation
    export MONGO_URL='mongodb://mongo-a:27017,mongo-b:27017,mongo-c:27017/meteor'

    # here we configure our OPLOG URL
    export MONGO_OPLOG_URL='mongodb://oplogger:YOUR_PASSWORD@mongo-a:27017,mongo-b:27017,mongo-c:27017/local?authSource=admin'

    # root_url and port are the other two important environment variables to set
    export ROOT_URL='http://myapp.mydomain.com'
    export PORT='80'

    exec /usr/local/bin/node /var/www/production/main.js >> /var/log/node.log 2>&1
end script

sharding

Oplog Tailing su Sharded Mongo



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow