It's called a melodica. They come in various sizes, from soprano to alto to tenor to bass. There's also a melodina, which has buttons like an accordion instead of keys like a piano. They were invented by Hohner in the 1950s, but remain after half a century just a novelty instrument.