The English language mostly derives from the language of the Angles, who invaded Britain after the Romans left, so it's basically a Germanic language, albeit with French (Romance) additions courtesy of the Norman Conquest some four hundred years later, in 1066.
Originally the k was pronounced - it's a voiceless plosive, made by blocking the flow of air with the back of the tongue and then releasing it. The n sound is make by putting the tip of the tongue behind the upper teeth. The combination means the tongue is pretty busy if you say k-nife or k-night, and it's easier to drop the k sound. In English, the k sound before an n was dropped in the 1500s (although the k-n sound survives in languages like German or Dutch).
However, by the 1500s, printing had been developed, and spelling had, to some extent, been standardized; the spelling of words that start kn (or gn, with its silent g) still hasn't caught up with the pronunciation. Although if it ever did, it would add some more words to the list of those that already have more than one meaning, e.g., light, box, pound, rifle.
"Why didn't people start spelling words with silent letters without the silent letters?" Jim asked.
"It could cause confusion if they did," Blair replied. Reaching for a sheet of paper he wrote a few words, then handed it to his friend. "How many of those words have a silent k?"
Jim looked at it. 'The new night did not now how to tie a not. He nawed his nuckles in frustration.' "Five," he said.
"Nope. Read it again."
This time Jim read it aloud. "The new knight did not know how to tie a knot. He - oh."
"Yup. The next one is a g."
Blair just grinned.
So we stick with the spelling that retains the silent k (or g) before an n, and it helps to eliminate possible confusion.