我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理。awesome-sysadmin 就是 kahun 发起维护的 系统管理员 资源列表,内容包括:备份/克隆软件、云计算/云存储、协作软件、配置管理、日志管理、监控、项目管理
Awesome 系列虽然挺全,但基本只对收录的资源做了极为简要的介绍,如果有更详细的中文介绍,对相应开发者的帮助会更大。这也是我们发起这个开源项目的初衷。
- 基于 awesome-sysadmin 资源列表,我们将对各个资源项进行编译整理。
- 整理后的内容,将收录在伯乐在线资源频道。可参考已整理的内容:
从下面的目录来看,本项目的工作量小不了,所以非常期待能有更多程序员一起来参与。
不过加入前,有几个小要求:
- 英文还不错,能读懂英文并用自己的话复述;
- 有 系统管理员/运维 相关实践经验;
如有兴趣,请加 QQ:50872495。加 Q 时请注明「系统管理员大全」
-
维护者:tangyouhua
-
贡献者:cucr、You
注:名单不分排名,不定期补充更新
虽然奖励可能并不是你加入的主要原因,但还是有必要提一下:
- 整理超过 20 个资源后,可在伯乐在线上开通打赏;
- 每整理 20 个资源,有机会获得技术书籍或各种有意思的创意、极客产品;
- 奖励详情
备份软件
- Amanda -客户端-服务器模型备份工具
- Bacula - 另一个客户端-服务器模型备份工具
- Backupninja -轻量级,可扩展的元数据备份系统
- Backuppc -客户端-服务器模型备份工具和文件共享方案。
- Burp -网络备份和还原程序
- Duplicity -使用rsync算法加密的带宽-效率备份
- Lsyncd -监控一个本地目录树的变化,然后产生一个进程去同步变化。默认使用rsync。
- Rsnapshot -文件系统快照工具
- SafeKeep -使用rdiff-backup,集中的,基于pull的备份
- TarSnap - 具有一个开源客户端的安全备份服务
- UrBackup -另一个客户端-服务器备份系统
- DREBS - AWS EBS支持策略的备份脚本
克隆软件
- Clonezilla -分区和磁盘镜像/克隆程序
- Fog - 另一个计算机克隆解决方案
- Redo Backup -简单的备份,恢复和还原
- AppScale - 兼容Google App引擎的开源云计算软件.
- Archipel -使用Libvirt管理和监视虚拟机
- CloudStack -创建,管理和部署基础云服务的云计算软件
- Cobbler -Cobbler是一个Linux安装服务器,允许快速地构建网络安装环境
- Eucalyptus -兼容AWS的开源私有云软件
- Mesos -开发和运行能效高的分布式系统。
- OpenNebula -一个用于系统管理员和研发运维的用户驱动的云管理平台
- OpenStack -构建私有和开放云的开源软件
- The Foreman -Foreman是一个用于物理和虚拟服务器的全生命周期管理工具.FOSS.
- BOSH -IaaS业务流程平台,最初用于部署和管理云计算平台PaaS,但也用于通用的分布式系统。
- Cloudify -使用Python和YAML编写的开源TOSCA-based云业务流程软件平台。
- Juju -云业务流程工具用于管理服务,比如charms,YAML配置和部署脚本集
- MCollective -来自Puppet实验室的管理服务器业务流程和开发的Ruby框架
- Overcast -在不同的云提供商上部署VMs,并在任何或所有(VM)上通过SSH并行运行命令行和脚本
- Rundeck - 简单的业务流程工具
- Salt -Python编写
- git-annex assistant -在你的每一个OSX和Linux电脑,Android设备,可移动驱动,NAS电器和云服务上一个同步文件夹
- ownCloud -提供你的文件的统一访问,通过web,你的电脑和你的移动设备
- Seafile -另一个开源的云存储解决方案
- SparkleShare -提供云存储和文件同步服务。它默认使用Git作为存储后端
- Swift -一个高可用,分布式,最终一致的对象/大数据存储
- Syncthing -一个用于私有,加密和身份认证数据的开源系统
基于Web的协作式代码审查系统
- Gerrit -基于Git版本控制,它促进软件开发人员审查源代码修改和批准或拒绝这些变更。
- Review Board - 基于MIT License的可用自由软件
协作软件和群件套件
- Citadel/UX -协同套件(消息和群件)继承于Citadel家族程序
- EGroupware -PHP编写的群件软件
- Horde Groupware -基于PHP的协作软件套件,包括邮件,日历,wiki,时间跟踪和文件管理
- Kolab - 另一个群件套件
- SOGo - 协作软件服务器,专注简单性和可伸缩性
- Zimbra -协作软件套件,包括邮件服务和web客户端
配置管理数据库(CMDB)软件
- i-doit - 开源的IT文档管理和CMDB
- iTop -一个完全开源的,ITIL,基于web的服务管理工具
- Ralph -用于大型数据中心或较小本地网络的资产管理,DICM和CMDB系统
- Clusto -帮助跟踪你的库存,在哪,如何连接,同时提供一个和基础架构元素交互的抽象接口
配置管理工具
- Ansible -Python编写的,通过SSH管理节点
- CFEngine -轻量级代理系统。通过申明语言配置状态。
- Chef -Rbuy和Erlang编写,使用纯RubyDSL
- Fabric - Python库和cli工具,为应用程序部署或系统管理任务简化使用SSH。
- Pallet -通过Clojure DSL进行架构定义,配置和管理
- Puppet - Ruby编写,使用Puppet声明语言或Rbuy DSL
- Salt - Python编写
- Slaughter - Perl编写
持续集成/部署软件
- Buildbot - 基于Python的持续集成工具
- Drone - 构建在Docker,使用YAML文件配置的的持续集成服务器
- GitLab CI -基于rbuy。他们也提供GitLab用于管理git存储库
- Go - 开源的持续交付服务器
- Jenkins - 一个可扩展的开源持续集成服务器
- Vlad the Deployer -自动化部署
网络分布式文件系统
-
Ceph -分布式对象存储和文件系统
-
DRBD -分布式块设备复制
-
LeoFS -非结构化对象/数据存储和高可用性,分布,最终一致的存储系统。
-
GlusterFS - 可扩展,网络附加存储文件系统。
-
HDFS - Java编写的,用于Hadoop框架的分布式、可伸缩、可移植文件系统
-
Lustre -一种并行分布式文件系统,一般用于大规模集群计算。
-
MooseFS - 容错、网络分布式文件系统。
-
MogileFS -应用程序级别、网络分布式文件系统。
-
OpenAFS -只读副本和多操作系统支持的分布式网络文件系统
-
TahoeLAFS -安全、分散、容错、点对点分布式数据存储和分布式文件系统。
-
XtreemFS -XtreemFS是一个用于存储需求的容错式分布式文件系统。
DNS服务器
- Bind -最广泛使用的域名服务软件
- djbdns -DNS应用集合,包括tinydns
- Designate - DNS REST API,支持多种DNS服务器的后端
- dnsmasq -为小规模网络提供DNS,DHCP和TFTP服务的轻量级服务
- Knot - 高性能,权威的DNS服务器
- NSD - 权威的、高性能的、简单的域名服务器。
- PowerDNS -具有各种数据存储后端和负载平衡功能的DNS服务器。
- Unbound - 验证、递归和缓存DNS解析器。
- Yadifa - 具有DNSSEC兼容的轻量级的权威域名服务器,支持.eu的顶级域名。
Web主机控制面板
- Ajenti -Linux和BSD控制面板
- Feathur - VPS供应和管理软件
- ISPConfig -Linux主机控制面板
- VestaCP -用于Linux和Nginx的主机面板
- Virtualmin -基于webmin的Linux控制面板
- ZPanel -Linux BSD和Windows控制面板
IMAP/POP3邮件服务器
- Courier IMAP/POP3 -快速,可伸缩,企业级IMAP和POP3服务器
- Cyrus IMAP/POP3 -运行在密封服务器上,普通用户不允许登录。
- Dovecot -主要考虑安全而编写的IMAP和POP3服务器
- Qpopper - 一个古老且流行的POP3服务器实现
IT资产管理软件
- GLPI -带有额外管理接口的信息资源管理器
- OCS Inventory NG -允许用户清算IT资产
- RackTables -数据中心和服务器房间资产,比如将硬件资产,网络地址,在货架空间,网络配置文档化。
- Ralph - 针对大型数据中心系统以及小型局域网网络的资产管理、DCIM和CMDB。
- Snipe IT -资产和许可证管理软件
LDAP服务器
- 389 Directory Server - 通过Red Hat部署
- Apache Directory Server -用Java编写的Apache软件基金会项目
- Fusion Directory -基于OpenLDAP改善服务和公司目录的管理
- OpenDJ - OpenDS分支
- OpenDS -另一个用Java编写的目录服务器
- OpenLDAP -由OpenLDAP项目开发
日志管理工具:收集,解析,可视化
- Elasticsearch - 一个基于Lucene的文档存储,主要用于日志索引、存储和分析。
- Fluentd - 日志收集和发出
- Flume -分布式日志收集和聚合系统
- Graylog2 -具有报警选项的可插入日志和事件分析服务器
- Heka -流处理系统,可用于日志聚合
- Kibana - 可视化日志和时间戳数据
- Logstash -管理事件和日志的工具
- Octopussy -日志管理解决方案(可视化/报警/报告) log
监控软件
- Cacti -基于Web的网络监控和图形工具
- Cabot - 监控和报警,类似PagerDuty
- check_mk -Nagios的扩展集合
- Dash -一个用于GNU/Linux机器的低开销web仪表板监控。
- Icinga - Nagios分支
- LibreNMS - Observium分支
- Monit - 管理和监控Unix系统的小型开源工具
- Munin -网络资源监控工具
- Naemon -基于Nagios4内核的网络监控工具,具有性能加强和新功能
- Nagios -计算机系统,网络和基础架构监控软件
- Observium -服务器和网络设备的SNMP监控,运行在linux
- OMD -开放的监控分布
- Opsview -基于Nagios4,Opsview核心,用于小型IT和测试环境
- Riemann -灵活和快速的事件处理器,允许负责时间和度量分析
- Sensu -开源的监控框架
- Sentry - 应用监控,事件记录和聚合
- Shinken - 另一个监控框架
- Thruk - 多后台监控的web接口,支持Naemon,Nagios,Icinga和Shinken
- Xymon -灵感来自Big Brother的网络监控
- Zabbix - Enterprise-class software for monitoring of networks and applications.
- Zabbix - 监控网络和应用的企业级软件
- Zenoss -基于Zope的应用,服务器和网络管理平台
度量收集和显示软件
- Collectd -系统统计收集守护进程
- Collectl -高精度系统性能指标收集工具。
- Dashing -Ruby gem,允许快速统计仪表板的开发。基于HTML5,允许在数据中心或会议室进行大屏幕显示。
- Diamond -基于Python的统计收集守护进程
- Ganglia - 基于RRD用于网格和/或集群的服务器的高性能、可伸缩监控设备。兼容Graphite,使用一个单一的收集进程。
- Grafana -一个Graphite或InfluxDB仪表盘和图形编辑器
- 开源的可伸缩绘图服务器
- InfluxDB -开源的分布式时间序列数据库,没有外部依赖。
- KairosDB -快速分布式可扩展的时间序列数据库,OpenTSDB 1. x的分支。
- OpenTSDB -存储和服务大量的时间序列数据,不丢失粒度。
- RRDtool - 开源企业标准,用于时间序列数据的高性能数据记录和绘图系统
- Statsd -应用统计监听
网络配置管理工具
时事通讯软件
NOSQL数据库
- 列族
- Apache HBase - Hadoop数据库,一个分布式的大数据存储
- Cassandra -分布式数据库管理系统,设计用于处理大量数据跨多个服务器。
- Hypertable -基于c++的bigtable DBMS,节省通信,可独立或在Hadoop类似的分布式FS上运行。
- 文档存储
- CouchDB -易于使用,多主机复制的面向文档的数据库系统。
- ElasticSearch - 基于Java的数据库,受欢迎的日志聚合,和电子邮件归档项目。
- MongoDB - 另一个面向文档的数据库系统
- RavenDB - 具有ACID/事物功能的基于文档的数据库
- RethinkDB -开源分布式文档存储数据库,关注JSON
- 图
- 键值
NoSQL服务器比较: http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
- fpm - 万能的多格式包创建器
- omnibus-ruby - 全栈,跨发行版的包管理软件(Ruby)
- packman -全栈,跨发行版的包管理软件(Python)
- tito - 为git项目构建RPM
- BeanstalkD - A simple, fast work queue.
- BeanstalkD - 一个简单快速的工作队列
- Gearman -快速的多语言队列或任务处理平台
- NSQ - 实时分发的消息平台
- RabbitMQ -健壮的,全功能,跨发行版的队列系统
- ZeroMQ -轻量级队列系统
关系数据库管理系统
- Firebird - 真正的全球开源数据库
- Galera -Galera MySQL集群是一个易于使用的高可用性解决方案,具有很高的系统正常运行时间,没有数据丢失,为未来的增长提供可伸缩性。
- MariaDB -MySQL的社区开发分支
- MySQL - 非常流行的RDBMS服务器
- Percona Server -增强的,可替换MySQL
- PostgreSQL - 对象关系数据库管理系统(ORDBMS)
- PostgreSQL-XL - 基于PostgreSQL的可伸缩开源数据库集群
- SQLite -自包容,弱服务器,零配置,支持事务的SQL DBS实现库
安全工具
- Denyhosts -阻止SSH字典攻击和暴力攻击
- Fail2Ban - 扫描日志文件,并对具有恶意行为显示的IP采取措施
- SpamAssassin -一个强大的和受欢迎的垃圾邮件过滤器,它采用多种检测技术。
- Consul - Consule是伊戈尔服务发现,监控和配置的工具
- Doozerd - Doozer是一个高可用,完全一致的存储,用于少量非常重要的数据
- ZooKeeper - ZooKeeper是一个集中的服务,用于维护配置信息,命名,提供分布式同步和组服务
SMTP服务器
- Exim -由剑桥大学开发的消息传输代理(MTA)
- Haraka - 用JavaScirpt编写的高性能,可插入的SMTP服务器
- MailCatcher -Ruby gem部署一个简单的SMTP MTA网关,接收所有邮件并在web接口显示。对调试和开发有用。
- Maildrop -开源的一次性邮件服务器,对开发也很有用
- OpenSMTPD -从OpenBSD项目实现的安全的SMTP服务器
- Postfix - 快速,易于管理和安全的Sendmail替代品
- Qmail - 安全的Sendmail替代品
- Sendmail -消息传输代理(MTA)
操作系统级别的虚拟化
- Bitnami -为web应用,开发栈和虚拟设备生产开源软件安装器或软件包
- Docker - 给开发者和系统管理员构建,发布和运行分布式应用程序的开放平台
- OpenVZ -Linux平台基于容器的虚拟化
SSH工具
- autossh -网络中断后自动复位ssh会话。
- Cluster SSH -通过一个图形化控制台控制多个xterm窗口。
- DSH -Dancer的shell/分布式shell-从一个命令行包装执行多个远程shell命令。
- Mosh - 移动shell
- parallel-ssh -提供并行的OpenSSH版本和相关工具
- SSH Power Tool -不使用pre-shared钥匙的情况下对多个服务器同时执行命令和上传文件
分析软件
- Analog - 世界上最流行的日志分析工具
- GoAccess -在终端运行的开源的实时web日志分析和交互视图
- Piwik -免费和开源的web分析应用
- Webalizer - F快速免费的web服务器日志文件分析程序
基于web的工单系统
- Bugzilla -由Mozilla项目开发和使用过的通用缺陷跟踪和测试工具
- Cerb - 基于商业开源许可的基于组的邮件管理项目
- Flyspray - 使用PHP编写的缺陷跟踪系统
- MantisBT -另一个基于web的缺陷跟踪系统
- osTicket -开源的技术支持工单系统
- Otrs -免费和开源故障通知单系统软件包,公司,组织,或其他实体可以使用它来基于询问分配工单并跟踪进一步的沟通。
- Request Tracker -使用Perl编写的工单跟踪系统
- TheBugGenie -开源的工单系统,具有非常完备的用户权限分配
故障排除工具
- mitmproxy -ython工具,用于拦截,查看和修改网络流量。在排除某些问题是非常重要的。
- Sysdig -从一个运行的linux实例上捕获系统状态和活动,之后保存,过滤和分析
- Wireshark -世界上著名的网络协议分析工具
基于web的项目管理和缺陷跟踪系统
- ChiliProject - Redmine分支
- GitBucket 用Scala编写的GitHub的克隆,单独jar安装
- GitLab -用Rbuy编写的GitHub的克隆
- Gogs -用Go编写
- OpenProject -开源的项目协作项目
- Phabricator PHP编写
- Redmine - 基于rails在rbuy编写
- The Bug Genie -PHP编写
- Trac -python编写
软件版本和版本控制
- Fossil -分布式版本控制,内建wiki和缺陷跟踪
- Git -速度很快的分布式版本控制和源代码管理
- GNU Bazaar -由Cannoicalzi赞助的分布式版本控制系统
- Mercurial -另一个版本控制
- Subversion -客户端-服务器版本控制系统
虚拟化软件
- Ganeti -在KVM和Xen上构建的集群虚拟服务器管理软件
- KVM -Linux内核虚拟化架构
- oVirt -管理虚拟机,存储和虚拟网络
- Packer - 从单个源配置为多个平台创建相同的机器镜像
- Vagrant - 创建完整开发环境的工具
- VirtualBox -来自Oracle公司的虚拟化产品
- Xen -用于32/64位Intel/AMD(IA 64)和PowerPC 970架构的虚拟机监控器
VPN软件
- OpenVPN -使用一个定制的安全密钥交换协议,利用SSL / TLS。
- Pritunl -基于OpenVPN的方案,易于设置
- SoftEther - 具有高级特性的多协议VPN软件
- sshuttle -穷人的VPN
- strongSwan - Linux下完整的IPsec实现
- tinc -分布式点对点VPN
XMPP服务器
- ejabberd -用Erlang/OTP编写的XMPP短信服务器
- Metronome IM -Prosody IM分支
- MongooseIM -ejabberd分支
- Openfire -实时协作(RTC)服务器
- Prosody IM -Lua编写的XMPP服务器
- Tigase -java实现的XMPP服务器
Webmail应用
- Mailpile - A modern, fast web-mail client with user-friendly encryption and privacy features.
- Mailpile - 一个先进,快速的web-mail客户端,具有用户友好的加密的私有个性
- Roundcube - Browser-based IMAP client with an application-like user interface.
- Roundcube - 基于浏览器的IMAP客户端,具有应用类似的用户界面
Web服务器
- Apache -最流行的web服务器
- Cherokee -轻量级,高性能的web服务器/反向代理
- Lighttpd - speed-critical环境下更优化的web服务器
- Nginx -反向代理,负载均衡器,HTTP缓存和web服务器
- uWSGI -uWSGI项目,目标在开发一个构建主机服务的全栈
Web性能
Wiki软件
- DokuWiki -使用简单和高度通用的wiki,这并不需要一个数据库。
- Gollum - 一个简单,Git-powered wiki,具有不错的API和本地前端。
- ikiwiki -一个wiki编译器
- Mediawiki -加强Wikipedia
- MoinMoin -一个高级的易用的扩展性强的Wiki引擎,具有大量的社区用户TiddlyWiki - JavaScript的完整交互wiki
- Ōlelo Wiki - 在Git存储上保存页面的wiki
各种资源,比如书籍,网站和文章,用于提升技能和知识
- Code as Craft - Etsy的运维博客,大量的技术博客
- DevOpsGuys - Devops顾问,运维博客
- Rackspace Developers -具有大量Devops主题的博客
Sysadmin相关书籍
- The Linux Command Line - William Shotts的书,关于Linux命令行
- The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win -DevOps技术如何修复发生在IT组织的问题
- The Practice of System and Network Administration - 第一和第二版本描述系统和网络管理的最佳实践,独立于特定平台或技术。
- The Visible Ops Handbook: Implementing ITIL in 4 Practical and Auditable Steps -一个方法论,旨在启动实施控制和过程改进。
- UNIX and Linux System Administration Handbook - 从使用的角度走进系统管理
开源的代码编辑器
- Atom -来自Github的文本编辑器
- Brackets - 用于web设计和前端开发的开源代码编辑器
- Eclipse - 用Java编写的IDE,具有可扩展的插件系统
- Geany -GTK2文本编辑器
- GNU Emacs -一个可扩展,自定义的文本编辑器
- Haroopad -Markdown编辑器,具有实时预览
- ICEcoder -非常棒的代码编辑器,内建常见的web语言
- jotgit -Git支持的实时协作代码编辑
- Light Table - 下一代代码编辑器
- Lime -旨在提供一个Sublime Text的开源替代方案
- TextMate -OS X下的图形文本编辑器
- Vim -一个高可配置的文本编辑器,用于高效编辑
- Servers for Hackers - 程序员的时事通讯,发现他们需要知道的服务器相关内容。
软件包存储
有用的系统管理员相关的网站
- Ops School - 全面的计划,将帮助你成为一名运维工程师。
- Digital Ocean Tutorials - 一个非常庞大资源,获得基本的应用程序,工具,甚至是系统管理主题。