forked from TrueCloudLab/frostfs-node
[#220] cmd/neofs-node: Support new configuration of storage components
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
e758c246b7
commit
cd2228cd99
2 changed files with 35 additions and 6 deletions
|
@ -22,7 +22,7 @@ import (
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/bucket"
|
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/bucket"
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/bucket/fsbucket"
|
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/bucket/fsbucket"
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/engine"
|
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/engine"
|
||||||
meta "github.com/nspcc-dev/neofs-node/pkg/local_object_storage/metabase"
|
meta "github.com/nspcc-dev/neofs-node/pkg/local_object_storage/metabase/v2"
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/shard"
|
"github.com/nspcc-dev/neofs-node/pkg/local_object_storage/shard"
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/morph/client"
|
"github.com/nspcc-dev/neofs-node/pkg/morph/client"
|
||||||
"github.com/nspcc-dev/neofs-node/pkg/morph/client/container/wrapper"
|
"github.com/nspcc-dev/neofs-node/pkg/morph/client/container/wrapper"
|
||||||
|
@ -36,7 +36,6 @@ import (
|
||||||
"github.com/panjf2000/ants/v2"
|
"github.com/panjf2000/ants/v2"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/spf13/viper"
|
"github.com/spf13/viper"
|
||||||
"go.etcd.io/bbolt"
|
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
)
|
)
|
||||||
|
@ -122,6 +121,12 @@ const (
|
||||||
cfgBlobStorTreePerm = "perm"
|
cfgBlobStorTreePerm = "perm"
|
||||||
cfgBlobStorSmallSzLimit = "small_size_limit"
|
cfgBlobStorSmallSzLimit = "small_size_limit"
|
||||||
|
|
||||||
|
cfgBlobStorBlzSection = "blobovnicza"
|
||||||
|
cfgBlzSize = "size"
|
||||||
|
cfgBlzShallowDepth = "shallow_depth"
|
||||||
|
cfgBlzShallowWidth = "shallow_width"
|
||||||
|
cfgBlzOpenedCacheSize = "opened_cache_size"
|
||||||
|
|
||||||
cfgMetaBaseSection = "metabase"
|
cfgMetaBaseSection = "metabase"
|
||||||
cfgMetaBasePath = "path"
|
cfgMetaBasePath = "path"
|
||||||
cfgMetaBasePerm = "perm"
|
cfgMetaBasePerm = "perm"
|
||||||
|
@ -456,6 +461,24 @@ func initShardOptions(c *cfg) {
|
||||||
configPath(blobPrefix, cfgBlobStorSmallSzLimit),
|
configPath(blobPrefix, cfgBlobStorSmallSzLimit),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
blzPrefix := configPath(blobPrefix, cfgBlobStorBlzSection)
|
||||||
|
|
||||||
|
blzSize := c.viper.GetUint64(
|
||||||
|
configPath(blzPrefix, cfgBlzSize),
|
||||||
|
)
|
||||||
|
|
||||||
|
blzShallowDepth := c.viper.GetUint64(
|
||||||
|
configPath(blzPrefix, cfgBlzShallowDepth),
|
||||||
|
)
|
||||||
|
|
||||||
|
blzShallowWidth := c.viper.GetUint64(
|
||||||
|
configPath(blzPrefix, cfgBlzShallowWidth),
|
||||||
|
)
|
||||||
|
|
||||||
|
blzCacheSize := c.viper.GetInt(
|
||||||
|
configPath(blzPrefix, cfgBlzOpenedCacheSize),
|
||||||
|
)
|
||||||
|
|
||||||
metaPrefix := configPath(prefix, cfgMetaBaseSection)
|
metaPrefix := configPath(prefix, cfgMetaBaseSection)
|
||||||
|
|
||||||
metaPath := c.viper.GetString(
|
metaPath := c.viper.GetString(
|
||||||
|
@ -468,9 +491,6 @@ func initShardOptions(c *cfg) {
|
||||||
|
|
||||||
fatalOnErr(os.MkdirAll(path.Dir(metaPath), metaPerm))
|
fatalOnErr(os.MkdirAll(path.Dir(metaPath), metaPerm))
|
||||||
|
|
||||||
boltDB, err := bbolt.Open(metaPath, metaPerm, nil)
|
|
||||||
fatalOnErr(err)
|
|
||||||
|
|
||||||
opts = append(opts, []shard.Option{
|
opts = append(opts, []shard.Option{
|
||||||
shard.WithLogger(c.log),
|
shard.WithLogger(c.log),
|
||||||
shard.WithBlobStorOptions(
|
shard.WithBlobStorOptions(
|
||||||
|
@ -479,10 +499,16 @@ func initShardOptions(c *cfg) {
|
||||||
blobstor.WithTreeRootPerm(blobPerm),
|
blobstor.WithTreeRootPerm(blobPerm),
|
||||||
blobstor.WithShallowDepth(shallowDepth),
|
blobstor.WithShallowDepth(shallowDepth),
|
||||||
blobstor.WithSmallSizeLimit(smallSzLimit),
|
blobstor.WithSmallSizeLimit(smallSzLimit),
|
||||||
|
blobstor.WithBlobovniczaSize(blzSize),
|
||||||
|
blobstor.WithBlobovniczaShallowDepth(blzShallowDepth),
|
||||||
|
blobstor.WithBlobovniczaShallowWidth(blzShallowWidth),
|
||||||
|
blobstor.WithBlobovniczaOpenedCacheSize(blzCacheSize),
|
||||||
|
blobstor.WithLogger(c.log),
|
||||||
),
|
),
|
||||||
shard.WithMetaBaseOptions(
|
shard.WithMetaBaseOptions(
|
||||||
meta.WithLogger(c.log),
|
meta.WithLogger(c.log),
|
||||||
meta.FromBoltDB(boltDB),
|
meta.WithPath(metaPath),
|
||||||
|
meta.WithPermissions(metaPerm),
|
||||||
),
|
),
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,9 @@ func init_(c *cfg) {
|
||||||
initObjectService(c)
|
initObjectService(c)
|
||||||
initProfiler(c)
|
initProfiler(c)
|
||||||
|
|
||||||
|
fatalOnErr(c.cfgObject.cfgLocalStorage.localStorage.Open())
|
||||||
|
fatalOnErr(c.cfgObject.cfgLocalStorage.localStorage.Init())
|
||||||
|
|
||||||
listenMorphNotifications(c)
|
listenMorphNotifications(c)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue