SaltStack systembase模块
======

简介
------
systembase模块主要完成对服务器的初始化配置
包括

1. 服务器的基础rpm包安装
2. 对服务器kernel的参数进行优化设置
3. 部署自有的logrotate轮转目录

## 模块目录结构
systembase的目录结构

* pillar目录下
	```bash
	pillar/
	├── prod
	│   ├── systembase.sls
	└── top.sls
	```

* salt目录下
	```bash
	salt/systembase
	├── files
	│   ├── 90-nproc.conf			# 进程上限设置
	│   ├── clock					# 时区设置
	│   ├── douyu_logrotate			# douyu_logrotate目录，用于常用日志轮转
	│   │   ├── cron.daily
	│   │   │   └── logrotate
	│   │   ├── libexec
	│   │   ├── logrotate.conf
	│   │   └── logrotate.d
	│   ├── limits.conf				# 文件描述符限制
	│   ├── localtime				# 上海时区设置
	│   ├── motd					# 开机界面(默认字符串为douyutv)
	│   ├── profile					# 服务器环境变量设置，包括history的长度和记录格式
	│   ├── selinux					# 默认关闭selinux设置
	│   └── sysctl_config.sh		# 对kernel初始化脚本
	├── init.sls
	├── map.jinja
	└── states
		├── common_conf.sls
		├── douyu_logrotate.sls
		└── pkgs.sls
	```

### states文件
1. pkgs.sls文件从map.jinja读取服务器需要安装的包列表，对服务器进行安装
2. common\_conf.sls 文件定义各个配置文件的位置
3. douyu\_logrotate.sls 文件定义轮转目录的位置

### sysctl\_config.sh脚本
该脚本参考服务器的内存数量以及服务器的cpu核数，对服务器进行针对性kernel参数优化
具体优化可以参考脚本，脚本内部有各个注解