This paper proposes a novel observer-based data-driven constrained norm optimal iterative learning control (NOILC) method. Two data-driven observers are constructed along the iterative learning axis as a model estimator and a disturbance estimator respectively to identify a class of repeatable multiple-input and multiple-output (MIMO) non-affine non-linear discrete-time systems subject to non-repetitive external disturbance, in the cases that the full system states are available and unavailable. The corresponding observer-based data-driven constrained NOILC is designed further to make the system achieve perfect tracking control, while system constraints can be obeyed. The convergence property of both the proposed observers and the observer-based constrained NOILC is analyzed. The compared simulation results show that the proposed observers can identify the considered unknown system well and the corresponding controller can achieve high tracking control precision.