{"slug":"server-management","title":"server-management","summary":"Server management principles and decision-making. Process management, monitoring strategy, and scaling decisions. Teaches thinking, not commands.","platform":"ChatGPT","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-08-16T13:38:56.058364Z","repo":{"url":"https://github.com/sickn33/agentic-awesome-skills","stars":46883,"forks":6831,"license":"MIT","updatedAt":"2026-09-25T05:43:16Z"},"bodyHtml":"<hr>\n<h2>name: server-management\ndescription: \"Server management principles and decision-making. Process management, monitoring strategy, and scaling decisions. Teaches thinking, not commands.\"\nrisk: safe\nsource: community\ndate_added: \"2026-02-27\"</h2>\n<h1>Server Management</h1>\n<blockquote>\n<p>Server management principles for production operations.\n<strong>Learn to THINK, not memorize commands.</strong></p>\n</blockquote>\n<hr>\n<h2>1. Process Management Principles</h2>\n<h3>Tool Selection</h3>\n<table>\n<thead>\n<tr>\n<th>Scenario</th>\n<th>Tool</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Node.js app</strong></td>\n<td>PM2 (clustering, reload)</td>\n</tr>\n<tr>\n<td><strong>Any app</strong></td>\n<td>systemd (Linux native)</td>\n</tr>\n<tr>\n<td><strong>Containers</strong></td>\n<td>Docker/Podman</td>\n</tr>\n<tr>\n<td><strong>Orchestration</strong></td>\n<td>Kubernetes, Docker Swarm</td>\n</tr>\n</tbody>\n</table>\n<h3>Process Management Goals</h3>\n<table>\n<thead>\n<tr>\n<th>Goal</th>\n<th>What It Means</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Restart on crash</strong></td>\n<td>Auto-recovery</td>\n</tr>\n<tr>\n<td><strong>Zero-downtime reload</strong></td>\n<td>No service interruption</td>\n</tr>\n<tr>\n<td><strong>Clustering</strong></td>\n<td>Use all CPU cores</td>\n</tr>\n<tr>\n<td><strong>Persistence</strong></td>\n<td>Survive server reboot</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>2. Monitoring Principles</h2>\n<h3>What to Monitor</h3>\n<table>\n<thead>\n<tr>\n<th>Category</th>\n<th>Key Metrics</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Availability</strong></td>\n<td>Uptime, health checks</td>\n</tr>\n<tr>\n<td><strong>Performance</strong></td>\n<td>Response time, throughput</td>\n</tr>\n<tr>\n<td><strong>Errors</strong></td>\n<td>Error rate, types</td>\n</tr>\n<tr>\n<td><strong>Resources</strong></td>\n<td>CPU, memory, disk</td>\n</tr>\n</tbody>\n</table>\n<h3>Alert Severity Strategy</h3>\n<table>\n<thead>\n<tr>\n<th>Level</th>\n<th>Response</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Critical</strong></td>\n<td>Immediate action</td>\n</tr>\n<tr>\n<td><strong>Warning</strong></td>\n<td>Investigate soon</td>\n</tr>\n<tr>\n<td><strong>Info</strong></td>\n<td>Review daily</td>\n</tr>\n</tbody>\n</table>\n<h3>Monitoring Tool Selection</h3>\n<table>\n<thead>\n<tr>\n<th>Need</th>\n<th>Options</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Simple/Free</td>\n<td>PM2 metrics, htop</td>\n</tr>\n<tr>\n<td>Full observability</td>\n<td>Grafana, Datadog</td>\n</tr>\n<tr>\n<td>Error tracking</td>\n<td>Sentry</td>\n</tr>\n<tr>\n<td>Uptime</td>\n<td>UptimeRobot, Pingdom</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>3. Log Management Principles</h2>\n<h3>Log Strategy</h3>\n<table>\n<thead>\n<tr>\n<th>Log Type</th>\n<th>Purpose</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Application logs</strong></td>\n<td>Debug, audit</td>\n</tr>\n<tr>\n<td><strong>Access logs</strong></td>\n<td>Traffic analysis</td>\n</tr>\n<tr>\n<td><strong>Error logs</strong></td>\n<td>Issue detection</td>\n</tr>\n</tbody>\n</table>\n<h3>Log Principles</h3>\n<ol>\n<li><strong>Rotate logs</strong> to prevent disk fill</li>\n<li><strong>Structured logging</strong> (JSON) for parsing</li>\n<li><strong>Appropriate levels</strong> (error/warn/info/debug)</li>\n<li><strong>No sensitive data</strong> in logs</li>\n</ol>\n<hr>\n<h2>4. Scaling Decisions</h2>\n<h3>When to Scale</h3>\n<table>\n<thead>\n<tr>\n<th>Symptom</th>\n<th>Solution</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>High CPU</td>\n<td>Add instances (horizontal)</td>\n</tr>\n<tr>\n<td>High memory</td>\n<td>Increase RAM or fix leak</td>\n</tr>\n<tr>\n<td>Slow response</td>\n<td>Profile first, then scale</td>\n</tr>\n<tr>\n<td>Traffic spikes</td>\n<td>Auto-scaling</td>\n</tr>\n</tbody>\n</table>\n<h3>Scaling Strategy</h3>\n<table>\n<thead>\n<tr>\n<th>Type</th>\n<th>When to Use</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Vertical</strong></td>\n<td>Quick fix, single instance</td>\n</tr>\n<tr>\n<td><strong>Horizontal</strong></td>\n<td>Sustainable, distributed</td>\n</tr>\n<tr>\n<td><strong>Auto</strong></td>\n<td>Variable traffic</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>5. Health Check Principles</h2>\n<h3>What Constitutes Healthy</h3>\n<table>\n<thead>\n<tr>\n<th>Check</th>\n<th>Meaning</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>HTTP 200</strong></td>\n<td>Service responding</td>\n</tr>\n<tr>\n<td><strong>Database connected</strong></td>\n<td>Data accessible</td>\n</tr>\n<tr>\n<td><strong>Dependencies OK</strong></td>\n<td>External services reachable</td>\n</tr>\n<tr>\n<td><strong>Resources OK</strong></td>\n<td>CPU/memory not exhausted</td>\n</tr>\n</tbody>\n</table>\n<h3>Health Check Implementation</h3>\n<ul>\n<li>Simple: Just return 200</li>\n<li>Deep: Check all dependencies</li>\n<li>Choose based on load balancer needs</li>\n</ul>\n<hr>\n<h2>6. Security Principles</h2>\n<table>\n<thead>\n<tr>\n<th>Area</th>\n<th>Principle</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Access</strong></td>\n<td>SSH keys only, no passwords</td>\n</tr>\n<tr>\n<td><strong>Firewall</strong></td>\n<td>Only needed ports open</td>\n</tr>\n<tr>\n<td><strong>Updates</strong></td>\n<td>Regular security patches</td>\n</tr>\n<tr>\n<td><strong>Secrets</strong></td>\n<td>Environment vars, not files</td>\n</tr>\n<tr>\n<td><strong>Audit</strong></td>\n<td>Log access and changes</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>7. Troubleshooting Priority</h2>\n<p>When something's wrong:</p>\n<ol>\n<li><strong>Check if running</strong> (process status)</li>\n<li><strong>Check logs</strong> (error messages)</li>\n<li><strong>Check resources</strong> (disk, memory, CPU)</li>\n<li><strong>Check network</strong> (ports, DNS)</li>\n<li><strong>Check dependencies</strong> (database, APIs)</li>\n</ol>\n<hr>\n<h2>8. Anti-Patterns</h2>\n<table>\n<thead>\n<tr>\n<th>❌ Don't</th>\n<th>✅ Do</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Run as root</td>\n<td>Use non-root user</td>\n</tr>\n<tr>\n<td>Ignore logs</td>\n<td>Set up log rotation</td>\n</tr>\n<tr>\n<td>Skip monitoring</td>\n<td>Monitor from day one</td>\n</tr>\n<tr>\n<td>Manual restarts</td>\n<td>Auto-restart config</td>\n</tr>\n<tr>\n<td>No backups</td>\n<td>Regular backup schedule</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<blockquote>\n<p><strong>Remember:</strong> A well-managed server is boring. That's the goal.</p>\n</blockquote>\n<h2>When to Use</h2>\n<p>This skill is applicable to execute the workflow or actions described in the overview.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Use this skill only when the task clearly matches the scope described above.</li>\n<li>Do not treat the output as a substitute for environment-specific validation, testing, or expert review.</li>\n<li>Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.</li>\n</ul>\n","files":[{"path":"SKILL.md","sizeBytes":4161,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-08-16T13:45:46.615709Z","sha256":"82C07B81C97A73DB0CBDD5AF92E4EDD7835D3F6F2573186485F89DC5C01338AF","sizeBytes":2070},"review":null,"source":{"repositoryUrl":"https://github.com/sickn33/agentic-awesome-skills","path":"skills/server-management","license":"MIT","commit":"f2bba339de74414b0771234cbe4f6a15258e32a3","subtreeSha":"3D4A1E27B783AF15F21E07D6045CDC32E2664AAFDC06CB9DC8D4E89DD877681C","lastSyncedAt":"2026-09-25T06:48:39.853703Z"},"reviewedAt":"2026-08-16T13:56:58.484021Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/server-management"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install sickn33-agentic-awesome-skills@llmmart"},{"target":"git","command":"git clone https://github.com/sickn33/agentic-awesome-skills.git"}]}