El conjunto vasco firmó a Silva, quien era jugador libre luego de pasar la última década en el City.
El español de 34 años se integrará al resto de sus compañeros en los próximos días para iniciar la pretemporada, informó el club.
Silva llegó al City en 2010 y ayudó en la reconstrucción del equipo hasta convertirlo en una de las potencias europeas. Su último duelo con la camiseta del cuadro inglés fue la derrota de 3-1 ante el Lyon en los cuartos de final de la Liga de Campeones el sábado pasado, cuando ingresó en los minutos finales.
LEA: Barcelona convoca a reunión extraordinaria tras derrota en Champions
Silva disputó más de 300 partidos con el City y ayudó en la conquista de cuatro títulos de la Premier. El conjunto informó horas antes el lunes que construiría una estatua en honor del español a las afueras de su estadio.
Silva jugó previamente para el Valencia, el Eibar y el Celta de Vigo.
Como miembro de la selección española, Silva ganó el Mundial de 2010 y la Euro en sus versiones de 2008 y 2012.
La Real Sociedad finalizó en el sexto puesto de la Liga la campaña anterior.
ENTÉRESE: Nagelsmann sobre Tuchel: 'él me dio la idea de ser entrenador'