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的源 也可以 跟我一样下载好文件:



centos7配置go环境 centos7基本环境选择_运维

 

 然后执行安装即可



放到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

找到 文件存放位置



centos7配置go环境 centos7基本环境选择_运维_02

 

 进入 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进制方式安装:
比较加单 网上一堆教程



 

以上就可以有 简单可以使用的测试环境了.