Terms of the deal weren't announced, by the Cincinnati Enquirer reported it was for $5.35 million.
Bailey had filed for $5.8 million in his arbitration proceeding, while the Reds countered with a $4.75 million offer.
Bailey, 26, last year compiled a 13-10 record with a 3.68 ERA over 33 starts, while setting new career marks in wins, innings (208), strikeouts (168) and quality starts (21).
The signing settled the last of seven arbitration cases the Reds had been facing entering the new season, following deals with Mat Latos, Logan Ondrusek, Mike Leake, Bailey, Chris Heisey, Shin-Soo Choo and Alfredo Simon, the Enquirer noted.
Jordana Brewster on Paul Walker: 'He was an enormous presence in my life'
Exploding whale video goes viral on Internet