AWS er lidt mere avanceret i, hvad du kan gøre med at konfigurere dine servere og applikationer, så det er ikke underligt, at det kan være forvirrende. Det meste af tiden gør lægerne heller ikke meget for at hjælpe. Amazon styrer dig til at bruge deres RDS / nosql (DynamoDB). Du kan tilføje mange forskellige typer databaser på AMI-markedet, men jeg synes, at disse er alt for dyre og unødvendige.
For det følgende, ssh
into your EC2 instance ssh -i <your .pem key> [email protected]
(skal ligne det)
For MongoDB på AWS:
echo "[MongoDB]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0
enabled=1" | sudo tee -a /etc/yum.repos.d/mongodb.repo
sudo yum install -y mongodb-org-server mongodb-org-shell mongodb-org-tools
sudo mkdir /data /log /journal
//Mount partitions -- Find available ones for /data /log /journal
sudo mkfs.ext4 /dev/xvdf
sudo mkfs.ext4 /dev/xvdg
sudo mkfs.ext4 /dev/xvdh
echo '/dev/xvdf /data ext4 defaults,auto,noatime,noexec 0 0
/dev/xvdg /journal ext4 defaults,auto,noatime,noexec 0 0
/dev/xvdh /log ext4 defaults,auto,noatime,noexec 0 0' | sudo tee -a /etc/fstab
sudo mount /data
sudo mount /journal
sudo mount /log
sudo chown mongod:mongod /data /journal /log
sudo ln -s /journal /data/journal
nano /etc/mongod.conf
//Change to
dbpath = /data
logpath = /log/mongod.log
sudo nano /etc/security/limits.conf
* soft nofile 64000
* hard nofile 64000
* soft nproc 32000
* hard nproc 32000
sudo nano /etc/security/limits.d/90-nproc.conf
* soft nproc 32000
* hard nproc 32000
sudo blockdev --setra 32 /dev/xvdf
echo 'ACTION=="add", KERNEL=="xvdf", ATTR{bdi/read_ahead_kb}="16"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
//Run persistent
mongod --fork --logpath /var/log/mongodb/mongod.log
Reference:gist
Du kan køre mongo
i din nuværende ssh-session for at sikre, at den kører korrekt.