Каникулы are days off for schools, universities, colleges etc. Mind you, for students only, not the teachers
Праздник/праздники is day(s) off due to holiday(s). Like an independence day, or the victory day.
Отпуск is days off you're legally entitled to as an employee. Also for teachers as they're employees.
Hope this clears it up.