Minecraft Fire Place
Solution 1:
I made one of these a long time ago. Here's a screenshot of the fireplace design:
It's a corner design with three fires burning on top of netherack, and the switch at the left turns it on and off. I'll address each of your points separately for this design:
Self-lighting: Since I made this in an older version of Minecraft, it uses fire charges shot from dispensers behind the brick blocks at the back of the fire place. As noted by others, newer versions of Minecraft allow you to place a flint and steel in a dispenser to light blocks in front of it on fire, which is how you'll probably want to go. The dispensers are activated by a falling-edge detector circuit connected to the switch that delivers a pulse when it is flipped up.
Extinguish itself: The netherack blocks that the fire is on are being held up by extended sticky pistons. A rising edge detector circuit connects from the switch to an inverter (i.e. redstone torch) under the pistons. The pistons are briefly retracted when the switch is flipped down, and the movement of the netherack blocks puts out the fire on top of them.
Log-cabin feel: Well, as you can see I went for obsidian. However, you can build with wood if you are careful to use brick blocks and other non-flammables in proximity to your flames. Based on how fire spreads in Minecraft, the area you have to be wary of is a region 1 block below, 1 block around (including diagonals) and 4 blocks above your flame. In other words, a 3-by-3-by-6 column. If you can fill that entire region with non-flammable, non-air blocks, you're good. If there are any air blocks in that column, you have to leave a block of space between them and any flammable blocks.
Controlled by a switch: Check! ;)
2-block-high flames: Can't help you there. I doubt it's even possible.
Solution 2:
You can do most of this, apart from having the flames 2 blocks high.
You can trigger fire using flint & steel dispensers, which you can turn on with redstone. To extinguish the fire have another dispenser quickly place a water block where the fire is. There are other methods too, this one by DerpCrafturrr is particularly good.
You will need to set the doFireTick
gamerule to False if you don't want your logs to burn down.
As for the log cabin ambience, that's all a matter of design, but this building guide should help you make things look awesome!