Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
power-node
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Odysseus
power-node
Commits
277b20a4
Commit
277b20a4
authored
May 29, 2024
by
duanjinfei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update db and msg resp
parent
5ab1fd93
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
67 additions
and
28 deletions
+67
-28
db.go
db/db.go
+9
-0
model_handler.go
largeModel/model_handler.go
+54
-27
start.go
nm/start.go
+4
-1
No files found.
db/db.go
View file @
277b20a4
...
@@ -22,6 +22,15 @@ func init() {
...
@@ -22,6 +22,15 @@ func init() {
log
.
Error
(
"Leveldb open file failed: "
,
err
)
log
.
Error
(
"Leveldb open file failed: "
,
err
)
}
}
modelKeys
=
make
(
map
[
string
]
bool
,
0
)
modelKeys
=
make
(
map
[
string
]
bool
,
0
)
iter
:=
dbInstance
.
NewIterator
(
nil
,
nil
)
defer
iter
.
Release
()
for
iter
.
Next
()
{
key
:=
iter
.
Key
()
modelKeys
[
string
(
key
)]
=
true
}
if
err
:=
iter
.
Error
();
err
!=
nil
{
log
.
Fatal
(
err
)
}
}
}
func
Put
(
key
string
,
value
any
)
error
{
func
Put
(
key
string
,
value
any
)
error
{
...
...
largeModel/model_handler.go
View file @
277b20a4
...
@@ -66,10 +66,11 @@ func (m *ModelHandler) MonitorModelInfo() {
...
@@ -66,10 +66,11 @@ func (m *ModelHandler) MonitorModelInfo() {
// continue
// continue
//}
//}
modelInfosResp
:=
resp
.
Data
modelInfosResp
:=
resp
.
Data
for
_
,
modelInfo
:=
range
modelInfosResp
{
for
i
,
modelInfo
:=
range
modelInfosResp
{
if
modelInfo
.
ImageName
==
""
{
if
modelInfo
.
ImageName
==
""
{
continue
continue
}
}
modelInfo
.
ImageName
=
fmt
.
Sprintf
(
"%s-%s"
,
modelInfo
.
ImageName
,
conf
.
GetConfig
()
.
OpSys
)
modelInfo
.
ImageName
=
fmt
.
Sprintf
(
"%s-%s"
,
modelInfo
.
ImageName
,
conf
.
GetConfig
()
.
OpSys
)
split
:=
strings
.
Split
(
modelInfo
.
ImageName
,
":"
)
split
:=
strings
.
Split
(
modelInfo
.
ImageName
,
":"
)
if
len
(
split
)
!=
2
{
if
len
(
split
)
!=
2
{
...
@@ -79,6 +80,19 @@ func (m *ModelHandler) MonitorModelInfo() {
...
@@ -79,6 +80,19 @@ func (m *ModelHandler) MonitorModelInfo() {
m
.
dockerOp
.
SignApi
[
modelInfo
.
ImageName
]
=
modelInfo
.
SignUrl
m
.
dockerOp
.
SignApi
[
modelInfo
.
ImageName
]
=
modelInfo
.
SignUrl
model
,
_
:=
db
.
GetModel
(
modelInfo
.
ImageName
)
model
,
_
:=
db
.
GetModel
(
modelInfo
.
ImageName
)
if
model
!=
nil
{
if
model
!=
nil
{
switch
i
{
case
0
:
model
.
IsInstalled
=
true
model
.
IsRunning
=
true
model
.
GpuSeq
=
0
case
1
:
model
.
IsInstalled
=
true
model
.
IsRunning
=
true
model
.
GpuSeq
=
1
default
:
model
.
IsInstalled
=
true
model
.
GpuSeq
=
999
}
model
.
UpdateFiled
(
modelInfo
)
model
.
UpdateFiled
(
modelInfo
)
err
:=
db
.
PutModel
(
modelInfo
.
ImageName
,
model
)
err
:=
db
.
PutModel
(
modelInfo
.
ImageName
,
model
)
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -87,6 +101,19 @@ func (m *ModelHandler) MonitorModelInfo() {
...
@@ -87,6 +101,19 @@ func (m *ModelHandler) MonitorModelInfo() {
}
}
log
.
WithField
(
"name"
,
modelInfo
.
ImageName
)
.
Info
(
"The image updated"
)
log
.
WithField
(
"name"
,
modelInfo
.
ImageName
)
.
Info
(
"The image updated"
)
}
else
{
}
else
{
switch
i
{
case
0
:
modelInfo
.
IsInstalled
=
true
modelInfo
.
IsRunning
=
true
modelInfo
.
GpuSeq
=
0
case
1
:
modelInfo
.
IsInstalled
=
true
modelInfo
.
IsRunning
=
true
modelInfo
.
GpuSeq
=
1
default
:
modelInfo
.
IsInstalled
=
true
modelInfo
.
GpuSeq
=
999
}
err
:=
db
.
PutModel
(
modelInfo
.
ImageName
,
modelInfo
)
err
:=
db
.
PutModel
(
modelInfo
.
ImageName
,
modelInfo
)
if
err
!=
nil
{
if
err
!=
nil
{
log
.
WithError
(
err
)
.
Error
(
"Put db error"
)
log
.
WithError
(
err
)
.
Error
(
"Put db error"
)
...
@@ -211,32 +238,32 @@ func (m *ModelHandler) ScanModelsResp() (*nodemanagerV2.ModelsInfo, error) {
...
@@ -211,32 +238,32 @@ func (m *ModelHandler) ScanModelsResp() (*nodemanagerV2.ModelsInfo, error) {
// log.Error("Get container failed")
// log.Error("Get container failed")
// return nil, fmt.Errorf("get containe failed")
// return nil, fmt.Errorf("get containe failed")
//}
//}
//
allModels, err := db.GetAllModels()
allModels
,
err
:=
db
.
GetAllModels
()
//
if err != nil {
if
err
!=
nil
{
//
log.WithError(err).Error("Get all models failed")
log
.
WithError
(
err
)
.
Error
(
"Get all models failed"
)
//
return nil, fmt.Errorf("get all models failed")
return
nil
,
fmt
.
Errorf
(
"get all models failed"
)
//
}
}
//
for _, model := range allModels {
for
_
,
model
:=
range
allModels
{
//
isExist := images[model.ImageName]
//
isExist := images[model.ImageName]
//
if !isExist {
//
if !isExist {
//
continue
//
continue
//
}
//
}
// diskSize, err := strconv.ParseInt(model.HardwareRequire.DiskSize, 10, 64)
if
model
.
IsInstalled
{
// if err != nil {
diskSize
,
err
:=
strconv
.
ParseInt
(
model
.
HardwareRequire
.
DiskSize
,
10
,
64
)
// continue
if
err
!=
nil
{
// }
continue
// installedModels = append(installedModels, &nodemanagerV2.InstalledModel{ModelId: strconv.FormatUint(model.TaskId, 10), DiskSize: diskSize, InstalledTime: model.SetupTime, LastRunTime: model.LastRunTime})
}
//
installedModels
=
append
(
installedModels
,
&
nodemanagerV2
.
InstalledModel
{
ModelId
:
strconv
.
FormatUint
(
model
.
TaskId
,
10
),
DiskSize
:
diskSize
,
InstalledTime
:
model
.
SetupTime
,
LastRunTime
:
model
.
LastRunTime
})
// containerIsExist := false
}
//
for _, container := range containerList {
//
for _, container := range containerList {
//
if model.ImageName == container.Image {
//
if model.ImageName == container.Image {
//
containerIsExist = true
//
containerIsExist = true
//
}
//
}
//
}
//
}
// if containerIsExist
{
if
model
.
IsRunning
{
//
runningModels = append(runningModels, &nodemanagerV2.RunningModel{ModelId: strconv.FormatUint(model.TaskId, 10), GpuSeq: model.GpuSeq, GpuRam: model.RunningMem, StartedTime: model.LastRunTime, LastWorkTime: model.LastWorkTime, TotalRunCount: model.TotalRunCount, ExecTime: model.EstimatExeTime})
runningModels
=
append
(
runningModels
,
&
nodemanagerV2
.
RunningModel
{
ModelId
:
strconv
.
FormatUint
(
model
.
TaskId
,
10
),
GpuSeq
:
model
.
GpuSeq
,
GpuRam
:
model
.
RunningMem
,
StartedTime
:
model
.
LastRunTime
,
LastWorkTime
:
model
.
LastWorkTime
,
TotalRunCount
:
model
.
TotalRunCount
,
ExecTime
:
model
.
EstimatExeTime
})
//
}
}
//
}
}
res
:=
&
nodemanagerV2
.
ModelsInfo
{
res
:=
&
nodemanagerV2
.
ModelsInfo
{
InstalledModels
:
installedModels
,
InstalledModels
:
installedModels
,
RunningModels
:
runningModels
,
RunningModels
:
runningModels
,
...
...
nm/start.go
View file @
277b20a4
...
@@ -42,7 +42,10 @@ func StartMonitor() {
...
@@ -42,7 +42,10 @@ func StartMonitor() {
go
monitorNm
.
monitorNodeManagerSeed
()
go
monitorNm
.
monitorNodeManagerSeed
()
log
.
WithField
(
"func"
,
"monitorNodeManagerSeed"
)
.
Info
(
"--------------------Start monitorNm--------------------"
)
log
.
WithField
(
"func"
,
"monitorNodeManagerSeed"
)
.
Info
(
"--------------------Start monitorNm--------------------"
)
for
!
monitorNm
.
IsInit
&&
!
modelHandler
.
IsInit
{
for
{
if
monitorNm
.
IsInit
&&
modelHandler
.
IsInit
{
break
}
time
.
Sleep
(
time
.
Second
*
3
)
time
.
Sleep
(
time
.
Second
*
3
)
}
}
...
...
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