It would not take many warheads to effectively destroy Israel, that is a major problem for them when thinking about a possible Iranian program. I agree that they would respond, but the question of "is it rational" is at least fun to debate at times.
I further think that Israel would really have no time to react should Iran simply launch a first strike. Given this, you have to rely solely on intelligence to try to find out about a launch before it happens. This, especially in Iran, is next to impossible.
Let us all remember how we even found out about the overt (not even the secret part) Iranian nuclear program. An Iranian revolutionary group blew the lid off it. Our intelligence missed it, as did Israeli intelligence. Given this, if I am a leader in Israel, I am not about to give my intel people the task of spotting a nuclear attack before it happens, especially since this mission must be zero-fail.
Well, I think it depends on who you are deterring. Our triad can sustain a hit and be effective against a nation such as Russia, however it is the rouge states that are the problem. Therefore I support missile defense for this, and also we need to undertake other actions to prevent "suitcase" weapons from arriving here as well.
As for Iraq, the Iraq war was not legally preemptive, it was preventative. There is a big legal distinction.
I also think there are other actions we can take outside of total war. We could assassinate a nations nuclear scientists for example, or sabotage the program in numerous ways. The problem is identifying locations and the scope the program, which we have proven pretty bad at doing.