Gloucester and England lock Alex Brown has been forced to retire from rugby union because of a shoulder injury.