1. 公司最近开始走向国产化和开源路线,因为绝大多数国产化都是采取的linux路线, 所以为了保证兼容性, 测试环境大部分从windows迁移到了linux环境.
测试采取逐步推进的模式, 先测试兼容 x86上面 linux 然后没有问题之后, 再兼容龙芯或者是ARM架构的linux环境.
又因为大部分国产化环境采用的是 centos系列或者是ubuntu系列, 最简单的方法是优先采取centos系列.
因为中标麒麟 还有 浪潮K unix 都是走的 centos 的路线
加上systemd的daemon进程基本上已经是linux的守护进程的标准. ubuntu 兼容也比较容易一些了.
2. 首先准备centos的环境,
安装方式比较简单. 这里安装时的注意事项主要如下:
2.1 设置 根分区 / 的大小
centos 默认根分区50g , 如果安装了docker 或者是一些数据库到根分区,可能很快就会造成磁盘满了, 建议修改根分区到占用较多的磁盘大小.
2.2 设置网络为自动连接.
不然每次开机可能需要修改手动连接网络.
3. 安装完centos 之后的处理.
3.1 关闭防火墙
测试环境里面关闭防火墙能避免很多不必要的麻烦, 但是生产环境极端不建议关闭防火墙.
systemctl disable firewalld systemctl stop firewalld systemctl 就是systemd 的最重要的管理控制命令enable 设置为开机启动start 启动服务stop 关闭服务restart 重启服务disable 重启服务status 查看服务状态journalctl 可以查看服务的日志 -u 查询具体的服务 -n 查询多少条服务的日志.
3.2 关闭selinux
selinux 是securit enhance linux 的意思 centos的加强安全的功能 测试环境也是建议关闭的 方法 修改enforce 修改为disable即可.
3.3 设置最大文件数
vim /etc/security/limits.conf 在最后面增加上如下内容 * soft nofile 65536 * hard nofile 65536 * soft nproc 65536 * hard nproc 65536 * 代表所有的用户.soft 和hard 其实意义不大 主要就是是否是警告 还是 直接kill process的区别.
3.4. 如果设置为服务启动的话 还需要设置一下 linux systemd 的允许打开的文件数目
vim /etc/systemd/system.conf 修改两项设置
DefaultLimitNOFILE=65536
DefaultLimitNPROC=65536
一个是限制服务能够打开的文件句柄数目
一个是限制服务能够打开的进程树
3.5 其他的想到了 添加.
注意处理完之后 重启一下linux服务器.
4. 安装dotnet sdk
注意 dotnet sdk 开源之后 centos 默认安装了 dotnet core的2.0的版本. 但是这个版本不符合 产品需求的情况下 需要先卸载掉 命令 rpm -qa |grep dotnet |xargs rpm -ef 解析: rpm -qa 查看已经安装的rpm包 | 管道命令 可以连接多个命令 一起处理. grep dotnet 搜索过滤 包含 dotnet 名字的rpm 包 xargs 将上一个命令的输出作为 这个命令的输入 rpm -ef 卸载rpm包. 然后 可以从微软官网下载一个tar包放到一个目录下面比如/dotnet 目录然后解压缩这个文件.再将 /dotnet 目录放到环境变量里面去. 这里面说一下环境变量:最传统的的处理时修改 /etc/profile但是这个文件很庞大 处理不好容易出问题不好解决还有一个经常是会用的把饭 就是修改 .bash_profile 文件这个文件和 .bash_rc文件 一般存在于用户的 家 目录但是 也不是特别好记住 最简单的把饭 就是在/etc/profile.d 里面增加一个 sh 文件每次服务器启动 都会 执行 这个目录里面的文件 然后写入到环境变量里面去. 比如 vim /etc/profile.d/dotnet.sh 增加内容 export PATH=$PATH:/dotnet即可如果不重启的话 可以使用 source vim /etc/profile.d/dotnet.sh使命令生效.
5. 安装postgresql 数据库.
centos 上面 使用 rpm 包的方式进行安装 可以通过官网下载 增加 yum的源 也可以 跟我一样下载好文件:
然后执行安装即可
放到linux的一个目录里面. 然后 cd 到这个目录执行命令 rpm -ivh *.rpm 即可. 这里需要注意一下.
安装完之后的处理
如果机器没有安装过pg的话 非常容易就可以安装上了 如果安装过的花 需要先执行卸载 如果安装完之后 服务启动不起来 可能需要手动建库. 方法也比较简单: 首先 systemctl status postgresql-10 来查看一下 pg的安装配置回信息. ● postgresql-10.service - PostgreSQL 10 database server Loaded: loaded (/usr/lib/systemd/system/postgresql-10.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2019-09-02 16:33:58 CST; 1 weeks 3 days ago Docs: https://www.postgresql.org/docs/10/static/ Process: 8598 ExecStartPre=/usr/pgsql-10/bin/postgresql-10-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS) Main PID: 8604 (postmaster) Tasks: 8 Memory: 152.7M CGroup: /system.slice/postgresql-10.service ├─8604 /usr/pgsql-10/bin/postmaster -D /var/lib/pgsql/10/data/ ├─8607 postgres: logger process ├─8609 postgres: checkpointer process ├─8610 postgres: writer process ├─8611 postgres: wal writer process ├─8612 postgres: autovacuum launcher process ├─8613 postgres: stats collector process └─8614 postgres: bgworker: logical replication launcher 如果启动不起来的话 需要找到 service 文件 查看启动命令的位置. 查看 这个 服务配置文件:vim
/usr/lib/systemd/system/postgresql-10.service 找到 文件存放位置
进入 bin 目录 可以执行 相关的命令.
最简单的创建库的方法:
cd /usr/pgsql-10/bin/ 执行 ./initdb -D /yourdbpath 就能够创建数据库了 注意事项: 1. 这个目录必须有 2. 这个目录必须为空 3. 这个目录的属主必须是postgres 4. 文件权限必须是属主可以读写的. 设置完 修改 service 文件就可以启动 postgresql数据库了 systemctl start postgresql-10
设置密码
设置密码也比较简单 su - postgres 切换到 pg数据库的默认用户. 然后执行 pgsql 进入到数据库 执行命令 alter role postgres with password ‘yourpassword‘; 提示出 alter role 即可 , 注意 必须有 ; 才可以 不然并不执行 然后输入 \q 就可以退出了.
修改配置文件
initdb 的时候使用的目录里面有两个文件 一个是 postgres.conf 一个是 pg_hba.conf 装修 修改 监听端口 ip地址 以及 用户的访问权限等 使用springboot 还需要修改 max_connections 放置连接池不够用了. 比较简单不说了
6. 安装redis
redis 比较简单 最简单的办法 是使用 docker 方式运行 docker run -d -p 127.0.0.1:6379:6379 --name redis redis 注意 端口映射 加上127 可以放置无密码被攻击. 也可以使用2进制方式安装:比较加单 网上一堆教程.可以参照:https://www.cnblogs.com/jinanxiaolaohu/p/9277633.html
以上就可以有 简单可以使用的测试环境了.
原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/11516099.html