48 lines
1.5 KiB
Markdown
48 lines
1.5 KiB
Markdown
# Infrastructure & Host Baseline Setup Guide
|
|
|
|
## 1. Cloud Hardware Baseline
|
|
* **Provider**: Oracle Cloud Infrastructure (OCI)
|
|
* **Architecture**: Ampere A1 Flex (`aarch64` / ARM64)
|
|
* **Resources**: 4 OCPUs (Neoverse N1), 24 GB System RAM
|
|
* **Memory Strategy**:
|
|
* Container JVM Heap (`-Xmx12G -Xms12G`): Allocated per instance manifest
|
|
* Host OS & Page Cache: Minimum 12 GB reserved for kernel, filesystem page cache, and Docker daemon overhead
|
|
|
|
---
|
|
|
|
## 2. Host OS & Network Optimization
|
|
|
|
### Firewall Configuration (UFW)
|
|
Allocate port ranges to support primary and secondary instances:
|
|
```bash
|
|
# Primary Instance Ports (Java + Simple Voice Chat)
|
|
sudo ufw allow 25565/tcp comment 'MC Java Port - Primary Instance'
|
|
sudo ufw allow 24454/udp comment 'Voice Chat Port - Primary Instance'
|
|
|
|
# Secondary Instance Ports
|
|
sudo ufw allow 25566/tcp comment 'MC Java Port - Secondary Instance'
|
|
sudo ufw allow 24455/udp comment 'Voice Chat Port - Secondary Instance'
|
|
|
|
sudo ufw enable
|
|
```
|
|
|
|
### Linux Kernel TCP Optimization (BBR + FQ)
|
|
Enable Bottleneck Bandwidth and RTT (BBR) congestion control to minimize network latency:
|
|
```bash
|
|
sudo modprobe tcp_bbr
|
|
sudo bash -c 'cat <<EOF > /etc/sysctl.d/99-minecraft.conf
|
|
net.core.default_qdisc=fq
|
|
net.ipv4.tcp_congestion_control=bbr
|
|
EOF'
|
|
sudo sysctl --system
|
|
```
|
|
|
|
---
|
|
|
|
## 3. Host Ownership Safeguard
|
|
|
|
Ensure host user retains ownership of container data to prevent `PermissionError (EACCES)`:
|
|
```bash
|
|
sudo chown -R $USER:$USER ./data
|
|
chmod -R u+rwX ./data
|
|
```
|