Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶ added in v0.23.0
type API struct { Log *zap.Logger Identity *identity.FullIdentity DB DB Servers *lifecycle.Group Services *lifecycle.Group Dialer rpc.Dialer Server *server.Server ExternalAddress string Version struct { Chore *checker.Chore Service *checker.Service } Debug struct { Listener net.Listener Server *debug.Server } Contact struct { Service *contact.Service Endpoint *contact.Endpoint } Overlay struct { DB overlay.DB Service *overlay.Service Inspector *overlay.Inspector } Orders struct { DB orders.DB Endpoint *orders.Endpoint Service *orders.Service Chore *orders.Chore } Metainfo struct { Database metainfo.PointerDB Service *metainfo.Service PieceDeletion *piecedeletion.Service Endpoint2 *metainfo.Endpoint } Inspector struct { Endpoint *inspector.Endpoint } Repair struct { Inspector *irreparable.Inspector } Accounting struct { ProjectUsage *accounting.Service } LiveAccounting struct { Cache accounting.Cache } ProjectLimits struct { Cache *accounting.ProjectLimitCache } Mail struct { Service *mailservice.Service } Payments struct { Accounts payments.Accounts Version *stripecoinpayments.VersionService Service *stripecoinpayments.Service Stripe stripecoinpayments.StripeClient } Referrals struct { Service *referrals.Service } Console struct { Listener net.Listener Service *console.Service Endpoint *consoleweb.Server } Marketing struct { PartnersService *rewards.PartnersService Listener net.Listener Endpoint *marketingweb.Server } NodeStats struct { Endpoint *nodestats.Endpoint } SnoPayout struct { Endpoint *snopayouts.Endpoint Service *snopayouts.Service DB snopayouts.DB } GracefulExit struct { Endpoint *gracefulexit.Endpoint } }
API is the satellite API process.
architecture: Peer
func NewAPI ¶ added in v0.23.0
func NewAPI(log *zap.Logger, full *identity.FullIdentity, db DB, pointerDB metainfo.PointerDB, revocationDB extensions.RevocationDB, liveAccounting accounting.Cache, rollupsWriteCache *orders.RollupsWriteCache, config *Config, versionInfo version.Info, atomicLogLevel *zap.AtomicLevel) (*API, error)
NewAPI creates a new satellite API process.
func (*API) PrivateAddr ¶ added in v0.23.0
PrivateAddr returns the private address.
type Admin ¶ added in v0.33.2
type Admin struct { // core dependencies Log *zap.Logger Identity *identity.FullIdentity DB DB Servers *lifecycle.Group Services *lifecycle.Group Debug struct { Listener net.Listener Server *debug.Server } Version struct { Chore *checker.Chore Service *checker.Service } Payments struct { Accounts payments.Accounts Service *stripecoinpayments.Service Stripe stripecoinpayments.StripeClient } Admin struct { Listener net.Listener Server *admin.Server } }
Admin is the satellite core process that runs chores.
architecture: Peer
func NewAdmin ¶ added in v0.33.2
func NewAdmin(log *zap.Logger, full *identity.FullIdentity, db DB, versionInfo version.Info, config *Config, atomicLogLevel *zap.AtomicLevel) (*Admin, error)
NewAdmin creates a new satellite admin peer.
type Config ¶
type Config struct { Identity identity.Config Server server.Config Debug debug.Config Admin admin.Config Contact contact.Config Overlay overlay.Config StrayNodes straynodes.Config Metainfo metainfo.Config Orders orders.Config Checker checker.Config Repairer repairer.Config Audit audit.Config GarbageCollection gc.Config ExpiredDeletion expireddeletion.Config Tally tally.Config Rollup rollup.Config LiveAccounting live.Config ReportedRollup reportedrollup.Config ProjectBWCleanup projectbwcleanup.Config Mail mailservice.Config Payments paymentsconfig.Config Referrals referrals.Config Console consoleweb.Config Marketing marketingweb.Config Version version_checker.Config GracefulExit gracefulexit.Config Metrics metrics.Config Compensation compensation.Config ProjectLimit accounting.ProjectLimitConfig }
Config is the global config satellite.
type Core ¶ added in v0.25.0
type Core struct { // core dependencies Log *zap.Logger Identity *identity.FullIdentity DB DB Servers *lifecycle.Group Services *lifecycle.Group Dialer rpc.Dialer Version struct { Chore *version_checker.Chore Service *version_checker.Service } Debug struct { Listener net.Listener Server *debug.Server } // services and endpoints Contact struct { Service *contact.Service } Overlay struct { DB overlay.DB Service *overlay.Service DQStrayNodes *straynodes.Chore } Metainfo struct { Database metainfo.PointerDB // TODO: move into pointerDB Service *metainfo.Service Loop *metainfo.Loop } Orders struct { DB orders.DB Service *orders.Service Chore *orders.Chore } Repair struct { Checker *checker.Checker } Audit struct { Queues *audit.Queues Worker *audit.Worker Chore *audit.Chore Verifier *audit.Verifier Reporter *audit.Reporter } GarbageCollection struct { Service *gc.Service } ExpiredDeletion struct { Chore *expireddeletion.Chore } Accounting struct { Tally *tally.Service Rollup *rollup.Service ReportedRollupChore *reportedrollup.Chore ProjectBWCleanupChore *projectbwcleanup.Chore } LiveAccounting struct { Cache accounting.Cache } Payments struct { Accounts payments.Accounts Chore *stripecoinpayments.Chore } GracefulExit struct { Chore *gracefulexit.Chore } Metrics struct { Chore *metrics.Chore } }
Core is the satellite core process that runs chores.
architecture: Peer
func New ¶
func New(log *zap.Logger, full *identity.FullIdentity, db DB, pointerDB metainfo.PointerDB, revocationDB extensions.RevocationDB, liveAccounting accounting.Cache, rollupsWriteCache *orders.RollupsWriteCache, versionInfo version.Info, config *Config, atomicLogLevel *zap.AtomicLevel) (*Core, error)
New creates a new satellite.
type DB ¶
type DB interface { // MigrateToLatest initializes the database MigrateToLatest(ctx context.Context) error // CheckVersion checks the database is the correct version CheckVersion(ctx context.Context) error // Close closes the database Close() error // TestingMigrateToLatest initializes the database for testplanet. TestingMigrateToLatest(ctx context.Context) error // PeerIdentities returns a storage for peer identities PeerIdentities() overlay.PeerIdentities // OverlayCache returns database for caching overlay information OverlayCache() overlay.DB // Attribution returns database for partner keys information Attribution() attribution.DB // StoragenodeAccounting returns database for storing information about storagenode use StoragenodeAccounting() accounting.StoragenodeAccounting // ProjectAccounting returns database for storing information about project data use ProjectAccounting() accounting.ProjectAccounting // RepairQueue returns queue for segments that need repairing RepairQueue() queue.RepairQueue // Irreparable returns database for failed repairs Irreparable() irreparable.DB // Console returns database for satellite console Console() console.DB // Rewards returns database for marketing admin GUI Rewards() rewards.DB // Orders returns database for orders Orders() orders.DB // Containment returns database for containment Containment() audit.Containment // Buckets returns the database to interact with buckets Buckets() metainfo.BucketsDB // GracefulExit returns database for graceful exit GracefulExit() gracefulexit.DB // StripeCoinPayments returns stripecoinpayments database. StripeCoinPayments() stripecoinpayments.DB // SnoPayout returns database for payouts. SnoPayout() snopayouts.DB // Compoensation tracks storage node compensation Compensation() compensation.DB // Revocation tracks revoked macaroons Revocation() revocation.DB // NodeAPIVersion tracks nodes observed api usage NodeAPIVersion() nodeapiversion.DB }
DB is the master database for the satellite.
architecture: Master Database
type GarbageCollection ¶ added in v1.1.1
type GarbageCollection struct { Log *zap.Logger Identity *identity.FullIdentity DB DB Servers *lifecycle.Group Services *lifecycle.Group Dialer rpc.Dialer Version struct { Chore *version_checker.Chore Service *version_checker.Service } Debug struct { Listener net.Listener Server *debug.Server } Overlay struct { DB overlay.DB } Metainfo struct { Database metainfo.PointerDB Loop *metainfo.Loop } GarbageCollection struct { Service *gc.Service } Metrics struct { Chore *metrics.Chore } }
GarbageCollection is the satellite garbage collection process.
architecture: Peer
func NewGarbageCollection ¶ added in v1.1.1
func NewGarbageCollection(log *zap.Logger, full *identity.FullIdentity, db DB, pointerDB metainfo.PointerDB, revocationDB extensions.RevocationDB, versionInfo version.Info, config *Config, atomicLogLevel *zap.AtomicLevel) (*GarbageCollection, error)
NewGarbageCollection creates a new satellite garbage collection process.
func (*GarbageCollection) Close ¶ added in v1.1.1
func (peer *GarbageCollection) Close() error
Close closes all the resources.
func (*GarbageCollection) ID ¶ added in v1.1.1
func (peer *GarbageCollection) ID() storj.NodeID
ID returns the peer ID.
type Repairer ¶ added in v0.25.0
type Repairer struct { Log *zap.Logger Identity *identity.FullIdentity Servers *lifecycle.Group Services *lifecycle.Group Dialer rpc.Dialer Version struct { Chore *version_checker.Chore Service *version_checker.Service } Debug struct { Listener net.Listener Server *debug.Server } Metainfo *metainfo.Service Overlay *overlay.Service Orders struct { DB orders.DB Service *orders.Service Chore *orders.Chore } SegmentRepairer *repairer.SegmentRepairer Repairer *repairer.Service }
Repairer is the repairer process.
architecture: Peer
func NewRepairer ¶ added in v0.25.0
func NewRepairer(log *zap.Logger, full *identity.FullIdentity, pointerDB metainfo.PointerDB, revocationDB extensions.RevocationDB, repairQueue queue.RepairQueue, bucketsDB metainfo.BucketsDB, overlayCache overlay.DB, rollupsWriteCache *orders.RollupsWriteCache, irrDB irreparable.DB, versionInfo version.Info, config *Config, atomicLogLevel *zap.AtomicLevel) (*Repairer, error)
NewRepairer creates a new repairer peer.
Directories ¶
Path | Synopsis |
---|---|
live
Package live provides live accounting functionality.
|
Package live provides live accounting functionality. |
Package admin implements administrative endpoints for satellite.
|
Package admin implements administrative endpoints for satellite. |
Package attribution implements value attribution from docs/design/value-attribution.md
|
Package attribution implements value attribution from docs/design/value-attribution.md |
Package gc contains the functions needed to run garbage collection.
|
Package gc contains the functions needed to run garbage collection. |
Package internalpb contains proto definitions for satellite internal tools.
|
Package internalpb contains proto definitions for satellite internal tools. |
expireddeletion
Package expireddeletion contains the functions needed to run expired segment deletion The expireddeletion.expiredDeleter implements the metainfo loop Observer interface allowing us to subscribe to the loop to get information for every segment in the metainfo database.
|
Package expireddeletion contains the functions needed to run expired segment deletion The expireddeletion.expiredDeleter implements the metainfo loop Observer interface allowing us to subscribe to the loop to get information for every segment in the metainfo database. |
piecedeletion
Package piecedeletion implements service for deleting pieces that combines concurrent requests.
|
Package piecedeletion implements service for deleting pieces that combines concurrent requests. |
pointerverification
Package pointerverification implements verification of pointers.
|
Package pointerverification implements verification of pointers. |
Package nodeselection implements node selection logic.
|
Package nodeselection implements node selection logic. |