简介
我是一名大三的学生,学习的是计算机科学与技术专业,通过查询了解到“飞天加速计划·高校学生在家实践”活动,非常荣幸能够参与此活动,从中学习知识。此次分享的主要是将已经完成的项目部署到阿里云ECS,配置相关的环境,并解决部署过程的问题。
项目部署
使用finalShell远程连接服务器:
1、安装jdk
2.安装Tomcat
防火墙操作:
- 查看防火墙状态(systemctl status firewalld、firewall-cmd --state)
- 暂时关闭防火墙(systemctl stop firewalld)
- 永久关闭防火墙(systemctl disable firewalld)
- 开启防火墙(systemctl start firewalld)
- 开放指定端口(firewall-cmd --zone=public --add-port=8080/tcp --permanent)
- 关闭指定端口(firewall-cmd --zone=public --remove-port=8080/tcp --permanent)
- 立即生效(firewall-cmd --reload)
- 查看开放的端口(firewall-cmd --zone=public --list-ports)
注意:
- 1、systemctl是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作
- 2、firewall-cmd是Linux中专门用于控制防火墙的命令
- 3、为了保证系统安全,服务器的防火墙不建议关闭
3、安装mysql:
weget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
①:检测当前系统中是否安装MySQL数据库
rpm -qa 查询当前系统中安装的所有软件
rpm -qa l grep mysql 查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mariadb 查询当前系统中安装的名称带mariadb的软件
RPM ( Red-Hat Package Manager)RPM软件包管理器,是红帽Linux用于管理和安装软件的工具
注意事项:如果当前系统中已经安装有MySQL数据库,安装将失败。CentOS7自带mariadb,与MySQL数据库冲突
②:卸载已经安装的冲突软件
rpm -e --nodeps软件名称 卸载软件
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
③:将资料中提供的MySQL安装包上传到Linux并解压
mkdir /software/mysql
tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
说明:解压后得到6个rpm的安装包文件
⑦:登录MySQL,修改密码,开放访问权限
mysql -uroot -p 登录mysql(使用临时密码登录)
#修改密码
set global validate_password_length=4; 设置密码长度最低位数
set global validate_password_policy=LOW; 设置密码安全等级低,便于密码可以修改成root
set password = password('root'); 设置密码为root
#开启访问权限
grant all on *.* to 'root'@'%' identified by 'root';
flush privileges;
⑧:测试MySQL数据库是否正常工作
show databases;
导入数据:先安装unzip:yum list unzip
:yum install 文件名
4、安装Redis
在Linux系统安装Redis步骤:
- 1.将Redis安装包上传到Linux
- ⒉.解压安装包,命令: tar -zxvf redis-4.0.0.tar.gz -C lusr/local
- 3.安装Redis的依赖环境gcc,命令:yum install gcc-C++
- 4.进入/usr/local/redis-4.0.0,进行编译,命令: make
- 5.进入redis的src目录,进行安装,命令: make install
Redis服务启动与停止
Linux中redis服务启动,可以使用redis-server,默认端口号为6379
[root@localhost src]# ./redis-server
[root@localhost redis-4.0.0]# src/redis-server ./redis.conf #更改redis.conf配置下protected-mode yes后使用,可不占页面
Ctrl +C停止Redis服务
设置密码:
远程连接:先将配置文件中的:#bind 127.0.0.1 注释
设置开机自动启动:
cd /lib/systemd/system/
# 新建文件
vim redis.service
文件内容如下
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
# ExecStart需要按照实际情况修改成自己的地址
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
# 开机自动启动
systemctl enable redis.service
# 启动redis服务
systemctl start redis.service
# 查看服务状态
systemctl status redis.service
# 停止服务
systemctl stop redis.service
# 取消开机自动启动(卸载服务)
systemctl disabled redis.service
5、安装maven
:将资料中提供的maven安装包上传到Linux,在Linux中安装maven
tar -zxvf apache-maven-3.5.4-bin.tar.gz-C /usr/local
vim /etc/profile 修改配置文件,加入如下内容
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
source /etc/profile
mvn -version
vim /usr/local/apache-maven-3.5.4/conf/settings.xml 修改配置文件内容如下
<localRepository>/usr/local/repo</localRepository>
6、安装Nginx
安装过程:
- 安装依赖包 yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
- 下载Nginx安装包
wget https://nginx.org/download/nginx-1.16.1.tar.gz
- 解压tar -zxvf nginx-1.16.1.tar.gz
- cd nginx-1.16.1
- ./configure --prefix=/usr/local/nginx6.make && make install
7、安装kafka
Kafka简介:可自行官网查看
- Kafka是一个分布式的流媒体平台。
- 应用:消息系统、日志收集、用户行为追踪、流式处理。
Kafka特点
- 高吞吐量、消息持久化(存储在硬盘,顺序读取)、高可靠性(分布式集群部署)、高扩展性。
Kafka术语
- Broker(kafka集群中的每一台服务器)、Zookeeper(管理集群)
- Topic(主题:存放消息的位置)、Partition(对主题位置的分区)、Offset(消息在分区内存储的索引)
- Leader Replica(主副本:能对请求数据做出响应) 、Follower Replica(从副本:从主副本备份)
下载:官网下载地址较慢,可前往阿里云镜像下载
配置:
后台启动zookeeper: bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
后台启动kafka:nohup bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &
bin/kafka-server-start.sh -daemon config/server.properties
bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic heima --partitions 2 --replication-factor 1
8、安装Elastisearch
Elasticsearch入门
Elasticsearch简介:可在其官网查看
- 一个分布式的、Restful风格的搜索引擎。
- 支持对各种类型的数据的检索。
- 搜索速度快,可以提供实时的搜索服务。
- 便于水平扩展,每秒可以处理PB级海量数据。
Elasticsearch术语
- 索引(对应库)、类型(对应表)、文档(对应行)、字段(对应列)。6.0后类型被废弃,索引开始对应表
- 集群、节点、分片、副本。
下载后:
配置文件:
配置环境变量:D:\Software\elasticsearch-8.3.3\bin
安装中文分词插件ik:githup 搜索elasticsearch ik
:解压位置:
适当调整使用内存大小(默认为1g):
启动:/bin/elasticsearch -d
9、页面部署
此项目为一个交流论坛,已经在阿里云ECS部署完成。
打包:mvn package -Dmaven.test.skip=true
移动:mv ROOT.war /software/apache-tomcat-9.0.65/webapps/
网站首页:
总结
在暑期的学习过程中,无论是编程过程,或是环境搭建过程中都会遇到很多问题,在经过各种方式解决之后,下次遇到很可能忘记了解决方案。所以我打算搭建一个个人博客来记录学习过程中遇到的问题和编程的技巧,方便时常总结归纳提高。需要选择一个云服务器,在通过搜索查询到了解到阿里云“飞天加速计划·高校学生在家实践”计划,刚好能解决我的需求,同时也可以给我第一次使用云服务器的实践机会。
想要参加这个活动,只需要注册账号,完成阿里云的学生认证,就可以参加这个计划了。在参加计划后,领用服务器之前需要先完成场景实践:ECS新手入门,这是ECS服务器的新手教程,非常详细,可以通过实验体验ECS云服务器搭建场景,了解ECS概念及基础操作。再独立学习,将交流论坛部署到阿里云ECS。再次感谢阿里云“飞天加速计划·高校学生在家实践”活动。