建环境遇到的坑

一.预安装阶段:

【关闭邮件提醒】

echo “unset MAILCHECK” >> /etc/profile

source /etc/profile #使生效
这样就不会提示“You have new mail in /var/spool/mail/root”

【yum仓库升级】

cd /etc/yum.repos.d  备份该目录下所有文件

从其他服务器拷贝如下仓储,到本地该路径下

仓储:CentOS6-Base-163.repo

【命令提示符修改】

vim /etc/profile

提示符输出格式:export PS1=’[\u@\h \W]\$ ‘

本次:export PS1='[car-lease-beta1 \W]#’

【SCP命令无法使用】

若遇到 scp 报错:

/etc/ssh/ssh_config: line 53: Bad configuration option: permitrootlogin

/etc/ssh/ssh_config: line 56: Bad configuration option: authorizedkeysfile

vim /etc/ssh/ssh_config这个文件,注释掉提示行,即可

重启ssh服务:

service sshd restart

scp 命令生效

【Yum安装项目相关工具】

 

yum search (tools) 查看所需工具及版本

yum install vim     文本编辑器

yum install zip      压缩工具

yum install unzip  解压工具

yum -y install gcc 后面踩过的坑,redis安装时需要

二.安装开始:

【安装maven】

yum install maven
尽管Jenkins (50.164)负责编译打包,以防Jenkins服务器挂掉,本机也进行安装。

【配置maven】

scp root@192.168.49.32:/usr/share/maven/conf/settings.xml .
公司统一setting配置文件,拷贝过来即可。

【安装git】

yum install git
为方便测试环境本地可直接进行git操作,以及Jenkins服务器集成部署,需安装git。

【配置与git服务器SSH key】

1.执行命令:git config –global user.name “yadong.wang”
2.执行命令:git config –global user.email yadong.wang@mljr.com
3.执行ssh-keygen:三个回车后生成,最后得到了两个文件:id_rsa和id_rsa.pub
4.检查是否生成:cat ~/.ssh/id_rsa.pub
5.将已经生成的SSH key:复制到GitHub服务器上
6.测试git连接情况:执行ssh -T git@gitlab.mljr.com
7.如输出:“Welcome to GitLab, 王亚东!” 则通过,说明测试环境与git服务器建立公钥链接。

8.该过程主要方便进行,git工具操作。

【配置jdk ,安装sunjdk)】

1.执行下列命令,卸载默认安装的openJDK:

rpm -e –nodeps java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64
rpm -e –nodeps java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64
rpm -e –nodeps java-1.7.0-openjdk-devel-1.7.0.91-2.6.2.3.el7.x86_64
rpm -e –nodeps javamail-1.4.6-8.el7.noarch
rpm -e –nodeps javapackages-tools-3.4.1-11.el7.noarch
rpm -e –nodeps java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64
rpm -e –nodeps java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64
rpm -e –nodeps tzdata-java-2015g-1.el7.noarch
rpm -e –nodeps javassist-3.16.1-10.el7.noarch
cd /opt/
cp /opt/soft /opt/soft.bak
mkdir soft
2.拷贝解压安装SUN JDK即可:
scp root@192.168.49.26:/opt/soft/jdk-8u92-linux-x64.tar.gz /opt/soft
tar -zxvf jdk-8u92-linux-x64.tar.gz

【修改配置文件,添加java_home 】

1.为以防环境变量不稳定,及乱改现象,定制化现象,现进行多个文件环境变量设定,需要更改的环境变量文件列表如下:

   /etc/profile
   /etc/bashrc
   /etc/.bashrc
   ~/.bashrc
2.统一进行jdk 规范设定,上述文件中,增加JDK环境使用规范如下:
JAVA_HOME=/opt/soft/jdk1.8.0_92/
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
3.每编辑一个环境文件后,执行source命令,分别是:
source /etc/profile
source /etc/bashrc
source /etc/.bashrc
source ~/.bashrc

【配置hosts】

1.为访问相关服务,将hosts文件进行如下映射。

2.执行: vim /etc/hosts 进行编辑,增加:
192.168.49.79   localhost localhost.localdomain localhost4 localhost4.localdomain4  ##host IP 地址
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.8.58.30  rest.mljr.com
192.168.50.109 gitlab.youjie.com      ##git地址
192.168.50.109 maven.youjie.com    ##maven地址
192.168.49.79  car-lease-beta1        ##IP地址 主机名
192.168.50.107  s1.mljr.com             ##前端测试环境地址
(Debian发行版的hostname的配置文件是/etc/hostname)

【配置Jenkins服务器ssh key】

由于jenkins是在50.164上,所以需要164可以无需密码访问49.79环境。即需要配置ssh key,本次项目直接拷贝Jenkins服务器已经生成的公钥,到测试环境即可。

步骤如下:(本次直接从第2步开始执行)

1.在A(164)机下生成公钥/私钥对

[root@A ~]# ssh-keygen -t rsa -P ”

 

-P表示密码,-P ” 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。
该命令将在/root/.ssh目录下面产生一对密钥id_rsa和id_rsa.pub。

 

一般采用的ssh的rsa密钥:
id_rsa     私钥
id_rsa.pub 公钥

 

2.把A机下的/root/.ssh/id_rsa.pub 复制到B(49.79)机的 /root/.ssh/authorized_keys文件里,先要在B机上创建好 /root/.ssh 这个目录,用scp复制。

[root@A ~]# scp root@192.168.50.164:/root/.ssh/id_rsa.pub root@192.168.49.79:/root/.ssh/authorized_keys

3.authorized_keys的权限要是600!!!

[root@B ~]# chmod 600 /root/.ssh/authorized_keys

4.A机(50.164服务器)ssh直接登录B机(49.79测试环境),实现无需输入密码登陆即可。

【搭建zookeeper 拷贝安装即可】

1.从49.24机器拷贝zk,并进行解压。

scp ./zookeeper-3.4.6.bak.tar.gz root@192.168.49.83:/home/zk

2.解压:

tar -xvf zookeeper-3.4.6.bak.tar.gz

3.配置环境变量到系统环境变量中

vim /etc/profile

#Set ZooKeeper Enviroment

export ZOOKEEPER_HOME=/home/zk/zookeeper-3.4.6

export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

source /etc/profile

4.启动命令:

sh zkServer.sh start

【编译安装redis】
1.下载tar包到本地/home/redis
2.tar解压后进入cd redis-4.0.1
3.执行make命令,编译安装
4.安装后/src/redis-server脚本启动服务
5.执行src/redis-cli脚本可以看到命令窗口
6.Ctrl+c即停止服务,若后台启动更改配置文件conf下vim redis.conf,将daemonize属性改为yes(表明需要在后台运行),保存退出重新启动即后台启动服务。

7.增加环境变量:vim /etc/profile

export PATH=$PATH:/home/redis/redis-4.0.1/src

8.将启动脚本和配置文件从src文件中拷贝出来
9.执行./redis-server redis.conf

10.修改redis.conf 文件,注释掉#bind 127.0.0.1 否则客户端无法连接。如果能telnet 6379表示可以连接

11.修改redis.conf 文件,将daemonize no 改为daemonize yes 防止无法后台启动redis

12.修改redis.conf 文件,增加auth  登录权限密码。

【PS:辅助功能及问题】

一.提示符窗口:/etc/motd

二.解决ssh配置后仍然无法无密码登陆问题:A机器访问B机器ssh key配置后仍然无法无密码访问:

1.跟踪ssh访问日志,在B机器上执行

tail -300f /var/log/secure

2.A机器执行 ssh root@192.168.49.27 ,提示输入密码

3.这时看到B机器日志中提示:

Nov 28 14:28:14 car-lease-beta2 sshd[29237]: Authentication refused: bad ownership or modes for directory /root

说明/root权限有问题。

4.查看/root 文件目录权限被修改,找一个能正常访问的机器 对比一下root目录权限。然后chmod更改文件权限一致。重新ssh执行,发现可以访问。

总结:

1.ssh也有可查看访问的日志

2./root目录权限也会影响ssh key访问。

3.除了这个日志还有ssh调试命令

ssh -v root@192.168.49.27

可以看到ssh访问时都经历了哪些过程。

【搭建ES】(elasticsearch)

  1. 创建用户
    useradd 选项 用户名(useradd qa)
  2. 为用户创建密码
    passwd qa
  3. 查询用户列表
    cat /etc/passwd
  4. 使用qa 账户登录  su qa(es不支持root 用户启动,所以使用qa 用户启动)
  5. 进入到qa 所在目录
  6. 将elasticsearch-2.4.6.tar 复制到qa 用户所在目录
  7. 解压elasticsearch-2.4.6.tar
  8. 启动elasticsearch-2.4.6
    ./elasticsearch -d

【搭建环境遇到的坑】

1. 配置config 如果一直失败,注册eureka 一直是down 的话, 可以检查下机器hosts ,是否配置gitlab 。