Why is the bytestring 0xaa21a9ed used as the witness commitment header in SegWit?
It's random.

The intent was choosing something long enough to avoid having someone accidentally create an output that matches, but short enough that it doesn't unnecessarily makes SegWit blocks larger.