1
0

Merge branch 'main' into multi-tenant

This commit is contained in:
2024-09-25 17:09:04 +08:00
41 changed files with 468 additions and 13131 deletions

View File

@@ -1,51 +1,40 @@
server {
listen 4443 ssl;
listen [::]:4443 ssl;
server_name 0.0.0.0;
root /usr/local/omc/htdocs/front/;
index index.html index.htm;
server_name localhost;
# SSL
ssl_certificate /usr/local/omc/etc/certs/ca_cert.pem;
ssl_certificate_key /usr/local/omc/etc/certs/private_key.pem;
#ssl_certificate /usr/local/omc/etc/certs/tsa-omc.pem;
#ssl_certificate_key /usr/local/omc/etc/certs/tsa-omc_pri.pem;
listen 44080;
listen 44443;
listen [::]:44080;
listen [::]:44443;
server_name localhost;
# location /api/rest/securityManagement {
# proxy_pass http://127.0.0.1:5050;
# }
# location /api/rest/resourceManagement {
# proxy_pass http://127.0.0.1:5050;
# }
# location /api/rest/performanceManagement {
# proxy_pass http://127.0.0.1:5050;
# }
# location /api/rest/faultManagement {
# proxy_pass http://127.0.0.1:5050;
# }
# location /api/rest/aaaa/ {
# proxy_pass http://127.0.0.1:4040;
# }
location /api/rest/ {
proxy_pass http://127.0.0.1:3030;
}
client_max_body_size 100M;
keepalive_timeout 180s;
#access_log /var/log/nginx/host.access.log main;
# ssl_certificate /usr/local/omc/etc/certs/omc-server.crt;
# ssl_certificate_key /usr/local/omc/etc/certs/omc-server.key;
# ssl_client_certificate /usr/local/omc/etc/certs/omc-ca.crt;
# ssl_verify_client on;
# ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
# ssl_session_timeout 5m;
# ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
# ssl_prefer_server_ciphers on;
# OMC
location / {
try_files $uri $uri/ =404;
root /usr/local/omc/htdocs/front;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
}
server {
listen 8888 default_server;
listen [::]:8888 default_server;
root /usr/local/omc/htdocs/front/;
index index.html index.htm;
server_name localhost;
location /omc-api/ {
proxy_pass http://127.0.0.1:3030/;
proxy_http_version 1.1;
proxy_cache_bypass $http_upgrade;
proxy_pass http://127.0.0.1:33030/;
proxy_connect_timeout 180s;
proxy_send_timeout 180s;
proxy_read_timeout 180s;
proxy_cache_bypass $http_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
@@ -56,11 +45,27 @@ server {
proxy_set_header X-Forwarded-Port $server_port;
}
location / {
root /usr/local/omc/htdocs/front;
location /api/rest/ {
proxy_pass http://127.0.0.1:33030/api/rest/;
try_files $uri $uri/ /index.html;
index index.html index.htm;
proxy_cache_bypass $http_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
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;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}

View File

@@ -1,84 +0,0 @@
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 4096;
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
server {
listen 1080;
listen [::]:1080;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
# Settings for a TLS enabled server.
#
# server {
# listen 443 ssl http2;
# listen [::]:443 ssl http2;
# server_name _;
# root /usr/share/nginx/html;
#
# ssl_certificate "/etc/pki/nginx/server.crt";
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 10m;
# ssl_ciphers PROFILE=SYSTEM;
# ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
}

View File

@@ -1,11 +0,0 @@
[Service]
Type=forking
ExecStart=/usr/local/bin/kvdb-server /usr/local/etc/kvdb/kvdb.conf
ExecStopPost=
PIDFile=
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target

View File

@@ -10,73 +10,45 @@ Name: %{project_lname}
Summary: AGrandTech 5GC OMC
Version: 2.2408.1
Release: %{release_date}
Vendor: AGrandTech
URL: https://www.agrandtech.com/
Vendor: omc
URL: https://www.omc.com/
License: commercial
Group: Applications/Communications
#BuildRoot: $PWD/rpmoutput
%description
AGrandTech's 5GC OMC
5GC OMC
%prep
rm -rf ${RPM_BUILD_ROOT}/*
#rm -rf ${RPM_BUILD_ROOT}/lib
#rm -rf ${RPM_BUILD_ROOT}/usr
mkdir -p ${RPM_BUILD_ROOT}
cd ${RPM_BUILD_ROOT}
#mkdir -p usr/local/omc/
#mkdir -p usr/local/db/
#mkdir -p etc/nginx/conf.d
#mkdir -p lib/systemd/system/
#cd ${RPM_BUILD_DIR}
cp -rf ${RPM_BUILD_DIR}/* ${RPM_BUILD_ROOT}/
chmod +rx ${RPM_BUILD_ROOT}/usr/local/omc
chmod +rx ${RPM_BUILD_ROOT}/usr/local/omc/*
# chmod +rx ${RPM_BUILD_ROOT}/usr/local/db/bin/*
chmod +rx ${RPM_BUILD_ROOT}/usr/local/bin/*
chmod -R 755 ${RPM_BUILD_ROOT}/usr/local/omc/htdocs/front
chmod +x ${RPM_BUILD_ROOT}/usr/local/omc/htdocs/front
chmod +rx ${RPM_BUILD_ROOT}/usr/lib64/*
#cp -rf omc/.ssh ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/mmllog ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/mmlhome ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/bin ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/etc ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/htdocs ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/log ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/backup ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/upload ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/software ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/license ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf omc/database ${RPM_BUILD_ROOT}/usr/local/omc/
#cp -rf db/* ${RPM_BUILD_ROOT}/usr/local/db/
#cp -f nginx/omc.conf ${RPM_BUILD_ROOT}/etc/nginx/conf.d/
#cp -f systemd/restagent.service ${RPM_BUILD_ROOT}/lib/systemd/system/restagent.service
#cp -f systemd/crontask.service ${RPM_BUILD_ROOT}/lib/systemd/system/crontask.service
#cp -f systemd/sshsvc.service ${RPM_BUILD_ROOT}/lib/systemd/system/sshsvc.service
#cp -f systemd/captrace.service ${RPM_BUILD_ROOT}/lib/systemd/system/captrace.service
#cp -f systemd/kvdb.service ${RPM_BUILD_ROOT}/lib/systemd/system/kvdb.service
%build
#cd %{buildroot}/..
#make
# 安装完成后执行
%post
OmcRootDir=/usr/local/omc
DependsRootDir=${OmcRootDir}/depends
RedisBinDir=/usr/local/bin
RedisConfDir=/usr/local/etc/kvdb
OMCEtcDir=${OmcRootDir}/etc
FERootDir=${OmcRootDir}/htdocs/front
OMCRootDir=/usr/local/omc
OMCEtcDir=${OMCRootDir}/etc
FERootDir=${OMCRootDir}/htdocs/front
UsrLib64Dir=/usr/lib64
OmcBinDir=${OmcRootDir}/bin
OMCStaticDir=${OmcRootDir}/static
OMCBinDir=${OMCRootDir}/bin
OMCStaticDir=${OMCRootDir}/static
UsrLocalBinDir=/usr/local/bin
OmcDaemon=omcd
OMCDaemon=omcd
NginxEtcDir=/etc/nginx
CFileList="restconf.yaml crontask.yaml tasks.yaml sshsvc.yaml capconf.yaml omc.conf"
LogoFileList="zh_brand.png zh_icon.png en_brand.png en_icon.png"
echo -n "Stopping OMC service ... "
systemctl stop restagent.service
systemctl stop crontask.service
systemctl stop sshsvc.service
systemctl stop captrace.service
echo "done"
for CFile in ${CFileList}; do
if [ ! -e "${OMCEtcDir}/${CFile}" ]; then
cp -f ${OMCEtcDir}/default/${CFile} ${OMCEtcDir}
@@ -85,40 +57,16 @@ for CFile in ${CFileList}; do
cp -f ${OMCEtcDir}/default/${CFile} ${OMCEtcDir}
fi
done
# Check if install kvdb
if [ ! -e "${RedisBinDir}/kvdb-server" ]; then
cp -rf ${DependsRootDir}/kvdb/* /
chmod 755 ${RedisBinDir}/kvdb*
systemctl enable kvdb.service
fi
if [ ! -e "${RedisConfDir}/kvdb.conf" ]; then
cp ${RedisConfDir}/default/kvdb.conf ${RedisConfDir};
fi
sed -i 's/replica-read-only yes/replica-read-only no/g' ${RedisConfDir}/kvdb.conf
LINE="masterauth helloearth"
FILE="${RedisConfDir}/kvdb.conf"
if ! grep -qxF "$LINE" "$FILE"; then
# 如果不存在,将其添加到文件末尾
echo "$LINE" >> "$FILE"
fi
if [ ! -e "${FERootDir}/config.js" ]; then cp ${FERootDir}/default/config.js ${FERootDir}; fi
for LogoFile in ${LogoFileList}; do
if [ ! -e "${OMCStaticDir}/logo/${LogoFile}" ]; then
cp ${OMCStaticDir}/agt.d/logo/${LogoFile} ${OMCStaticDir}/logo;
fi
cp ${OMCStaticDir}/omc.d/logo/${LogoFile} ${OMCStaticDir}/logo;
fi
done
if ! id -u omc >/dev/null 2>&1 ; then useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; else echo "user omc exist"; fi
mkdir -p /opt/omc/ftp
mkdir -p /opt/omc/ftp/log
#chmod +rx /usr/local/omc
#chmod +rx /usr/local/omc/*
#chmod +rx /usr/local/db/bin/*
#chmod +rx /usr/local/bin/*
#chmod -R 755 /usr/local/omc/htdocs/front
cd ${UsrLib64Dir}
if [ ! -e libwireshark.so.15 ]; then ln -s libwireshark.so.15.0.12 libwireshark.so.15; fi
if [ ! -e libwireshark.so ]; then ln -s libwireshark.so.15.0.12 libwireshark.so; fi
@@ -127,12 +75,10 @@ if [ ! -e libwiretap.so ]; then ln -s libwiretap.so.12.0.12 libwiretap.so; fi
if [ ! -e libwsutil.so.13 ]; then ln -s libwsutil.so.13.1.0 libwsutil.so.13; fi
if [ ! -e libwsutil.so ]; then ln -s libwsutil.so.13.1.0 libwsutil.so; fi
cd ${UsrLocalBinDir}
if [ ! -e ${OmcDaemon} ]; then ln -s ${OmcBinDir}/omcsvc.sh ${OmcDaemon}; fi
# sed -i 's/listen 80;/listen 1080;/g' ${NginxEtcDir}/nginx.conf
# sed -i 's/listen \[::\]:80;/listen \[::\]:1080;/g' ${NginxEtcDir}/nginx.conf
if [ ! -e ${OMCDaemon} ]; then ln -s ${OMCBinDir}/omcsvc.sh ${OMCDaemon}; fi
# setting firewall
PortList="80 33030 443 33443 22222"
PortList="80 443 44080 44443 33030 22222"
for Port in ${PortList}; do
firewall-cmd --zone=public --add-port=${Port}/tcp --permanent
done
@@ -143,19 +89,29 @@ systemctl enable restagent.service
systemctl enable crontask.service
systemctl enable sshsvc.service
systemctl enable captrace.service
#systemctl enable kvdb.service
systemctl stop restagent.service
systemctl stop crontask.service
systemctl stop sshsvc.service
systemctl stop captrace.service
# systemctl stop nginx.service
systemctl stop kvdb.service
systemctl start kvdb.service
# systemctl start nginx.service
# read environment parameter and to do
if [ "$M_PARAM" = "install" -o "$M_PARAM" = "upgrade" ]; then
echo "M parameter: $M_PARAM"
if [ -n "$C_PARAM" ]; then
echo "C parameter: $C_PARAM"
${OMCRootDir}/bin/setomc.sh -m $M_PARAM -c $C_PARAM
else
${OMCRootDir}/bin/setomc.sh -m $M_PARAM
fi
# exit while failed to run setomc.sh
if [ $? -ne 0 ]; then
echo "setomc.sh execution failed. Exiting."
exit 1
fi
fi
echo -n "Starting OMC service ... "
systemctl start captrace.service
systemctl start sshsvc.service
systemctl start crontask.service
systemctl start restagent.service
echo "done"
# 卸载时执行
%postun
@@ -171,41 +127,34 @@ rm libwsutil.so
rm -f ${UsrLocalBinDir}/omcd
# setting firewall
PortList="80 33030 443 33443 22222"
PortList="80 443 44080 44443 33030 22222"
for Port in ${PortList}; do
firewall-cmd --zone=public --remove-port=${Port}/tcp --permanent
done
firewall-cmd --reload
if [ "$1" = "0" ] ; then
sudo systemctl stop restagent.service
sudo systemctl stop crontask.service
sudo systemctl stop sshsvc.service
sudo systemctl stop captrace.service
#sudo systemctl stop kvdb.service
#sudo systemctl stop nginx.service
#rm -rf /usr/local/omc
rm -rf /etc/nginx/conf.d/omc.conf
sudo systemctl disable restagent.service
sudo systemctl disable crontask.service
sudo systemctl disable sshsvc.service
sudo systemctl disable captrace.service
#sudo systemctl disable kvdb.service
sudo systemctl daemon-reload
sudo systemctl stop restagent.service
sudo systemctl stop crontask.service
sudo systemctl stop sshsvc.service
sudo systemctl stop captrace.service
#rm -rf /usr/local/omc
rm -rf /etc/nginx/conf.d/omc.conf
sudo systemctl disable restagent.service
sudo systemctl disable crontask.service
sudo systemctl disable sshsvc.service
sudo systemctl disable captrace.service
sudo systemctl daemon-reload
else
sudo systemctl daemon-reload
#sudo systemctl stop nginx.service
sudo systemctl stop restagent.service
sudo systemctl stop crontask.service
sudo systemctl stop sshsvc.service
sudo systemctl stop captrace.service
#sudo systemctl stop kvdb.service
#sudo systemctl start nginx.service
sudo systemctl start kvdb.service
sudo systemctl start crontask.service
sudo systemctl start sshsvc.service
sudo systemctl start captrace.service
sudo systemctl start restagent.service
sudo systemctl daemon-reload
sudo systemctl stop restagent.service
sudo systemctl stop crontask.service
sudo systemctl stop sshsvc.service
sudo systemctl stop captrace.service
sudo systemctl start crontask.service
sudo systemctl start sshsvc.service
sudo systemctl start captrace.service
sudo systemctl start restagent.service
fi
# 规定那些文件必须放入安装程序中,如果没有就报错
@@ -217,6 +166,7 @@ fi
/usr/local/omc/bin
/usr/local/omc/etc
/usr/local/omc/htdocs
# %exclude /usr/local/omc/htdocs/front/wiregasm/wiregasm.wasm.gz
/usr/local/omc/log
/usr/local/omc/backup
/usr/local/omc/upload
@@ -224,13 +174,11 @@ fi
/usr/local/omc/license
/usr/local/omc/database
/usr/local/omc/static
/usr/local/omc/depends
#/etc/nginx/conf.d/omc.conf
/lib/systemd/system/restagent.service
/lib/systemd/system/crontask.service
/lib/systemd/system/sshsvc.service
/lib/systemd/system/captrace.service
#/lib/systemd/system/kvdb.service
/usr/lib64/libwireshark.so.15.0.12
/usr/lib64/libwiretap.so.12.0.12
/usr/lib64/libwsutil.so.13.1.0