本贴是本人ZBW在工作时遇到的问题及解决方法,故做此记录。
一、在Ubuntu上配置Java 1.8
有两种方法安装,第一种是简易安装方法,第二种是指定包自己配置环境方法(也可用于非Ubuntu的Linux中)。
1.1 方法一,简易apt-get安装
1 更新Ubuntu软件包列表
sudo apt-get update
-
安装OpenJDK 8
sudo apt-get install openjdk-8-jdk
-
验证Java安装
运行以下命令来验证Java是否已成功安装:java -version
输出的结果应该类似于:
openjdk version "1.8.0_342" OpenJDK Runtime Environment (build 1.8.0_342-8u342-b07-0ubuntu1~20.04-b07) OpenJDK 64-Bit Server VM (build 25.342-b07, mixed mode)
现在Java 1.8已经成功地在Ubuntu上安装了。
1.2 方法二,指定包下载配置
以在Linux Sanos上部署JDK 1.8为例,按照以下步骤操作:
-
从官方Oracle网站或受信任的镜像下载JDK 1.8软件包。
如:https://www.oracle.com/java/technologies/downloads/ -
将下载的JDK软件包复制到Linux Sanos系统中。如果从远程机器传输软件包,可以使用
scp
命令进行传输;如果从本地机器传输软件包,则可以使用USB驱动器进行传输。
如果想用wget
命令直接下载到服务器,则使用wget https://download.oracle.com/otn/java/jdk/8u371-b11/ce59cff5c23f4e2eaf4e778a117d4c5b/jdk-8u371-linux-x64.tar.gz?AuthParam=1682400620_447914efa384264fcb8fa7522ce4d919 --output-document jdk-8u371-linux-x64.tar.gz
其中
wget
后面网站是登录后的下载地址,--output-document
后面的名称是下载后被重命名文件名 -
使用
tar
命令将JDK软件包解压缩到选择的目录中。例如,要将软件包解压缩到/opt
目录中,可以使用以下命令:tar -zxvf jdk-8uXXX-linux-x64.tar.gz -C /opt/
将
XXX
替换为相应的更新版本号。 -
本别将
JAVA_HOME
环境变量设置为指向JDK安装目录,将JDK的bin
目录添加到PATH
环境变量中。可以通过将以下行添加到.bashrc
文件中来实现:sudo vim .bashrc export JAVA_HOME=/opt/jdk1.8.0_XXX export PATH=$PATH:$JAVA_HOME/bin
将
XXX
替换为相应的更新版本号。 -
运行以下命令重新加载
.bashrc
文件:source ~/.bashrc
-
运行
java -version
命令验证JDK是否已正确安装。java -version
这将显示刚刚安装的JDK版本。
输出的结果应该类似于:java version "1.8.0_371" Java(TM) SE Runtime Environment (build 1.8.0_371-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.371-b11, mixed mode)
这样就已经在Linux Sanos系统上安装并准备好JDK 1.8了。
二、在Ubuntu上部署ActiveMQ
2.1 在Ubuntu上部署ActiveMQ,并开机自启
说明:ActiveMQ需要Java环境支持,因此在部署ActiveMQ之前,需要先安装Java。
2.1.1. 下载并解压ActiveMQ
可以从ActiveMQ官网下载指定版本的ActiveMQ二进制文件,下载后解压缩到目标目录,这里以5.16.6为例:
wget https://archive.apache.org/dist/activemq/5.16.6/apache-activemq-5.16.6-bin.tar.gz
tar -zxvf apache-activemq-5.16.3-bin.tar.gz
sudo mv apache-activemq-5.16.6 /opt/activemq
将解压后的ActiveMQ文件夹移动到/opt
目录下,以便在整个系统中使用。
2.1.2. 启动ActiveMQ
进入ActiveMQ安装目录下的bin
文件夹,执行以下命令启动ActiveMQ:
cd /opt/activemq/bin
sudo ./activemq start
ActiveMQ将在后台运行,并将日志输出到/opt/activemq/data/activemq.log
文件中。
2.1.3. 设置开机自启
可以使用Systemd将ActiveMQ设置为开机自启。创建一个新的Systemd服务文件activemq.service
:
sudo nano /etc/systemd/system/activemq.service
在文件中添加以下内容:
[Unit]
Description=ActiveMQ message broker
After=network.target
[Service]
Type=forking
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
User=root
Group=root
[Install]
WantedBy=multi-user.target
保存并关闭文件。然后使用以下命令启用并启动ActiveMQ服务:
sudo systemctl enable activemq
sudo systemctl start activemq
现在,ActiveMQ将在每次系统启动时自动启动。
2.1.3. 检测ActiveMQ服务状态
使用以下命令检查ActiveMQ的状态:
sudo systemctl status activemq
如果一切正常,应该能看到类似以下的输出:
● activemq.service - ActiveMQ message broker
Loaded: loaded (/etc/systemd/system/activemq.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-04-25 10:56:49 CST; 4h 16min ago
Process: 8427 ExecStart=/opt/activemq/bin/activemq start (code=exited, status=0/SUCCESS)
Main PID: 8499 (java)
Tasks: 47 (limit: 9406)
Memory: 262.3M
CGroup: /system.slice/activemq.service
└─8499 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/activemq//conf/login.con>
输出中的 Active: active (running)
表示ActiveMQ服务正在运行。
2.2 在Ubuntu上使ActiveWQ可以被8161端口远程访问
默认情况下,ActiveMQ的管理控制台(即8161端口)只能从本地访问。如果希望从其他计算机远程访问ActiveMQ的管理控制台,则需要在ActiveMQ配置文件中进行以下更改:
-
打开ActiveMQ目录中的配置文件
{activemq}/conf/jetty.xml
。sudo vim /opt/activemq/conf/jetty.xml
-
找到以下行:
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start"> <property name="host" value="127.0.0.1"/> <property name="port" value="8161"/> </bean>
-
将
127.0.0.1
更改为ActiveMQ服务器的IP地址或0.0.0.0
,以允许任何远程计算机连接到管理控制台。
例如:<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start"> <property name="host" value="0.0.0.0"/> <property name="port" value="8161"/> </bean>
-
保存并关闭文件。
现在,ActiveMQ的管理控制台已配置为允许从任何远程计算机访问。但是,出于安全原因,建议使用防火墙规则限制远程访问的IP地址。
如果您想在其他计算机上使用Web浏览器访问ActiveMQ的管理控制台,请使用以下URL:
http://YourActiveMQServerIP:8161/admin
其中
YourActiveMQServerIP
是您的ActiveMQ服务器的IP地址。如果您的ActiveMQ服务器端口不是8161,则将URL中的端口号更改为您的端口号。 -
重启一下ActiveWQ服务。
service activemq restart
三、在Ubuntu上部署NTP时间服务器
在Ubuntu上部署NTP时间服务器可以通过以下步骤完成:
3.1. 安装NTP软件包
在Ubuntu终端中运行以下命令来安装NTP软件包:
sudo apt-get update
sudo apt-get install ntp
3.2. 配置NTP服务器
编辑NTP配置文件 /etc/ntp.conf
:
sudo vim /etc/ntp.conf
使用编辑器添加以下内容:
server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org
server 3.pool.ntp.org
这会将4个NTP服务器地址添加到配置文件中,以便Ubuntu可以从它们中的任何一个获取时间同步。
3.3. 启动NTP服务器
运行以下命令启动NTP服务器:
sudo systemctl start ntp
3.4. 设置NTP服务器开机自启
使用以下命令将NTP服务器设置为开机自启:
sudo systemctl enable ntp
现在,NTP服务器将在每次系统启动时自动启动。
3.5. 验证NTP服务器启动状态
使用以下命令检查NTP服务器是否正在运行并正常工作:
sudo systemctl status ntp
输出结果应该类似于:
● ntp.service - Network Time Service
Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-04-25 10:27:53 CST; 4h 57min ago
Docs: man:ntpd(8)
Main PID: 5063 (ntpd)
Tasks: 2 (limit: 9406)
Memory: 2.1M
CGroup: /system.slice/ntp.service
└─5063 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 113:117
输出中的 Active: active (running)
表示NTP服务器正在运行。
还可以使用以下命令检查系统时钟与NTP服务器时钟之间的偏差:
ntpq -p
输出结果应该类似于:
remote refid st t when poll reach delay offset jitter
==============================================================================
0.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
1.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
2.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
3.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
如果所有服务器状态都为 “reach”,并且 offset
和 jitter
值都不为 0,则表示系统时钟与NTP服务器之间的偏差存在,可以尝试等待几分钟,然后再次运行 ntpq -p
命令来查看结果。
完成以上步骤后,Ubuntu系统将作为NTP时间服务器运行,并在每次系统启动时自动启动。
四、在Ubuntu上部署NGINX
4.1. 安装NGINX软件包
在Ubuntu终端中运行以下命令来安装NGINX软件包:
sudo apt-get update
sudo apt-get install nginx
4.2. 启动NGINX服务器
运行以下命令启动NGINX服务器:
sudo systemctl start nginx
4.3. 设置NGINX服务器开机自启
以下命令将NGINX服务器设置为开机自启:
sudo systemctl enable nginx
现在,NGINX服务器将在每次系统启动时自动启动。
4.4. 验证NGINX服务器启动状态
可以使用以下命令检查NGINX服务器是否正在运行并正常工作:
sudo systemctl status nginx
输出结果应该类似于:
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-04-25 10:33:52 CST; 5h 0min ago
Docs: man:nginx(8)
Main PID: 6835 (nginx)
Tasks: 5 (limit: 9406)
Memory: 8.0M
CGroup: /system.slice/nginx.service
├─6835 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
├─6836 nginx: worker process
├─6837 nginx: worker process
├─6838 nginx: worker process
└─6839 nginx: worker process
输出中的 Active: active (running)
表示NGINX服务器正在运行。
4.5. 配置NGINX服务器
可以通过编辑NGINX配置文件来配置NGINX服务器。默认配置文件位于 /etc/nginx/nginx.conf
。
完成以上步骤后,Ubuntu系统将运行NGINX服务器,并在每次系统启动时自动启动。
五、在Ubuntu上部署Redis
5.1 在Ubuntu上部署Redis,并开机自启
5.1.1. 安装Redis软件包
在Ubuntu终端中运行以下命令来安装Redis软件包:
sudo apt-get update
sudo apt-get install redis-server
5.1.2. 配置Redis使用密码
编辑Redis配置文件 /etc/redis/redis.conf
:
sudo vim /etc/redis/redis.conf
找到以下行并取消注释:
# requirepass foobared
将 foobared
更改为你要使用的密码。例如:
requirepass YourPasswordHere
保存并关闭文件。
5.1.3. 启动Redis服务器
运行以下命令启动Redis服务器:
sudo systemctl start redis-server
5.1.4. 设置Redis服务器开机自启
可以使用以下命令将Redis服务器设置为开机自启:
sudo systemctl enable redis-server
现在,Redis服务器将在每次系统启动时自动启动。
5.1.5. 验证Redis服务器
使用以下命令检查Redis服务器是否正在运行并正常工作:
redis-cli ping
如果Redis服务器正在运行,则输出应为:
PONG
5.1.6. 访问Redis服务器
可以使用以下命令以密码身份登录Redis服务器:
redis-cli -a YourPasswordHere
将 YourPasswordHere
更改为您在步骤2中设置的密码。
现在,已经成功地在Ubuntu上部署了Redis服务器,并将其配置为使用密码,并在每次系统启动时自动启动。
5.1.7. 验证Redis服务器启动状态
可以使用以下命令检查NGINX服务器是否正在运行并正常工作:
sudo systemctl status redis
输出结果应该类似于:
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2023-04-26 00:36:24 CST; 7h left
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 1051 (redis-server)
Tasks: 4 (limit: 9406)
Memory: 4.5M
CGroup: /system.slice/redis-server.service
└─1051 /usr/bin/redis-server 0.0.0.0:6379
5.2 把Redis设置为可以远程访问
默认情况下,Redis只能在本地主机上进行访问。如果要从其他计算机远程访问Redis服务器,则需要在Redis配置文件中进行以下更改:
-
打开Redis配置文件
/etc/redis/redis.conf
。sudo vim /etc/redis/redis.conf
-
找到以下行:
bind 127.0.0.1
-
将
127.0.0.1
更改为您的Redis服务器的IP地址或0.0.0.0
,以允许任何远程计算机连接到Redis服务器。例如:bind 0.0.0.0
-
保存并关闭文件。
现在,Redis服务器已配置为允许从任何远程计算机访问。但是,出于安全原因,建议使用防火墙规则限制远程访问的IP地址。
如果想在其他计算机上使用
redis-cli
进行远程连接,可以使用以下命令:redis-cli -h YourRedisServerIP -p YourRedisServerPort -a YourRedisServerPassword
其中
YourRedisServerIP
是你的Redis服务器的IP地址,YourRedisServerPort
是你的Redis服务器的端口号(默认为6379),YourRedisServerPassword
是你在配置Redis服务器时设置的密码。 -
重启一下ActiveWQ服务。
service redis restart