Book your cruise as early as possible, and purchase a cheaper cabin. The least-expensive cabins sell the quickest on a cruise. When trying to pull in last-minute revenue, the cruise line may bump a pre-registered low-cost cabin traveler to a nicer cabin to make room for incoming travelers paying low cost for economy cabins. Calling the cruise line registration number to inquire about remaining free space on the cruise may give you an indication of the likelihood of an upgrade (more free space means less chance of upgrade), but proactively requesting upgrades will not often increase your success rate.
Purchase rooms that are qualified as "Category Guarantee." This means that no matter where they move you on the ship, they must give you a room that is of equal or higher value in terms of commodities and space. Finding an equal room is not always an option, so the cruise line must upgrade you per the terms of your original room purchase.
Book cruises with the same cruise line repeatedly. Guests who bring in a lot of business to a cruise line are likely to be upgraded sooner than first-time cruisers.
Book your cabin during a promotional offer given by Carnival. The company will often give away higher cabins at lower rates to fill its quota for a voyage.
Keep track of the advertised prices for your level cabin after you book your cruise. If the price drops below what you paid, contact the cruise line, and request that the amount be credited to your account. Many cruise lines will instead offer a room upgrade.