首页 > 其他分享 >nt高可用部署

nt高可用部署

时间:2024-06-15 12:00:05浏览次数:21  
标签:可用 部署 rpm systemctl yum install mysql php nt

一:准备环境, 共7台云主机,50M带宽,做nat映射,因为需要联网下安装包和调试,5台centos7.9,分别部署nginx负载均衡,mysql8.0主从,web主从,1台windows测试内网使用情况,nas盘映射到两台web云主机上; nginx1:192.168.98.141 mysql1:192.168.98.251 mysql2:192.168.98.204 web1:192.168.98.109 web2:192.168.98.85 windows:192.168.98.57 安全组放行并做好网络映射,可以分别远程到各主机
二、部署前工作:5台centos主机都需要进行update更新(需要更新成阿里云的源),以下操作为root用户登录操作 1、更新阿里源并进行更新,关闭系统防火墙 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache yum -y update systemctl stop firewalld systemctl disable firewalld
三、安装数据库(2台数据库安装方式一样),后配置主从 1、安装wget工具 yum -y install wget 2、安装对应依赖 yum install net-tools yum install -y perl-Module-Install.noarch 3、查询是否安装了mariadb rpm -qa | grep mariadb 4、如果有内容就需要进行卸载,与mysql冲突 yum -y remove mariadb* 5、创建文件夹并下载mysql安装包 cd /opt mkdir mysql cd /opt/mysql wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar <!-- 如果下载缓慢可以直接用迅雷下载好传到对应目录即可,本次提供安装包 --> tar -xvf mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar 6、安装mysql rpm -ivh mysql-community-common-8.0.11-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm
7、启动服务&设置开机自启动 systemctl start mysqld && systemctl enable mysqld && systemctl status mysqld 8、查看初始密码 cat /var/log/mysqld.log | grep password 9、登录 mysql -uroot -p 10、更改密码和加密方式,刷新 ALTER USER root@localhost IDENTIFIED BY 'Nihao135@'; ALTER USER 'root'@'localhost' IDENTIFIED BY 'Nihao135@' PASSWORD EXPIRE NEVER; FLUSH PRIVILEGES; 11、进入mysql数据库,允许root远程登录数据库 use mysql; update user set host = '%' where user = 'root'; exit; 12、重启mysql服务 systemctl restart mysqld 13、配置数据库主从 1)、在主服务器上,修改/etc/my.cnf文件,在最后加上两行 #服务器 id,随意,但要唯一 server-id = 1 #二进制文件存放路径 log-bin = mysql-bin 2)、重启mysql服务 systemctl restart mysqld mysql -uroot -pNihao135@ use mysql; <!-- 创建同步用的账号密码并授权 --> create user slave@'%' identified by 'Nihao135@'; GRANT ALL PRIVILEGES ON *.* TO 'slave'@'%'WITH GRANT OPTION; FLUSH PRIVILEGES; <!-- 查看数据库状态,要记住File和Position的值,后面从服务器配置文件要用 --> show master status; 3)、在从服务器上修改/etc/my.cnf文件,在最后加上两行 #服务器 id,随意,但要唯一 server-id = 2 <!-- 不要和主服务器id重复 --> #二进制文件存放路径 log-bin = mysql-bin 4)、重启mysql服务 systemctl restart mysqld mysql -uroot -pNihao135@ STOP SLAVE; <!-- 停止同步服务 --> CHANGE MASTER TO MASTER_HOST = '192.168.98.251', MASTER_USER = 'slave', MASTER_PASSWORD = 'Nihao135@', MASTER_LOG_FILE = 'mysql-bin.000002', <!-- 上面主服务器的File值 --> MASTER_LOG_POS = 2830; <!-- 上面主服务器的Position值 --> <!-- 开启同步 --> start slave; <!-- 查看状态 --> show slave status\G; <!-- 只要看到Slave_IO_Running: Slave_SQL_Running都显示yes就是正常了 ,可以创建数据库看是否可以正常同步了,注意随着长时间运行,mysql的日志也会越来越多,维护时要注意清理-->
四、部署web应用,搭建双入口负载均衡 1、安装httpd和php7.4的环境(软件部署要求7.3以上的环境),两台同样的配置 yum -y install httpd systemctl enable httpd systemctl start httpd <!-- 安装php7.4 --> yum install epel-release yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm yum -y install yum-utils yum-config-manager --enable remi-php74 yum install -y php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis <!-- 查看一下版本是否正常 --> php -v systemctl start php-fpm systemctl enable php-fpm <!-- 需要修改一下php默认上传的大小限制,改成500m并重启,检测站切片文件都不会超过500m --> vi /etc/php.ini upload_max_filesize = 500M systemctl restart php-fpm 2、部署云盘软件 <!-- 将软件拷贝到/var/www/html下 --> cd /var/www/html unzip nextcloud-23.0.3.zip mv nextcloud/* /var/www/html/ chmod -R 777 /var/www/html/ 3、将两台web服务器重启一下,部分场景下可能会出现php不生效的情况,重启即可 浏览器访问192.168.98.109,按照引导填入对应的信息安装即可安装,部分情况下需求修改对应的配置文件,主要是数据库的信息 vi /var/www/html/config/config.php 在最后要添加一行 'check_data_directory_permissions' => false, 最终效果两个config文件连接同一个数据库即可 默认云盘的存储路径是/var/www/html/data,需要挂外NAS存储,例如路径为/opt/bigdata mkdir /opt/bigdata mount -t nfs -o vers=3,nolock 10.73.2.37:/d7239770-ba18-4807-96cb-3afc7c6d6ff5 /opt/bigdata <!-- 上面是大云挂载nas实例的方法,苏研要按照具体方式挂载到对应目录并赋予权限 --> chmod -R 777 /opt/bigdata cp /var/www/html/.ocdata /opt/bigdata <!-- 如果没有一定要拷贝一个.ocdata文件过来,否则会报错的 --> yum install nfs-utils vi /etc/fstab <!-- 在最后一行加上如下,让nas开机后能自动挂载上来 --> 10.73.2.37:/d7239770-ba18-4807-96cb-3afc7c6d6ff5 /opt/bigdata nfs defaults 0 0
五、nginx反向代理负载均衡 yum -y install gcc gcc-c++ pcre pcre-devel openssl openssl-devel zlib zlib-devel gd gd-devel yum -y install nginx systemctl start nginx systemctl enable nginx vi /etc/nginx/nginx.conf 加入代码块
upstream jdcjcecs { ip_hash; server 192.168.98.109 weight=1; server 192.168.98.85 weight=1; }
server { listen 80; location / { proxy_pass http://jdcjcecs; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } client_max_body_size 512M; client_body_timeout 300s; fastcgi_buffers 64 4K; } 保存退出后 systemctl reload nginx systemctl restart nginx

标签:可用,部署,rpm,systemctl,yum,install,mysql,php,nt
From: https://www.cnblogs.com/lurj/p/18249145

相关文章