Release preparation v1.63

new version 1.63 is deployed to QA Satellite
We really appreciate your help with testing

Changelog

Satellite

  • cf4bfbc web/satellite: make login and registration satellite dropdowns accessible through tab usage.

  • c255d69 web/satellite: Minor access grant updates

  • fa23e55 {private,satellite}: add Typescript generation to REST API generation

  • e0d3e48 satellite/consoleweb: monitor visits without blowing up influx namespace

  • 7a9b2a7 satellite/payments/monetary: add USDMicro and json marshaling

  • 9c77c76 satellite/payments/storjscan: change USD currency to USDollarsMicro

  • aa1f501 satellite/metainfo: Don’t log error due to ctx cancellation

  • 6b08b0a web/satellite: Replace coinpayments functionality in card on new billing screen with a message to contact support.

  • 8ddd555 satellite/satellitedb: reduce migration tests

  • 71c1d0f satellite/metabase: reduce queries for iterator boundaries tests

  • 31242f3 satellite: use table aliases for query in QueryStorageNodeUsage endpoint

  • 36ae8d4 satellite/metabase: revert non-recursive listing optimization

  • 998835a web/satellite: make upgrade account modal responsive

  • cd89e1e satellite/satellitedb: remove direct import of pgxerrcode

  • a4192ac console/satellite: track signup captcha scores

  • f35b416 web/satellite: multiple passphrase notification added

  • d1d98af satellite/metabase: jump after prefix at the end of iteration page

  • 3c0fc3a web/satellite: table responsiveness added

  • b722c29 satellite/metainfo: add missing metadata validation

  • 3f26cc5 satellite/console,web/satellite: invalidate sessions after inactivity

  • 2139d39 satellite/metabase: update UpdateObjectMetadata to work with latest commited object

  • ea38860 satellite/metainfo: align satellite StreamID protobuf version with metabase

  • d605421 satellite/metainfo: move metadata validation to a proper place

  • 3019ad3 web/satellite: apply passphrase to newly created access grants

  • 0bfdc9d web/satellite: fix billing duplicate navigation error

  • 0c4e458 web/satellite: change segment learn-more link

  • 12ef68b satellitedb: restore-trash shouldn’t bother with nodes we’ve never talked to

  • 5a5f609 satellite/metainfo: add copy and move log and metrics

  • 07bbe7d satellite/overlay: don’t insert new nodes if contact check failed

  • 2163d60 satellite/metabase/segmentloop: add missing monitoring

  • 72086e6 console/satellite: make file browser responsive

  • 8f1c092 web/satellite: update responsiveness in billing pages

  • e621190 satellitedb: randomize nodes for restore from trash

  • a57cbc4 satellite/satellitedb: drop _gob columns

  • d585f25 web/satellite: share bucket feature

  • fa76dfe satellite/metabase: use GetObjectLastCommitted with move/copy

  • 4393b8a satellite/internalpb: new protobuf for retain filters

  • 00c5943 satellite: skeleton for new GC peer

  • 8830d1e web/satellite: Styling updates to registration page

  • afe5832 satellitedb: remove use of batch payment insert

  • 2ae1db5 cmd/satellite: add command for collecting GC bloom filters

  • df5b0d0 satellite/metabase: added method DeleteObjectLastCommitted

  • 9c5e2fd web/satellite: fix access grants used for sharing objects and buckets

  • 78c496b web/satellite: Update dashboard links to docs.storj.io

Storagenode

  • 7e5025c {storagenode,multinode/nodes}: use multinodeauth.Secret instead of byte for APISecret

  • bac0155 storagenode/storagenodedb: fix null at_rest_total values for storage usage

  • 4b1be6b storagenode/satellite: support different piece hash algorithms

  • 3d79c5f storagenode/docker: allow to configure updater with separated env variables

  • 7e71986 storagenode: accept HTTP calls on public port, listening for monitoring requests

Test

  • 6b27c64 testplanet: support snapshot based migration for storagenode

General

3 Likes

This is awesome! Thanks so much, this will make monitoring with uptimerobot a lot more reliable!

4 Likes

Will this make it more susceptible to DDOS?

Maybe, as it will now be returning something that bots will recognise as a service, so will probably get deep scanned - it would also allow poorly performing nodes to be targeted as the stats would be known if the SNO enabled that option, and they could then be pushed offline easier with a targeted attack.

Also, as this is using the existing public port, it’s impossible to limit to specific IP’s without allot of work…

Would be nice to see the http wrapper put in a go rate limiter to prevent DDOS, 6 requests a minute seems fair, maybe configurable ?

Also can this default to off, so we can choose to switch it on :slight_smile: as it is very easy for all the nodes to be scanned and audited with this being open, maybe some form of AUTH would be nice as well ? Two different service wrapper protocols running on the same port :thinking:

#edit : this bit default to disabled:

Enabled bool `user:"true" help:"Provide health endpoint (including suspension/audit failures) on main public port, but HTTP protocol." default:"true"`

CP

4 Likes

I’ve been having a look at this and it looks like my three oldest nodes all say they’re not healthy…

{
  "Statuses": null,
  "Help": "To access Storagenode services, please use DRPC protocol!",
  "AllHealthy": false
}

My guess is this is because they still have the stefan-benten satellite in their db’s and can’t connect to it anymore for obvious reasons. Newer nodes that never dealt with that satellite do say they’re all healthy.

Ps. we also still see an error in the log every time we refresh the dashboard. It seems the software still doesn’t deal great with a satellite disappearing.

My oldest node also has the exact same error and “Allhealthy” set to false.

Do these conditions satisfy for your node ?

if stat.DisqualifiedAt != nil || stat.SuspendedAt != nil || stat.OnlineScore < 0.9 {
			h.AllHealthy = false
		}

or

if len(stats) == 0 {
		h.AllHealthy = false
	}

For all current satellites, yes.

Please open a bug for that.