Adan arrives at Wanda Metropolitano as a backup for first choice Jan Oblak following the release of Miguel Moya back in February.
The 31-year-old, who will be an Atletico player until at least 2020, had joined Betis in 2014 from Italian club Cagliari and played over 160 games in four seasons.
Prior to that, Adan had played 18 times at first team level for Real while serving as a backup to Iker Casillas, having earlier played close to 100 games for Real Madrid Castilla.
Adan is the fourth new signing for Atletico this summer following the arrivals of Spanish midfielder Rodri, French winger Thomas Lemar and Argentine teenager Nehuen Perez.
Released at the end of his contract, Fernando Torres has found his next club after heading to Japan to sign for J1 League side Sagan Tosu.