AIoTedge产品使用手册-安装部署 【软件部署(离线)】

离线部署所需软件以及使用版本:

序号软件使用版本
1java11.0.24
2golang1.18.1
3nginx1.18
4Nodejs21.7.3
5postgresql14

离线部署所需命令:

序号命令
1vi
2dmidecode

💡 注意

离线部署使用所需软件如果不使用文档对应版本可能会导致对应依赖版本不同,请自行解决。

1、获取镜像文件

💡 提示

联系产品相关人员获取镜像文件以及离线依赖包。

💡 提示

文档使用环境的架构为AMD64(x86),使用系统为ubuntu22.04server。

‼️ 特别注意

文档中所有使用的命令需要自行安装,请自行验证是否有相关软件和依赖。

2、安装依赖软件

2-1、安装jdk

离线包:

jdk-11.0.24_linux-x64_bin.tar.gz

💡 注意

请按照文档操作正确上传jdk离线包至指定路径,如果上传为其他路径则需要手动修改JAVA_HOME。

mkdir /usr/lib/jvm/				#创建jdk存放目录
#创建jdk存放目录后 需要将jdk离线包上传至该路径
cd /usr/lib/jvm
tar -xvf /usr/lib/jvm/jdk-11.0.24_linux-x64_bin.tar.gz #解压
cat >> /etc/profile <<EOF
#jdk
export JAVA_HOME=/usr/lib/jvm/jdk-11.0.24
export CLASSPATH=\$:CLASSPATH:\$JAVA_HOME/lib
export PATH=\$PATH:\$JAVA_HOME/bin
EOF
source /etc/profile		#使配置生效
java -version					#打印当前java版本 测试是否成功安装

成功安装jdk后显示:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-2、安装golang

离线包:

go1.18.1.linux-amd64.tar.gz

💡 提示

请按照文档操作正确上传golang离线包至指定路径,如果上传为其他路径则需要手动修改GOPATH。

mkdir /usr/lib/golang/				#创建golang存放目录
#创建golang存放目录后 需要将golang离线包上传至该路径
cd /usr/lib/golang
tar -xvf /usr/lib/golang/go1.18.1.linux-amd64.tar.gz #解压
cat >> /etc/profile <<EOF
#golang
export GOPATH=/usr/lib/golang/go
export PATH=\$PATH:\$GOPATH/bin
EOF
source /etc/profile		#使配置生效
go version						##打印当前golang版本 测试是否成功安装

成功安装golang后显示:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-3、安装Nodejs

离线包:

node-v21.7.3-linux-x64.tar

💡 提示

请按照文档操作正确上传Nodejs离线包至指定路径,如果上传为其他路径则需要手动修改命令。

mkdir /usr/lib/Nodejs/				#创建Nodejs存放目录
#创建Nodejs存放目录后 需要将Nodejs离线包上传至该路径
cd /usr/lib/Nodejs/
tar -xvf /usr/lib/Nodejs/node-v21.7.3-linux-x64.tar #解压
cd /usr/lib/Nodejs							#切换到解压目录
mv node-v21.7.3-linux-x64 node	#更改目录名称为node 方便编辑
ln -sf /usr/lib/Nodejs/node/bin/node /usr/bin/node	#node软连接
ln -sf /usr/lib/Nodejs/node/bin/npm /usr/bin/npm		#npm软连接
node -v
npm -v

成功安装Nodejs后显示:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-4、安装nginx

2-4-1、解压nginx

💡 提示

将nginx离线包下载到对应路径后按照命令解压。

nginx离线安装包:

nginx_install.tar

mkdir -p /temp/nginx	#创建解压目录
#创建nginx解压目录后 需要将nginx离线安装包上传至该路径
cd /temp/nginx				#切换到存放目录
tar -xvf nginx_install.tar #解压

2-4-2、安装nginx

💡 提示

将离线安装包解压到对应目录后执行该步骤。

‼️ 特别注意

安装nginx需要按照文章指定安装顺序安装。

cd /temp/nginx
dpkg -i libmaxminddb0_1.5.2-1build2_amd64.deb
dpkg -i fonts-dejavu-core_2.37-2build1_all.deb
dpkg -i fontconfig-config_2.13.1-4.2ubuntu5_all.deb
dpkg -i libdeflate0_1.10-2_amd64.deb
dpkg -i libfontconfig1_2.13.1-4.2ubuntu5_amd64.deb
dpkg -i libjpeg-turbo8_2.1.2-0ubuntu1_amd64.deb
dpkg -i libjpeg8_8c-2ubuntu10_amd64.deb
dpkg -i	libjbig0_2.1-3.1ubuntu0.22.04.1_amd64.deb
dpkg -i libwebp7_1.2.2-2ubuntu0.22.04.2_amd64.deb
dpkg -i libtiff5_4.3.0-6ubuntu0.10_amd64.deb
dpkg -i libxpm4_1%3a3.5.12-1ubuntu0.22.04.2_amd64.deb
dpkg -i libgd3_2.3.0-2ubuntu2_amd64.deb
dpkg -i nginx-common_1.18.0-6ubuntu14.5_all.deb
dpkg -i libnginx-mod-http-geoip2_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libnginx-mod-http-image-filter_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libxslt1.1_1.1.34-4ubuntu0.22.04.1_amd64.deb
dpkg -i libnginx-mod-http-image-filter_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libxslt1.1_1.1.34-4ubuntu0.22.04.1_amd64.deb
dpkg -i libnginx-mod-http-xslt-filter_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libnginx-mod-mail_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libnginx-mod-stream_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i libnginx-mod-stream-geoip2_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i nginx-core_1.18.0-6ubuntu14.5_amd64.deb
dpkg -i nginx_1.18.0-6ubuntu14.5_amd64.deb

2-4-3、配置nginx

💡 提示

完成安装后还需要配置nginx开机启动以及启动nginx。

systemctl enable nginx		#允许开机启动nginx
systemctl start nginx			#启动nginx
systemctl status nginx		#查看nginx服务状态
systemctl stop nginx			#关闭nginx

如图所示启动成功:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-4-4、测试nginx是否启动

💡 提示

打开浏览器,访问当前配置服务器ip即可。

正常打开界面如图:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-5、安装postgresql+timescaledb

2-5-1、安装postgresql

2-5-1-1、解压postgresql安装包

离线安装包:

postgresql_depend.tar

💡 提示

请按照文档操作正确上传postgresql离线安装包至指定路径,如果上传为其他路径则需要手动修改命令。

mkdir /temp/pgsql			#创建postgresql依赖存放目录
#创建postgresql依赖存放目录后 需要将postgresql离线依赖包上传至该路径
cd /temp/pgsql				#切换到存放目录
tar -xvf postgresql_depend.tar	#解压

2-5-1-2、安装postgresql

‼️ 特别注意

安装数据库需要按照文章指定安装顺序安装。

cd /temp/pgsql
dpkg -i locales_2.35-0ubuntu3.8_all.deb
dpkg -i	logrotate_3.19.0-1ubuntu1.1_amd64.deb
dpkg -i	libcommon-sense-perl_3.75-2build1_amd64.deb
dpkg -i libjson-perl_4.04000-1_all.deb
dpkg -i	libtypes-serialiser-perl_1.01-1_all.deb
dpkg -i	libjson-xs-perl_4.030-1build3_amd64.deb
dpkg -i libllvm14_1%3a14.0.0-1ubuntu1.1_amd64.deb
dpkg -i libpq5_14.13-0ubuntu0.22.04.1_amd64.deb
dpkg -i libsensors-config_1%3a3.6.0-7ubuntu1_all.deb
dpkg -i libsensors5_1%3a3.6.0-7ubuntu1_amd64.deb
dpkg -i libxslt1.1_1.1.34-4ubuntu0.22.04.1_amd64.deb
dpkg -i postgresql-client-common_238_all.deb
dpkg -i postgresql-client-14_14.13-0ubuntu0.22.04.1_amd64.deb
dpkg -i ssl-cert_1.1.2_all.deb
dpkg -i postgresql-common_238_all.deb
dpkg -i postgresql-14_14.13-0ubuntu0.22.04.1_amd64.deb
dpkg -i sysstat_12.5.2-2ubuntu0.2_amd64.deb

2-5-1-3、添加环境变量数据库路径

💡 提示

添加环境变量保证可以使用psql命令。

cat >> /etc/profile <<EOF
#pg_config
export PGHOST=localhost
EOF
source /etc/profile

2-5-1-4、配置数据库服务

systemctl enable postgresql		#允许数据库服务器开机启动
systemctl start postgresql		#启动数据库服务
systemctl status postgresql		#查看数据库服务状态

如图展示数据库服务启动成功:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

2-5-2、安装timescaledb

2-5-2-1、解压timescaledb安装包

离线安装包:

timescaledb_depend.tar

💡 提示

请按照文档操作正确上传timescaledb离线安装包至指定路径,如果上传为其他路径则需要手动修改命令。

mkdir /temp/timedb		#创建postgresql依赖存放目录
#创建postgresql依赖存放目录后 需要将postgresql离线依赖包上传至该路径
cd /temp/timedb				#切换到存放目录
tar -xvf timescaledb_depend.tar	#解压

2-5-2-2、安装timescaledb

‼️ 特别注意

安装数据库需要按照文章指定安装顺序安装。

dpkg -i timescaledb-2-loader-postgresql-14_2.16.1~ubuntu22.04_amd64.deb
dpkg -i timescaledb-2-postgresql-14_2.16.1~ubuntu22.04_amd64.deb
dpkg -i timescaledb-tools_0.16.0~ubuntu22.04_amd64.deb
dpkg -i timescaledb-toolkit-postgresql-14_1%3a1.18.0~ubuntu22.04_amd64.deb

2-5-2-3、修改timescaledb相关配置

sed -i  "1a\shared_preload_libraries = 'timescaledb'"   /etc/postgresql/14/main/postgresql.conf
sed -i "s/#listen_addresses = 'localhost'/listen_addresses = '*'/" /etc/postgresql/14/main/postgresql.conf
sed -i  '$a\host all all 0.0.0.0/0 md5' /etc/postgresql/14/main/pg_hba.conf
sed -i  '$a\hostssl all all 0.0.0.0/0 md5' /etc/postgresql/14/main/pg_hba.conf

2-5-2-4、重启数据库服务

systemctl restart postgresql	#重启服务使配置生效

3、安装并启动AIoTedge

💡 提示

联系产品相关人员获取部署包。

3-1、调整部署包

3-1-1、解压部署包

cd /
#需要将部署包上传至该路径
tar -xvf _workspace_offline.tar	#解压
mv /_workspace /app							#修改部署包名称
cd /app
ll			#查看是否正常解压部署包

如图中所示解压成功:

AIoTedge产品使用手册-安装部署 【软件部署(离线)】

3-1-2、调整配置

cd /app
chmod +x ./cleanlog.sh	#添加脚本执行权限
chmod +x ./start.sh			#添加脚本执行权限
cd /etc/nginx/					#切换到nginx服务配置目录
mv ./nginx.conf nginx.conf_bak	#备份原来的nginx.conf
cp /app/nginx.conf /etc/nginx/		#复制nginx配置文件
mv /app/tkedge.service /etc/systemd/system/tkedge.service	#配置服务启动文件
systemctl enable tkedge	#添加产品启动服务

3-1-3、启动AIoTedge

💡 提示

这里将重启命令视作启动服务,首次启动服务时需要初始化数据库,请耐心等待。

systemctl restart nginx		#重启前端使配置生效
systemctl restart tkedge  #重启服务

💡 提示

如果需要判断服务是否正常启动可以使用这个命令。

journalctl -u tkedge -n500 -f

4、激活并访问边端

此处为语雀内容卡片,点击链接查看:https://yunteng.yuque.com/to2an3/aiotedge-v1xdocs/bfki97l0rsls1erf

附录:

💡 注意

如果部署服务后恢复出厂设置报错,请按照该解决方式解决:

此处为语雀内容卡片,点击链接查看:https://yunteng.yuque.com/to2an3/aiotedge-v1xdocs/mfg6zuaepiedolnz#BVY19

💡 注意

环境可以正常运行后可以删除/temp目录。