00-服务器搭建
# 服务器的基本情况查看
# 查看内存使用情况
free -m
# 查看cpu使用情况进程运行情况
top
# 查看磁盘以及分区情况
df -h
# 查看网络情况
ifconfig
# 查看端口是否可以访问,比如某个程序的端口是否正常
telnet 192.168.147.101 7180
# 如何提示如下,说明端口正常可以连接
$> Trying 192.168.147.101...
$> Connected to 192.168.147.101.
$> Escape character is '^]'.
# 查看端口使用情况
# 1.方法一
lsof -i:80
# 2.方法二
netstat -anop | grep 80
a: -a或--all 显示所有连线中的Socket
n: -n或--numeric 直接使用IP地址,而不通过域名服务器
o: -o或--timers 显示计时器。
p: -p或--programs 显示正在使用Socket的程序识别码和程序名称。
# 3.方法三
ps -au | grep 80
服务器分布:3台:
hostname | mem | disk | core | |
---|---|---|---|---|
centos01 | 8G | 50G | 4 | |
centos02 | 3G | 40G | 3 | |
centos03 | 3G | 40G | 3 | |
free -h查看内存 | df -h查看磁盘 |
1, 首先安装需要的软件
yum install vim net-tools.x86_64 nc telnet rsync ntp ntpdate -y
2, 首先修改为固定ip
2.1, 先修改
vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
NAME="ens33"
UUID="cb0e3b7f-0e55-45e6-90e4-b455d4a9c920"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.147.141
NETMASK=255.255.255.0
GATEWAY=192.168.147.2
2.2, 重启网络
systemctl restart network.service
2.3, 然后修改DNS文件
vi /etc/resolv.conf
nameserver 114.114.114.114
2.4, ip修改完成之后通过如下命令看是否静态网络修改成功并可用
ifconfig
ping www.baidu.com
3, 修改hostname
vim /etc/hostname
把里面的内容更换成想要的主机名后reboot即可
4, ssh免密登陆
- 这步最好在设置hostname之后,因为公钥中会保存hostname相关的内容
ssh-keygen
一路回车enter即可,完成后,/root/.ssh目录下会有id_rsa和id_rsa.pub两个文件
所有需要互相免密登陆的id_rsa.pub中的内容放到一个文件authorized_keys文件中,并把authorized_keys分发到各个服务器的/root/.ssh/目录下即可
scp /root/.ssh/authorized_keys root@centos02:/root/.ssh/
5, 自定义工具imcall.sh, imrsync.sh
vim /usr/local/bin/imrsync.sh
添加下面的shell脚本后,修改执行权限
chmod u+x /usr/local/bin/imrsync.sh
#! /bin/bash
# 脚本作用:同步文件或者文件夹,可以输入全路径,也可以输入相对路径或者当前的某个文件名
if(($#!=1)); then echo '请输入正确的需要同步的文件夹或文件的路径';exit;fi;
echo;
path=$@;
relativeDirPath=`dirname $path`;#这里取出来有时候是.,也就是当前目录
cd $relativeDirPath;
dirPath=`pwd`;
basePath=`basename $path`;
fullPath=$dirPath/$basePath;
echo '--------------------------------同步源目录开始:'$fullPath'------------------------------------';
for((i=1;i<4;i++));
do
rsync -avl $@ root@centos0$i:$fullPath;
done;
echo '--------------------------------同步源目录结束:'$dirPath/$basePath'------------------------------------';
echo;
vim /usr/local/bin/imcall.sh
添加下面的shell脚本后,修改执行权限
chmod u+x /usr/local/bin/imcall.sh
- 注意:如果又时候不管用,类似imcall.sh jps这样的,是因为ssh上另外一台服务器的时候用的是/.bashrc文件的,需要把java的环境变量也加入一份到/.bashrc文件中去就可以了哈
#! /bin/bash
#if((n!=1)); then echo '请输入正确命令';exit;fi;#这里不能判断一个参数,不然ls -a这种就会有问题
echo;#打印一行空格
echo '---------------------------------执行命令开始:'$@'-----------------------------------';
echo;#打印一行空格
for((i=1;i<4;i++))
do
echo '---------------'centos0$i'--------------';
ssh centos0$i "$@";
done;
echo;
echo '---------------------------------执行命令结束:'$@'-----------------------------------';
6, 修改hosts文件
vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.147.101 centos01
192.168.147.102 centos02
192.168.147.103 centos03
7, jdk的安装
7.1, 下载jdk-8u211-linux-x64.tar.gz
7.2, 解压缩至/usr/local/目录下
tar -zxvf jdk-8u211-linux-x64.tar.gz -C /usr/local/
7.3, 创建软链接
ln -s jdk1.8.0_211/ jdk
7.4, 添加环境变量并更新
vim /etc/profile
添加如下内容后source
source /etc/profile
7.5, 验证
java
8, mysql的安装
现在已经用MariaDB完全取代msyql,而是使用方法完全一致,并且安装更方便一些,安装方法如下:
-
01, 使用yum直接安装MariaDB
yum -y install mariadb*
-
02, 开启服务,并设置开机启动
systemctl start mariadb.service
systemctl enable mariadb.service -
03, 尝试登陆,刚开始是没有密码的,应该可以直接登陆成功
mysql
-
04,如果成功之后,退出,设置密码
exit;
mysql_secure_installation; 05,提示输入密码,如果是刚装的,密码是空,直接enter即可,然后输入用户和密码,按照提示操作即可
-
06, 都成功之后,可以按照正常流程进行登陆即可
mysql -u root -p ***** //root是你设置的用户名
-
07, 默认情况下,外部是不能直接连接我们的数据库的,需要更改设置,并刷新权限
- 这里是可以设置不同的用户名和不同的密码的哦,好强大的样子
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY ',.' WITH GRANT OPTION;
flush privileges;
-
08, 可以从用户表中查看root访问权限
select host, user from mysql.user;
9, 时间同步
1.安装ntpdate工具
yum -y install ntp ntpdate
2.设置系统时间与网络时间同步
ntpdate cn.pool.ntp.org
3.将系统时间写入硬件时间
hwclock --systohc
4.查看系统时间
timedatectl
10, 关闭防火墙
查看防火墙状态
systemctl status firewalld.service
关闭防火墙
systemctl stop firewalld.service
打开防火墙
systemctl start firewalld.service
禁用防火墙
systemctl disable firewalld.service
启用防火墙
systemctl enable firewalld.service