Knative - āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āϏāĻŽāĻ°ā§āĻĨāύ āϏāĻš k8s-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ-āĻ-āĻ-āϏāĻžāĻ°ā§āĻ­āĻŋāϏ

Knative - āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āϏāĻŽāĻ°ā§āĻĨāύ āϏāĻš k8s-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ-āĻ-āĻ-āϏāĻžāĻ°ā§āĻ­āĻŋāϏ

Kubernetes āύāĻŋāσāϏāĻ¨ā§āĻĻ⧇āĻšā§‡ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰ āĻ¸ā§āĻĨāĻžāĻĒāύāĻžāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāĻ­āĻžāĻŦāĻļāĻžāϞ⧀ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āĻšāϝāĻŧ⧇ āωāϠ⧇āϛ⧇āĨ¤ āĻāϟāĻŋ āϤāĻžāϰ APIs āĻāĻŦāĻ‚ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻĒā§āϰāĻžāϝāĻŧ āϏāĻŦāĻ•āĻŋāϛ⧁ āύāĻŋāϝāĻŧāĻ¨ā§āĻ¤ā§āϰāĻŖ āĻ•āϰāĻžāϰ āĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇ āϝāĻž āĻ•āĻžāĻ¸ā§āϟāĻŽ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āĻāϰ APIāϗ⧁āϞāĻŋ āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻ•āϰ⧇āĨ¤

āϝāĻžāχāĻšā§‹āĻ•, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϕ⧇ āĻāĻ–āύāĻ“ āĻ āĻŋāĻ• āϕ⧀āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ—, āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ, āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻāĻŦāĻ‚ āĻ¸ā§āϕ⧇āϞ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āϏāĻŋāĻĻā§āϧāĻžāĻ¨ā§āϤ āύāĻŋāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚, āϏ⧁āϰāĻ•ā§āώāĻž āĻāĻŦāĻ‚ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āĻĒā§āϰāĻŦāĻžāĻšā§‡āϰ āϏāĻŽāĻ¸ā§āϝāĻžāϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻŦāĻŋāĻŦ⧇āϚāύāĻžāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋāϤ⧇ āĻĨāĻžāϕ⧇āĨ¤ āĻāϟāĻŋ āĻ•ā§āϞāĻžāωāĻĄ āĻĢāĻžāωāĻ¨ā§āĻĄā§āϰāĻŋ āĻāĻŦāĻ‚ āĻšā§‡āϰ⧋āϕ⧁-āĻāϰ āĻŽāϤ⧋ āĻĒāϰāĻŋāώ⧇āĻŦāĻž (PaaS) āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĒā§āϰāϚāϞāĻŋāϤ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāϗ⧁āϞāĻŋ āĻĨ⧇āϕ⧇ āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏāϕ⧇ āφāϞāĻžāĻĻāĻž āĻ•āϰ⧇āĨ¤

āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ āϏāϰāϞ⧀āĻ•ā§ƒāϤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āϰāϝāĻŧ⧇āϛ⧇ āĻāĻŦāĻ‚ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰ⧇ āϝāĻžāϰāĻž āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āĻĒ⧃āĻĨāĻ• āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϏ⧇āϟ āφāĻĒ āĻ•āϰāĻžāϰ āϏāĻžāĻĨ⧇ āϜāĻĄāĻŧāĻŋāϤ āĻĨāĻžāϕ⧇āĨ¤ āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻšāĻŋāϤ PaaS āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĻā§āĻŦāĻžāϰāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻ•āĻžāϛ⧇ āϰāĻžāωāϟāĻŋāĻ‚, āĻ¸ā§āĻĨāĻžāĻĒāύāĻž āĻāĻŦāĻ‚ āĻŽā§‡āĻŸā§āϰāĻŋāĻ•ā§āϏ āĻ¸ā§āĻŦāĻšā§āĻ›āĻ­āĻžāĻŦ⧇ āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āĻšāϝāĻŧāĨ¤

āϏ⧋āĻ°ā§āϏ-āϟ⧁-āĻļāĻŋāĻĒ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻĢā§āϞ⧋ PaaS āĻĻā§āĻŦāĻžāϰāĻž āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰ āχāĻŽā§‡āϜ āϤ⧈āϰāĻŋ āĻ•āϰ⧇, āĻāϟāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰ⧇, āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āϰ⧁āϟ āϏ⧇āϟ āφāĻĒ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āχāύāĻ•āĻžāĻŽāĻŋāĻ‚ āĻŸā§āϰāĻžāĻĢāĻŋāϕ⧇āϰ āϜāĻ¨ā§āϝ DNS āϏāĻžāĻŦāĻĄā§‹āĻŽā§‡āύ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰ⧇āĨ¤ āĻāχ āϏāĻŦ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϚāĻžāϞ⧁ āĻ•āϰāĻž āĻšāϝāĻŧ git push.

Kubernetes (āχāĻšā§āĻ›āĻžāĻ•ā§ƒāϤāĻ­āĻžāĻŦ⧇) āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻāχ āϧāϰāύ⧇āϰ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϜāĻ¨ā§āϝ āĻŽā§‚āϞ āĻŦāĻŋāĻ˛ā§āĻĄāĻŋāĻ‚ āĻŦā§āϞāĻ• āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āϏāĻŽā§āĻĒā§āϰāĻĻāĻžāϝāĻŧāϕ⧇ āύāĻŋāĻœā§‡āϰāĻžāχ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻ¸ā§āĻŦāĻžāϧ⧀āύ āϰ⧇āϖ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āϕ⧇āϞāϏāĻŋ āĻšāĻžāχāϟāĻžāĻ“āϝāĻŧāĻžāϰ āĻĄ:

Kubernetes āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āύāĻŋāĻ°ā§āĻŽāĻžāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāĨ¤ āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āϏ⧇āϰāĻž āĻ…āĻŦāĻ¸ā§āĻĨāĻžāύ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻļ⧇āώ āύāĻžāĨ¤

āĻĢāϞāĻ¸ā§āĻŦāϰ⧂āĻĒ, āφāĻŽāϰāĻž āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ āĻŦāĻŋāĻ˛ā§āĻĄāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ āϗ⧁āĻšā§āĻ› āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻšā§āĻ›āĻŋ, āϏ⧇āχāϏāĻžāĻĨ⧇ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āϏāĻ‚āĻ¸ā§āĻĨāĻžāϗ⧁āϞāĻŋ āϝ⧇āϗ⧁āϞāĻŋ āĻ“āĻĒ⧇āύāĻļāĻŋāĻĢāϟ āĻāĻŦāĻ‚ āϰāĻžāĻžā§āϚāĻžāϰ⧇āϰ āĻŽāϤ⧋ āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ⧇āϰ āϜāĻ¨ā§āϝ PaaS āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāϛ⧇⧎ āĻ•ā§āϰāĻŽāĻŦāĻ°ā§āϧāĻŽāĻžāύ Kube-PaaS āĻŦāĻžāϜāĻžāϰ⧇āϰ āĻŽāĻ§ā§āϝ⧇, Google āĻāĻŦāĻ‚ Pivotal āĻĻā§āĻŦāĻžāϰāĻž āϜ⧁āϞāĻžāχ 2018 āϏāĻžāϞ⧇ āĻĒā§āϰāϤāĻŋāĻˇā§āĻ āĻŋāϤ Knative, āϰāĻŋāĻ‚āϝāĻŧ⧇ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāϛ⧇āĨ¤

Knative āĻ›āĻŋāϞ Google āĻāĻŦāĻ‚ Pivotal-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻž, āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āϕ⧋āĻŽā§āĻĒāĻžāύāĻŋ āϝ⧇āĻŽāύ IBM, RedHat āĻāĻŦāĻ‚ Solo.im āĻĨ⧇āϕ⧇ āϏāĻžāĻŽāĻžāĻ¨ā§āϝ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āύāĻŋāϝāĻŧ⧇āĨ¤ āĻāϟāĻŋ āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻŋāĻ‚-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻļā§€āĻ°ā§āώāĻ¸ā§āĻĨāĻžāύ⧀āϝāĻŧ āϏāĻŽāĻ°ā§āĻĨāύ āϏāĻš Kubernetes-āĻ āĻ…āύ⧁āϰ⧂āĻĒ PaaS āϜāĻŋāύāĻŋāϏāϗ⧁āϞāĻŋ āĻ…āĻĢāĻžāϰ āĻ•āϰ⧇āĨ¤ Kubernetes āĻŦāĻŋāĻ˛ā§āĻĄā§‡āϰ āĻŦāĻŋāĻĒāϰ⧀āϤ⧇, Knative āϝ⧇āϕ⧋āύ āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝāĻĒā§‚āĻ°ā§āĻŖ Kubernetes āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāϰ⧇ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāĻĄ-āĻ…āύ āĻšāĻŋāϏāĻžāĻŦ⧇ āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύāϗ⧁āϞāĻŋāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

Knative āĻ•āĻŋ?

Knative āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦāĻ°ā§āĻŖāύāĻž āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ "āφāϧ⧁āύāĻŋāĻ• āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻŋāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻžāĻœā§‡āϰ āϚāĻžāĻĒ āϏāϰāĻŦāϰāĻžāĻš āĻāĻŦāĻ‚ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāĨ¤" āύ⧇āϟāĻŋāĻ­, āύāĻŋāĻœā§‡āϕ⧇ āĻāχ āϜāĻžāϤ⧀āϝāĻŧ āĻāĻ•āϟāĻŋ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦāĻŋāϞāĻŋāĻ‚ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ, āϏāĻŽāĻŦāĻ°ā§āϤ⧀ HTTP āĻ…āύ⧁āϰ⧋āϧāϗ⧁āϞāĻŋāϰ āĻ…āύ⧁āĻĒāĻžāϤ⧇ āϏāĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰāϗ⧁āϞāĻŋāϕ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻ¸ā§āϕ⧇āϞ āĻ•āϰ⧇āĨ¤ āĻ…āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻĒāϰāĻŋāώ⧇āĻŦāĻžāϗ⧁āϞāĻŋ āĻļ⧇āώ āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻļā§‚āĻ¨ā§āϝ⧇ āύ⧇āĻŽā§‡ āφāϏ⧇, āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ-āĻ¸ā§āϟāĻžāχāϞ āĻ…āύ-āĻĄāĻŋāĻŽāĻžāĻ¨ā§āĻĄ āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤

Knative āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ⧇āϰ āĻāĻ•āϟāĻŋ āϏ⧇āϟ āύāĻŋāϝāĻŧ⧇ āĻ—āĻ āĻŋāϤ āϝāĻž āϝ⧇āϕ⧋āύ āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāϰ⧇ āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇:

  • āϏ⧋āĻ°ā§āϏ āϕ⧋āĻĄ āĻĨ⧇āϕ⧇ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰāĻžāχāϜāĻĄ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϤ⧈āϰāĻŋ āĻ•āϰāĻž (āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻĻāĻ¤ā§āϤ āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ•āϰāĻž),
  • āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāĻžāύāϗ⧁āϞāĻŋāϤ⧇ āφāĻ—āϤ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻĒā§āϰāĻĻāĻžāύ (āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻĻāĻ¤ā§āϤ āĻ­āϜāύāĻž),
  • āϚāĻžāĻšāĻŋāĻĻāĻž āĻ…āύ⧁āϝāĻžāϝāĻŧā§€ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ⧇āϰ āĻĄā§‡āϞāĻŋāĻ­āĻžāϰāĻŋ āĻāĻŦāĻ‚ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚ (āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āωāĻĒāĻžāĻĻāĻžāύ āĻĻā§āĻŦāĻžāϰāĻž āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻž āĻšāϝāĻŧ āĻ­āϜāύāĻž),
  • āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϞāĻžā§āĻšā§‡āϰ āĻĻāĻŋāϕ⧇ āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āχāϭ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϰ āωāĻ¤ā§āϏāϗ⧁āϞāĻŋ āϏāύāĻžāĻ•ā§āϤ āĻ•āϰāĻž (āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻžā§ˇ āϘāϟāύāĻž).

āĻāĻ•āϟāĻŋ āĻŽā§‚āϞ āωāĻĒāĻžāĻĻāĻžāύ āĻšāϞ āĻĒāϰāĻŋāĻŦ⧇āĻļāύ, āϝāĻž āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāĻ­āĻŋāĻļāύāĻŋāĻ‚, āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ-āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚ āĻāĻŦāĻ‚ āĻŸā§āϰāĻžāĻĢāĻŋāĻ• āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻžāĻĒāύāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ Knative āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻžāϰ āĻĒāϰ⧇, āφāĻĒāύāĻŋ āĻāĻ–āύāĻ“ Kubernetes API-āϤ⧇ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻĒāĻžāĻŦ⧇āύ, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻ⧇āϝāĻŧ āϏāĻžāϧāĻžāϰāĻŖ āωāĻĒāĻžāϝāĻŧ, āĻāĻŦāĻ‚ Knative āĻĒāϰāĻŋāώ⧇āĻŦāĻžāϗ⧁āϞāĻŋāϕ⧇ āĻĄāĻŋāĻŦāĻžāĻ— āĻ•āϰāϤ⧇āĻ“ āĻ•āĻžāϜ āĻ•āϰ⧇, āĻāĻ•āχ API āφāĻĻāĻŋāĻŽāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āϝāĻž āĻāχ āĻĒāϰāĻŋāώ⧇āĻŦāĻžāϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ (āĻŽāĻĄāĻŋāωāϞ, āĻĒāϰāĻŋāώ⧇āĻŦāĻž, āχāĻ¤ā§āϝāĻžāĻĻāĻŋ)⧎

āϏāĻžāĻ°ā§āĻ­āĻŋāĻ‚ āĻāϰ āϏāĻžāĻšāĻžāĻ¯ā§āϝ⧇, āύ⧀āϞ-āϏāĻŦ⧁āϜ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āϰāĻžāωāϟāĻŋāĻ‚ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻšāϝāĻŧ, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āϝāĻ–āύ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϟāĻŋāϰ āĻāĻ•āϟāĻŋ āφāĻĒāĻĄā§‡āϟ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰ⧇ āϤāĻ–āύ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϟāĻŋāϰ āύāϤ⧁āύ āĻāĻŦāĻ‚ āĻĒ⧁āϰāĻžāύ⧋ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āĻĒ⧃āĻĨāϕ⧀āĻ•āϰāĻŖ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇⧎

Knative āύāĻŋāĻœā§‡āχ āĻāĻ•āϟāĻŋ āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝāĻĒā§‚āĻ°ā§āĻŖ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻžāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇āĨ¤ āĻāχ āύāĻŋāĻŦāĻ¨ā§āϧāϟāĻŋ āϞ⧇āĻ–āĻžāϰ āϏāĻŽāϝāĻŧ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ Gloo API āϗ⧇āϟāĻ“āϝāĻŧ⧇ и āχāĻ¸ā§āϟāĻŋāĻ“ āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻŽā§‡āĻļ. āĻāϟāĻŋ Knative-āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋāϤ⧇ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āϰ⧁āϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻŦ⧇āĨ¤

Istio āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞ āĻĒā§āϝāĻžāύ⧇āϞ āχāύāĻ¸ā§āϟāϞ āύāĻž āĻ•āϰ⧇āχ Native āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϜāĻ¨ā§āϝ Istio āĻĒāϰāĻŋāώ⧇āĻŦāĻž āĻŽā§‡āĻļ āĻāĻ•āϟāĻŋ āĻŦāĻĄāĻŧ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇, āϝ⧇āĻšā§‡āϤ⧁ Knative āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϗ⧇āϟāĻ“āϝāĻŧ⧇āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇āĨ¤

āĻāχ āĻ•āĻžāϰāϪ⧇, āĻŦ⧇āĻļāĻŋāϰāĻ­āĻžāĻ— āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āχ Knative-āĻāϰ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻšāĻŋāϏāĻžāĻŦ⧇ Gloo āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āϰ⧇āύ, Istio-āϕ⧇ (āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Knative āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āωāĻĻā§āĻĻ⧇āĻļā§āϝ⧇) āĻāĻ•āχ āϧāϰāύ⧇āϰ āĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āĻ•āĻŽ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻ•āĻŽ āĻĒāϰāĻŋāϚāĻžāϞāύ āĻ–āϰāϚ āĻšāϝāĻŧāĨ¤

āĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āĻĄā§‡ āĻ…ā§āϝāĻžāĻ•āĻļāύ⧇ Knative āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻž āϝāĻžāĻ•āĨ¤ āφāĻŽāĻŋ GKE-āϤ⧇ āϚāϞāĻŽāĻžāύ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ:

kubectl get namespace
NAME          STATUS   AGE
default       Active   21h
kube-public   Active   21h
kube-system   Active   21h

āφāϏ⧁āύ Knative āĻāĻŦāĻ‚ Gloo āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻļ⧁āϰ⧁ āĻ•āϰāĻŋāĨ¤ āĻāϟāĻŋ āϝ⧇ āϕ⧋āύāĻ“ āĻ•ā§āϰāĻŽā§‡ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇:

# ŅŅ‚Đ°Đ˛Đ¸Đŧ Knative-Serving
kubectl apply -f 
 https://github.com/knative/serving/releases/download/v0.8.0/serving-core.yaml
namespace/knative-serving created
# ...
# ŅŅ‚Đ°Đ˛Đ¸Đŧ Gloo
kubectl apply -f 
  https://github.com/solo-io/gloo/releases/download/v0.18.22/gloo-knative.yaml
namespace/gloo-system created
# ...

āφāĻŽāϰāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻŋ āϝ⧇ āϏāĻŽāĻ¸ā§āϤ āĻĒāĻĄ "āϚāϞāĻŽāĻžāύ" āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āφāϛ⧇:

kubectl get pod -n knative-serving
NAME                              READY   STATUS    RESTARTS   AGE
activator-5dd55958cc-fkp7r        1/1     Running   0          7m32s
autoscaler-fd66459b7-7d5s2        1/1     Running   0          7m31s
autoscaler-hpa-85b5667df4-mdjch   1/1     Running   0          7m32s
controller-85c8bb7ffd-nj9cs       1/1     Running   0          7m29s
webhook-5bd79b5c8b-7czrm          1/1     Running   0          7m29s
kubectl get pod -n gloo-system
NAME                                      READY   STATUS    RESTARTS   AGE
discovery-69548c8475-fvh7q                1/1     Running   0          44s
gloo-5b6954d7c7-7rfk9                     1/1     Running   0          45s
ingress-6c46cdf6f6-jwj7m                  1/1     Running   0          44s
knative-external-proxy-7dd7665869-x9xkg   1/1     Running   0          44s
knative-internal-proxy-7775476875-9xvdg   1/1     Running   0          44s

Gloo āϰāĻžāωāϟāĻŋāĻ‚-āĻāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ, āφāϏ⧁āύ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ-āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚ Knative āĻĒāϰāĻŋāώ⧇āĻŦāĻž āϤ⧈āϰāĻŋ āĻ•āϰāĻŋ (āφāϏ⧁āύ āĻāϟāĻŋāϕ⧇ kservice āĻŦāϞāĻŋ) āĻāĻŦāĻ‚ āĻāϤ⧇ āĻŸā§āϰāĻžāĻĢāĻŋāĻ• āϰ⧁āϟ āĻ•āϰāĻŋāĨ¤

āĻĒā§āϰāϚāϞāĻŋāϤ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§‡āĻ¨ā§āϟ+āϏāĻžāĻ°ā§āĻ­āĻŋāϏ+āχāύāĻ—ā§āϰ⧇āϏ āĻŽāĻĄā§‡āϞ⧇āϰ āĻšā§‡āϝāĻŧ⧇ Knative āĻĒāϰāĻŋāώ⧇āĻŦāĻžāϗ⧁āϞāĻŋ āϕ⧁āĻŦāĻžāϰāύ⧇āĻŸā§‡ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻžāϰ āĻāĻ•āϟāĻŋ āϏāĻšāϜ āĻĒāĻĨ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ āφāĻŽāϰāĻž āĻāχ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϏāĻžāĻĨ⧇ āĻ•āĻžāϜ āĻ•āϰāĻŦ:

apiVersion: serving.knative.dev/v1alpha1
kind: Service
metadata:
 name: helloworld-go
 namespace: default
spec:
 template:
   spec:
     containers:
       - image: gcr.io/knative-samples/helloworld-go
         env:
           - name: TARGET
             Value: Knative user

āφāĻŽāĻŋ āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āĻĢāĻžāχāϞ⧇ āĻ…āύ⧁āϞāĻŋāĻĒāĻŋ āĻ•āϰ⧇āĻ›āĻŋ, āϤāĻžāϰāĻĒāϰ āĻāϟāĻŋ āφāĻŽāĻžāϰ āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāϰ⧇ āĻāχāĻ­āĻžāĻŦ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰ⧇āĻ›āĻŋ:

kubectl apply -f ksvc.yaml -n default

āφāĻŽāĻžāĻĻ⧇āϰ 'āĻšā§āϝāĻžāϞ⧋āĻ“āϝāĻŧāĻžāĻ°ā§āĻ˛ā§āĻĄ-āĻ—ā§‹' āĻĄā§‡āϞāĻŋāĻ­āĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰ⧇ āφāĻŽāϰāĻž āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāϰ⧇ Knative āĻĻā§āĻŦāĻžāϰāĻž āϤ⧈āϰāĻŋ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύāϗ⧁āϞāĻŋ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāϰāĻŋ kservice:

kubectl get pod -n default
NAME                                              READY   STATUS    RESTARTS   AGE
helloworld-go-fjp75-deployment-678b965ccb-sfpn8   2/2     Running   0          68s

āφāĻŽāĻžāĻĻ⧇āϰ 'āĻšā§āϝāĻžāϞ⧋āĻ“āϝāĻŧāĻžāĻ°ā§āĻ˛ā§āĻĄ-āĻ—ā§‹' āχāĻŽā§‡āϜ āϏāĻš āĻĒāĻĄāϟāĻŋ āϚāĻžāϞ⧁ āĻšāϝāĻŧ āϝāĻ–āύ kservice āĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻŸā§āϰāĻžāĻĢāĻŋāĻ• āύāĻž āĻĨāĻžāĻ•āϞ⧇ āĻĒāĻĄā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻļā§‚āĻ¨ā§āϝ⧇ āύ⧇āĻŽā§‡ āφāϏāĻŦ⧇āĨ¤ āĻāĻŦāĻ‚ āϤāĻĻā§āĻŦāĻŋāĻĒāϰ⧀āϤ, āϝāĻĻāĻŋ āĻāĻ•āϝ⧋āϗ⧇ āĻ…āύ⧁āϰ⧋āϧ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰāϝ⧋āĻ—ā§āϝ āĻĨā§āϰ⧇āĻļāĻšā§‹āĻ˛ā§āĻĄ āĻ…āϤāĻŋāĻ•ā§āϰāĻŽ āĻ•āϰ⧇, āĻĒāĻĄā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻŦ⧃āĻĻā§āϧāĻŋ āĻĒāĻžāĻŦ⧇āĨ¤

kubectl get ingresses.networking.internal.knative.dev -n default
NAME            READY   REASON
helloworld-go   True

Knative āĻ…āĻ­ā§āϝāĻ¨ā§āϤāϰ⧀āĻŖ Knative API-āĻ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻļ⧇āώ 'āχāύāĻ—ā§āϰ⧇āϏ' āϰāĻŋāϏ⧋āĻ°ā§āϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāϰ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧇āĨ¤ āĻāĻ•āϟāĻŋ āύ⧀āϞ-āϏāĻŦ⧁āϜ āĻ¸ā§āĻĨāĻžāĻĒāύāĻžāϰ āĻŽāĻĄā§‡āϞ, āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ TLS āĻāύāĻĢā§‹āĻ°ā§āϏāĻŽā§‡āĻ¨ā§āϟ, āϟāĻžāχāĻŽāφāωāϟ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āωāĻ¨ā§āύāϤ āϰāĻžāωāϟāĻŋāĻ‚ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āϏāĻš PaaS-āĻāϰ āĻŽāϤ⧋ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ Gloo āĻāχ APIāϟāĻŋāϕ⧇ āϤāĻžāϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤

āĻ•āĻŋāϛ⧁ āϏāĻŽāϝāĻŧ āĻĒāϰ⧇, āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāχ āϝ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āĻĒā§‹āĻĄāϗ⧁āϞāĻŋ āĻ…āĻĻ⧃āĻļā§āϝ āĻšāϝāĻŧ⧇ āϗ⧇āϛ⧇ (āĻ•āĻžāϰāĻŖ āϕ⧋āύ āφāĻ—āϤ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ• āĻ›āĻŋāϞ āύāĻž):

kubectl get pod -n default

No resources found.
kubectl get deployment -n default
NAME                             DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
helloworld-go-fjp75-deployment   0         0         0            0           9m46s

āĻ…āĻŦāĻļ⧇āώ⧇ āφāĻŽāϰāĻž āϤāĻžāĻĻ⧇āϰ āĻ•āĻžāϛ⧇ āĻĒ⧌āρāĻ›āĻžāύ⧋āϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāĻŦāĨ¤ āφāĻĒāύāĻŋ āϏāĻšāĻœā§‡āχ āĻāĻŦāĻ‚ āϏāĻšāĻœā§‡āχ Knative āĻĒā§āϰāĻ•ā§āϏāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ URL āĻĒ⧇āϤ⧇ āĻĒāĻžāϰ⧇āύ glooctl:

glooctl proxy url --name knative-external-proxy
http://35.190.151.188:80

āχāĻ¨ā§āϏāϟāϞ āĻ›āĻžāĻĄāĻŧāĻžāχ glooctl āφāĻĒāύāĻŋ āϕ⧁āĻŦ⧇ āĻĒāϰāĻŋāώ⧇āĻŦāĻžāϤ⧇ āĻ āĻŋāĻ•āĻžāύāĻž āĻāĻŦāĻ‚ āĻĒā§‹āĻ°ā§āϟ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύ:

kubectl get svc -n gloo-system knative-external-proxy
NAME                     TYPE           CLUSTER-IP     EXTERNAL-IP      PORT(S)                      AGE
knative-external-proxy   LoadBalancer   10.16.11.157   35.190.151.188   80:32168/TCP,443:30729/TCP   77m

āφāϏ⧁āύ cURL āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻŋāϛ⧁ āĻĄā§‡āϟāĻž āϰāĻžāύ āĻ•āϰāĻŋ:

curl -H "Host: helloworld-go.default.example.com" http://35.190.151.188
Hello Knative user!

Knative Gloo-āĻāϰ āωāĻšā§āϚ-āĻĒāĻžāϰāĻĢāϰāĻŽā§āϝāĻžāĻ¨ā§āϏ, āĻĢ⧁āϞ-āĻ¸ā§āĻŸā§āϝāĻžāĻ• API āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āφāωāϟ-āĻ…āĻĢ-āĻĻā§āϝ-āĻŦāĻ•ā§āϏ Kubernetes-āĻāϰ āωāĻĒāϰ⧇ āĻĄā§‡āϭ⧇āϞāĻĒāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāĻžāϝāĻŧ-PaaS āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ āĻāχ āĻĒā§‹āĻ¸ā§āϟāϟāĻŋ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Knative āĻāϰ āĻŦāĻŋāĻ¸ā§āϤ⧃āϤ āĻ•āĻžāĻ¸ā§āϟāĻŽāĻžāχāĻœā§‡āĻļāύ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻāĻŦāĻ‚ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋāϰ āĻĒ⧃āĻˇā§āĻ āϕ⧇ āĻ¸ā§āĻ•ā§āĻ°ā§āϝāĻžāϚ āĻ•āϰ⧇āϛ⧇āĨ¤ Gloo āϏāĻ™ā§āϗ⧇ āĻāĻ•āχ!

Knative āĻāĻ–āύāĻ“ āĻāĻ•āϟāĻŋ āϤāϰ⧁āĻŖ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āĻšāĻ“āϝāĻŧāĻž āϏāĻ¤ā§āĻ¤ā§āĻŦ⧇āĻ“, āĻāϰ āĻĻāϞ āĻĒā§āϰāϤāĻŋ āĻ›āϝāĻŧ āϏāĻĒā§āϤāĻžāĻšā§‡ āύāϤ⧁āύ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āĻĒā§āϰāĻ•āĻžāĻļ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āωāĻ¨ā§āύāϤ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋāϰ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻļ⧁āϰ⧁ āĻšāϝāĻŧ⧇āϛ⧇, āϝ⧇āĻŽāύ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ TLS āĻ¸ā§āĻĨāĻžāĻĒāύāĻž, āύāĻŋāϝāĻŧāĻ¨ā§āĻ¤ā§āϰāĻŖ āĻĒā§āϝāĻžāύ⧇āϞ⧇āϰ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚āĨ¤ āĻāĻ•āĻžāϧāĻŋāĻ• āĻ•ā§āϞāĻžāωāĻĄ āϕ⧋āĻŽā§āĻĒāĻžāύāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻžāϰ āĻĢāϞ⧇ āĻāĻŦāĻ‚ Google-āĻāϰ āύāϤ⧁āύ āĻ•ā§āϞāĻžāωāĻĄ āϰāĻžāύ āĻ…āĻĢāĻžāϰ⧇āϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻšāĻŋāϏāĻžāĻŦ⧇, Knative āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻŋāĻ‚ āĻāĻŦāĻ‚ āϕ⧁āĻŦāĻžāϰāύ⧇āĻŸā§‡ PaaS-āĻāϰ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻšāϝāĻŧ⧇ āωāĻ āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻ–āĻŦāϰ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰ⧁āύ!

āϏāĻžāωāĻĨāĻŦā§āϰāĻŋāĻœā§‡āϰ āϏāĻŽā§āĻĒāĻžāĻĻāĻ•āĻĻ⧇āϰ āĻ•āĻžāĻ› āĻĨ⧇āϕ⧇
āĻĒāĻžāĻ āĻ•āĻĻ⧇āϰ āĻŽāϤāĻžāĻŽāϤ āφāĻŽāĻžāĻĻ⧇āϰ āĻ•āĻžāϛ⧇ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ, āϤāĻžāχ āφāĻŽāϰāĻž āφāĻĒāύāĻžāϕ⧇ Knative, Kubernetes, āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āĻ­āĻŦāĻŋāĻˇā§āϝāϤ⧇āϰ āύāĻŋāĻŦāĻ¨ā§āϧāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āĻāĻ•āϟāĻŋ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āϏāĻŽā§€āĻ•ā§āώāĻžāϝāĻŧ āĻ…āĻ‚āĻļ āύāĻŋāϤ⧇ āĻŦāϞāĻŋ:

āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āύāĻŋāĻŦāĻ¨ā§āϧāĻŋāϤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āϜāϰāĻŋāĻĒ⧇ āĻ…āĻ‚āĻļāĻ—ā§āϰāĻšāĻŖ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŦ⧇āύāĨ¤ āϏāĻžāχāύ āχāύ āĻ•āϰ⧁āύāĻ•āϰ⧁āύāĨ¤

āφāĻŽāĻžāϰ āĻ•āĻŋ Knative āĻāĻŦāĻ‚ āϏāĻžāĻ°ā§āĻ­āĻžāϰāĻšā§€āύ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āύāĻŋāĻŦāĻ¨ā§āϧ āĻāĻŦāĻ‚ āĻ—āĻžāχāĻĄ āϞ⧇āĻ–āĻž āϚāĻžāϞāĻŋāϝāĻŧ⧇ āϝ⧇āϤ⧇ āĻšāĻŦ⧇?

  • āĻšā§āϝāĻžāρ.

  • āύāĻž āϧāĻ¨ā§āϝāĻŦāĻžāĻĻ.

28 āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻ­ā§‹āϟ āĻĻāĻŋāϝāĻŧ⧇āϛ⧇āύāĨ¤ 4 āϜāύ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻŦāĻŋāϰāϤ āĻ›āĻŋāϞ⧇āύāĨ¤

āωāĻ¤ā§āϏ: www.habr.com

DDoS āϏ⧁āϰāĻ•ā§āώāĻž, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϏāĻš āϏāĻžāχāϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ đŸ”Ĩ DDoS āϏ⧁āϰāĻ•ā§āώāĻž āϏāĻš āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻ“āϝāĻŧ⧇āĻŦāϏāĻžāχāϟ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ | ProHoster