A statement on Carnival's website said nobody was hurt and automatic extinguishers put out the fire before it could spread from the aft engine room. The company said the U.S. Coast Guard had been notified and was monitoring the situation.
Triumph cruises from Galveston, Texas, to the Caribbean.
The cruise line said another of its ships, the Carnival Elation, responded to the scene and transferred provisions to the disabled boat.
Carnival says a tugboat will tow the Triumph to Progreso, Mexico, where passengers will be flown back to the United States. It's expected to arrive in Progreso on Wednesday.
Carnival says passengers will get a full refund, plus an equal credit for a future cruise.
The Triumph departed Galveston on Feb. 7 and was due to return Feb. 11.
The company also cancelled the Triumph's next two voyages, set to depart Feb. 11 and Feb. 16, and offering a full refund and a discount on a future cruise.