Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-UPF
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
OpenXG-UPF
Commits
4b5c929c
Commit
4b5c929c
authored
Aug 11, 2021
by
wangyongshou
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
modify build, install, run
parent
15bb44b7
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
216 additions
and
30 deletions
+216
-30
scripts/build_upf.sh
scripts/build_upf.sh
+80
-18
scripts/install_upf.sh
scripts/install_upf.sh
+99
-10
scripts/new_run_upf.sh
scripts/new_run_upf.sh
+37
-2
No files found.
scripts/build_upf.sh
View file @
4b5c929c
...
...
@@ -18,10 +18,18 @@ N4PATH="$base/install/n4"
UPFINSTALL
=
"
$base
/install/upf"
UPF_PKG
=
"upf.tar.gz"
OS_ID
=
""
OS_VERSION_ID
=
""
OS_KERNEL_VERSION
=
""
OS_ARCH
=
""
OS_SYS_TYPE
=
""
function
pre_create
(){
if
[
!
-d
$VPPINSTALL
]
;
then
sudo
mkdir
-p
$VPPINSTALL
mkdir
-p
$VPPINSTALL
fi
#if [ ! -d $UPFINSTALL ] ; then
...
...
@@ -32,36 +40,37 @@ function pre_create(){
mkdir
-p
$UPFINSTALL
if
[
!
-d
$UPFINSTALL
/pkg
]
;
then
sudo
mkdir
-p
$UPFINSTALL
/pkg
mkdir
-p
$UPFINSTALL
/pkg
fi
if
[
!
-d
$UPFINSTALL
/etc
]
;
then
sudo
mkdir
-p
$UPFINSTALL
/etc
mkdir
-p
$UPFINSTALL
/etc
fi
if
[
!
-d
$UPFINSTALL
/scripts
]
;
then
sudo
mkdir
-p
$UPFINSTALL
/scripts
mkdir
-p
$UPFINSTALL
/scripts
fi
if
[
!
-d
$UPFINSTALL
/tools
]
;
then
sudo
mkdir
-p
$UPFINSTALL
/tools
mkdir
-p
$UPFINSTALL
/tools
fi
}
function
config_file
(){
#scripts
cp
-f
$current
/dpdk-devbind.py
$UPFINSTALL
/scripts
cp
-f
$current
/install_upf.sh
$UPFINSTALL
/scripts
cp
-f
$current
/new_run_upf.sh
$UPFINSTALL
/scripts
#etc
cp
-f
$configure
/template/n4.template
$UPFINSTALL
/etc
#cp -f $configure/template/n4_config.yaml $UPFINSTALL/etc
cp
-f
$configure
/template/startup_debug.template
$UPFINSTALL
/etc
#cp -f $configure/template/vppe.conf $UPFINSTALL/etc
cp
-f
$configure
/upf.conf
$UPFINSTALL
/etc
#tools
cp
-f
/sbin/ethtool
$UPFINSTALL
/tools
cp
-f
$base
/plugin/interreput
$UPFINSTALL
/tools
...
...
@@ -74,6 +83,9 @@ function make_pkg(){
cd
..
}
function
pre_install
(){
if
[
$OS_SYS_TYPE
==
"ubuntu"
]
;
then
sudo
apt-get
install
sqlite
sudo
apt-get
install
net-tools
sudo
apt-get
install
ethtool
...
...
@@ -83,6 +95,14 @@ function pre_install(){
sudo
apt-get
install
dpkg-buildpackage
cd
$base
/src/vppe
$base
/src/vppe/pre_install.sh
else
echo
"pre install don't know system
$OS_SYS_TYPE
"
exit
0
fi
return
0
}
function
vpp
(){
...
...
@@ -106,8 +126,8 @@ function make_vpp_package()
if
[
$1
=
"debug"
]
then
cd
$VPPPATH
;
./pre_install.sh
>
/dev/null 2>&1
;
echo
"pre install vppe"
#
./pre_install.sh > /dev/null 2>&1;
#
echo "pre install vppe"
make rebuild
>
/dev/null 2>&1
;
echo
"build vppe"
make pkg-deb-debug
>
/dev/null 2>&1
;
...
...
@@ -116,7 +136,7 @@ function make_vpp_package()
elif
[
$1
=
"release"
]
then
cd
$VPPPATH
;
./pre_install.sh
>
/dev/null 2>&1
;
#
./pre_install.sh > /dev/null 2>&1;
make rebuild-release
>
/dev/null 2>&1
;
make pkg-deb
>
/dev/null 2>&1
;
cd
..
...
...
@@ -213,6 +233,45 @@ function clear_all()
rm
-rf
$VPPPATH
/build/external/downloads/
*
}
function
check_system
()
{
echo
"check_system..."
if
[
!
-f
/etc/os-release
]
;
then
echo
"ERROR /etc/os-release is not exist....."
exit
0
fi
OS_ID
=
$(
echo
`
grep
'^ID='
/etc/os-release |
cut
-f2-
-d
=
|
sed
-e
's/\"//g'
`
)
OS_VERSION_ID
=
$(
echo
`
grep
'^VERSION_ID='
/etc/os-release |
cut
-f2-
-d
=
|
sed
-e
's/\"//g'
`
)
OS_KERNEL_VERSION
=
$(
echo
`
uname
-r
`
)
OS_ARCH
=
$(
echo
`
uname
--m
`
)
#ubuntu
if
[
$OS_ID
==
"ubuntu"
-a
$OS_VERSION_ID
==
"18.04"
-a
$OS_KERNEL_VERSION
==
"5.4.0-80-generic"
-a
$OS_ARCH
==
"x86_64"
]
;
then
echo
$OS_ID
echo
$OS_VERSION_ID
echo
$OS_KERNEL_VERSION
echo
$OS_ARCH
OS_SYS_TYPE
=
"ubuntu"
else
echo
"don't know system"
echo
$OS_ID
echo
$OS_VERSION_ID
echo
$OS_KERNEL_VERSION
echo
$OS_ARCH
echo
"build exit..."
exit
0
fi
return
0
}
function
help
()
{
echo
" "
...
...
@@ -234,6 +293,8 @@ function main() {
exit
fi
check_system
until
[
-z
"
$1
"
]
;
do
case
"
$1
"
in
--all
)
...
...
@@ -252,6 +313,7 @@ function main() {
shift
;;
--upf-dp
)
pre_install
pre_create
config_file
make_n4_package
...
...
scripts/install_upf.sh
View file @
4b5c929c
...
...
@@ -10,25 +10,36 @@
current
=
"
$PWD
"
base
=
$(
dirname
"
$PWD
"
)
ROOT_PATH
=
/opt/5gc/
test
ROOT_PATH
=
/opt/5gc/
upf
VPP_PRO
=
"vpp"
N4_PRO
=
"main"
OS_ID
=
""
OS_VERSION_ID
=
""
OS_KERNEL_VERSION
=
""
OS_ARCH
=
""
OS_SYS_TYPE
=
""
OS_CPU_NUM
=
0
OS_FREE
=
0
function
pre_install
()
{
if
[
!
-d
$ROOT_PATH
]
;
then
sudo
mkdir
-p
$ROOT_PATH
mkdir
-p
$ROOT_PATH
fi
if
[
!
-d
$ROOT_PATH
/bin
]
;
then
sudo
mkdir
-p
$ROOT_PATH
/bin
mkdir
-p
$ROOT_PATH
/bin
fi
cp
-rf
$base
/scripts
$ROOT_PATH
cp
-rf
$base
/etc
$ROOT_PATH
cp
-rf
$base
/tools
$ROOT_PATH
#cp -rf $base/tools/ethtool /sbin/
#cp -rf $base/tools/ethtool /sbin/
}
function
install_bupt_n4
()
...
...
@@ -50,18 +61,18 @@ function install_bupt_vppe ()
#delete vppe process
#unpack
sudo
tar
-zxvf
$base
/pkg/bupt_vppe.tar.gz
-C
$base
/pkg
>
/dev/null 2>&1
;
tar
-zxvf
$base
/pkg/bupt_vppe.tar.gz
-C
$base
/pkg
>
/dev/null 2>&1
;
sleep
1
;
#install
echo
"install bupt_vppe start..."
sudo
dpkg
-i
$base
/pkg/vppe_install/
*
.deb
>
/dev/null 2>&1
;
s
udo
s
ystemctl stop vpp
>
/dev/null 2>&1
;
s
udo
s
ystemctl disable vpp
>
/dev/null 2>&1
;
dpkg
-i
$base
/pkg/vppe_install/
*
.deb
>
/dev/null 2>&1
;
systemctl stop vpp
>
/dev/null 2>&1
;
systemctl disable vpp
>
/dev/null 2>&1
;
#rm install package
sudo
rm
-rf
$base
/pkg/vppe_install
;
sudo
rm
-rf
$base
/pkg/bupt_vppe.tar.gz
;
rm
-rf
$base
/pkg/vppe_install
;
rm
-rf
$base
/pkg/bupt_vppe.tar.gz
;
cp
-f
/usr/bin/vpp /
$ROOT_PATH
/bin
;
...
...
@@ -90,6 +101,80 @@ function close_upf()
fi
}
function
system_requirement
()
{
echo
"Minimum system requirements"
echo
""
echo
"ubuntu"
echo
"18.04"
echo
"5.4.0-80-generic"
echo
"x86_64"
echo
"cpu num: 16"
echo
"free total mem: 14G"
echo
""
echo
""
return
0
}
function
check_system
()
{
echo
"check system config "
echo
""
if
[
!
-f
/etc/os-release
]
;
then
echo
"ERROR /etc/os-release is not exist....."
exit
0
fi
OS_ID
=
$(
echo
`
grep
'^ID='
/etc/os-release |
cut
-f2-
-d
=
|
sed
-e
's/\"//g'
`
)
OS_VERSION_ID
=
$(
echo
`
grep
'^VERSION_ID='
/etc/os-release |
cut
-f2-
-d
=
|
sed
-e
's/\"//g'
`
)
OS_KERNEL_VERSION
=
$(
echo
`
uname
-r
`
)
OS_ARCH
=
$(
echo
`
uname
--m
`
)
OS_CPU_NUM_T
=
$(
echo
`
cat
/proc/cpuinfo|
grep
"processor"
|
wc
-l
`
)
OS_FREE_T
=
$(
echo
`
awk
'($1 == "MemTotal:"){print $2/1048576}'
/proc/meminfo
`
)
OS_CPU_NUM
=
$(
echo
`
echo
$OS_CPU_NUM_T
|
awk
'{print int($0)}'
`
)
OS_FREE
=
$(
echo
`
echo
$OS_FREE_T
|
awk
'{print int($0)}'
`
)
#ubuntu
if
[
$OS_ID
==
"ubuntu"
-a
$OS_VERSION_ID
==
"18.04"
-a
$OS_KERNEL_VERSION
==
"5.4.0-80-generic"
-a
$OS_ARCH
==
"x86_64"
-a
$OS_CPU_NUM
-ge
16
-a
$OS_FREE
-ge
14
]
;
then
echo
$OS_ID
echo
$OS_VERSION_ID
echo
$OS_KERNEL_VERSION
echo
$OS_ARCH
echo
"cpu num:
$OS_CPU_NUM
"
echo
"free mem:
$OS_FREE
"
OS_SYS_TYPE
=
"ubuntu"
else
echo
$OS_ID
echo
$OS_VERSION_ID
echo
$OS_KERNEL_VERSION
echo
$OS_ARCH
echo
$OS_CPU_NUM
echo
$OS_FREE
echo
"don't support system config"
echo
""
system_requirement
echo
" exit..."
exit
0
fi
return
0
}
function
help
()
{
...
...
@@ -107,6 +192,10 @@ function main() {
exit
fi
#check system
check_system
until
[
-z
"
$1
"
]
;
do
case
"
$1
"
in
--upf
)
...
...
scripts/new_run_upf.sh
View file @
4b5c929c
...
...
@@ -129,12 +129,12 @@ function check_system()
}
function
install_driver
()
{
sudo
modprobe vfio-pci
;
modprobe vfio-pci
;
insmod_result
=
$?
exec_result
$insmod_result
echo
Y |
sudo
tee
/sys/module/vfio/parameters/enable_unsafe_noiommu_mode
echo
Y |
tee
/sys/module/vfio/parameters/enable_unsafe_noiommu_mode
#$base/tools/interreput -i $CPUNUMBER
set_cpu_interrupt
...
...
@@ -433,6 +433,40 @@ function read_config() {
echo
"UPF_N4_LOGSIZE:
$UPF_N4_LOGSIZE
"
}
function
chk_net
()
{
echo
"check net ..."
echo
""
ping_gnb_n3
=
$(
echo
`
/usr/bin/vppctl
-s
/run/vpp/cli.sock ping
$UPF_N3_GW
source
if_n3 repeat 5
`
)
loss
=
"*100% packet loss*"
if
[[
${
ping_gnb_n3
}
==
${
loss
}
]]
;
then
echo
"n3 ping:
$UPF_N6_IP
ping
$UPF_N3_GW
"
echo
${
ping_gnb_n3
}
exit
0
fi
echo
"n3 ping succ:
$UPF_N6_IP
ping
$UPF_N3_GW
"
echo
${
ping_gnb_n3
}
ping_dn_n6
=
$(
echo
`
/usr/bin/vppctl
-s
/run/vpp/cli.sock ping
$UPF_N6_GW
source
if_n6 repeat 5
`
)
if
[[
${
ping_dn_n6
}
==
${
loss
}
]]
;
then
echo
"warning: n6 ping:
$UPF_N6_IP
ping
$UPF_N6_GW
"
fi
echo
"n6 ping:
$UPF_N6_IP
ping
$UPF_N6_GW
"
echo
${
ping_dn_n6
}
echo
""
return
0
}
function
config_upf
()
{
install_driver
...
...
@@ -483,6 +517,7 @@ function main()
config_upf
start_vppe
sleep
20s
chk_net
start_n4
shift
;;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment