First is prepare you DB connection on the init (only call once) :
db1, err := gorm.Open(dbdriver, dboption) //your main server
db2, err := gorm.Open(dbdriver, dboption) //your sharding 1
db3, err := gorm.Open(dbdriver, dboption) //your sharding 2
And on your db filter just choose the between db1, db2, or db3 you want to be used by your model. Thats all.
Gorm already make the pool for you, so you don't need to take care.