The quake hit just after midnight on Monday (11:02 GMT on Sunday), north-east of Christchurch.
It was felt as far afield as the capital Wellington on the North Island, 120 miles (200km) away.
A tsunami arrived about two hours later. Officials warned everyone along the eastern coast to head inland or for higher ground.
Police said one person died in the town of Kaikoura on the eastern coast, which has been cut off by road and where electric power is out and phones are down.
Another died in Mount Lyford, a ski resort nearby. It is not yet clear how they were killed.