OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1

"ืžื” ื”ื”ื‘ื“ืœ ื‘ื™ืŸ Kubernetes ืœ-OpenShift?" - ื”ืฉืืœื” ื”ื–ื• ืžืชืขื•ืจืจืช ื‘ืขืงื‘ื™ื•ืช ืžืขื•ืจืจืช ืงื ืื”. ืœืžืจื•ืช ืฉื‘ืžืฆื™ืื•ืช ื–ื” ื›ืžื• ืœืฉืื•ืœ ืื™ืš ืžื›ื•ื ื™ืช ืฉื•ื ื” ืžืžื ื•ืข. ืื ื ืžืฉื™ืš ืืช ื”ืื ืœื•ื’ื™ื”, ืื– ืžื›ื•ื ื™ืช ื”ื™ื ืžื•ืฆืจ ืžื•ื’ืžืจ, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื• ืžื™ื“, ืคืฉื•ื˜ื• ื›ืžืฉืžืขื•: ืœื”ื™ื›ื ืก ื•ืœืฆืืช. ืžืฆื“ ืฉื ื™, ื›ื“ื™ ืฉืžื ื•ืข ื™ื™ืงื— ืื•ืชืš ืœืื ืฉื”ื•, ืฆืจื™ืš ืงื•ื“ื ื›ืœ ืœื”ื•ืกื™ืฃ ืœื• ืขื•ื“ ื”ืžื•ืŸ ื“ื‘ืจื™ื ื›ื“ื™ ืœืงื‘ืœ ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ ืืช ืื•ืชื” ืžื›ื•ื ื™ืช.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1

ืœื›ืŸ, Kubernetes ื”ื•ื ื”ืžื ื•ืข ืฉืกื‘ื™ื‘ื• ืžื•ืจื›ื‘ืช ืžื›ื•ื ื™ืช ื”ืžื•ืชื’ (ืคืœื˜ืคื•ืจืžื”) ืฉืœ ื”ืžื•ืชื’ OpenShift, ืฉืœื•ืงื—ืช ืื•ืชืš ืืœ ื”ืžื˜ืจื” ืฉืœืš.

ื‘ืžืืžืจ ื–ื” ืื ื• ืจื•ืฆื™ื ืœื”ื–ื›ื™ืจ ืœื›ื ื•ืœื‘ื—ื•ืŸ ืืช ื ืงื•ื“ื•ืช ื”ืžืคืชื— ื”ื‘ืื•ืช ื‘ื™ืชืจ ืคื™ืจื•ื˜:

  • Kubernetes ื”ื™ื ืœื‘ ืœื™ื‘ื” ืฉืœ ืคืœื˜ืคื•ืจืžืช OpenShift ื•ื”ื™ื 100% Kubernetes ืžื•ืกืžื›ืช, ืงื•ื“ ืคืชื•ื— ืœื—ืœื•ื˜ื™ืŸ ื•ืœืœื ืฉืžืฅ ืฉืœ ืื•ืคื™ ืงื ื™ื™ื ื™. ื‘ืงืฆืจื”:
    • ืžืžืฉืง API ืฉืœ ืืฉื›ื•ืœ OpenShift ื”ื•ื XNUMX% Kubernetes.
    • ืื ื”ืงื•ื ื˜ื™ื™ื ืจ ืคื•ืขืœ ืขืœ ื›ืœ ืžืขืจื›ืช Kubernetes ืื—ืจืช, ื”ื•ื ื™ืคืขืœ ืขืœ OpenShift ืœืœื ื›ืœ ืฉื™ื ื•ื™. ืื™ืŸ ืฆื•ืจืš ืœื‘ืฆืข ืฉื™ื ื•ื™ื™ื ื‘ืืคืœื™ืงืฆื™ื•ืช.
  • OpenShift ืœื ืจืง ืžื•ืกื™ืฃ ืชื›ื•ื ื•ืช ืฉื™ืžื•ืฉื™ื•ืช ื•ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืœ-Kubernetes. ื›ืžื• ืžื›ื•ื ื™ืช, OpenShift ื™ืฆืื” ืžื”ืงื•ืคืกื”, ื ื™ืชื ืช ืœื™ื™ืฆื•ืจ ืžื™ื“, ื•ื›ืคื™ ืฉื ืจืื” ืœื”ืœืŸ, ื”ื•ืคื›ืช ืืช ื—ื™ื™ ื”ืžืคืชื— ืœื”ืจื‘ื” ื™ื•ืชืจ ืงืœื™ื. ืœื›ืŸ OpenShift ืžืื•ื—ื“ืช ื‘ืฉื ื™ ืื ืฉื™ื. ื–ื•ื”ื™ ืคืœื˜ืคื•ืจืžืช PaaS ืžืฆืœื™ื—ื” ื•ืžื•ื›ืจืช ื›ืื—ื“ ืžื ืงื•ื“ืช ืžื‘ื˜ ืฉืœ ืžืคืชื—. ื•ื™ื—ื“ ืขื ื–ืืช, ื–ื”ื• ืคืชืจื•ืŸ Container-as-a-Service ืกื•ืคืจ ืืžื™ืŸ ืžื ืงื•ื“ืช ืžื‘ื˜ ืฉืœ ืชืคืขื•ืœ ืชืขืฉื™ื™ืชื™.

OpenShift ื”ื™ื Kubernetes ืขื ื”ืกืžื›ื” ืฉืœ 100% CNCF

OpenShift ืžื‘ื•ืกืก ืขืœ ืžื•ืกืžืš Kubernetes. ืœื›ืŸ, ืœืื—ืจ ื”ื›ืฉืจื” ืžืชืื™ืžื”, ื”ืžืฉืชืžืฉื™ื ื ื“ื”ืžื™ื ืžื”ื›ื•ื— ืฉืœ kubectl. ื•ืืœื” ืฉืขื‘ืจื• ืœ-OpenShift ืž-Kubernetes Cluster ืื•ืžืจื™ื ืœืขืชื™ื ืงืจื•ื‘ื•ืช ื›ืžื” ื”ื ื‘ืืžืช ืื•ื”ื‘ื™ื ืืช ื–ื” ืœืื—ืจ ื”ืคื ื™ื™ืช kubeconfig ืœืืฉื›ื•ืœ OpenShift, ื›ืœ ื”ืกืงืจื™ืคื˜ื™ื ื”ืงื™ื™ืžื™ื ืขื•ื‘ื“ื™ื ืœืœื ืจื‘ื‘.

ื‘ื˜ื— ืฉืžืขืชื ืขืœ ื›ืœื™ ืฉื•ืจืช ื”ืคืงื•ื“ื” ืฉืœ OpenShift ืฉื ืงืจื OC. ื”ื•ื ืชื•ืื ืคืงื•ื“ื•ืช ืœื—ืœื•ื˜ื™ืŸ ืœ-kubectl, ื‘ื ื•ืกืฃ ื”ื•ื ืžืฆื™ืข ืžืกืคืจ ืขื•ื–ืจื™ื ืฉื™ืžื•ืฉื™ื™ื ืฉื™ื”ื™ื• ืฉื™ืžื•ืฉื™ื™ื ื‘ืขืช ื‘ื™ืฆื•ืข ืžืกืคืจ ืžืฉื™ืžื•ืช. ืื‘ืœ ืงื•ื“ื, ืงืฆืช ื™ื•ืชืจ ืขืœ ื”ืชืื™ืžื•ืช ืฉืœ OC ื•-kubectl:

ืคืงื•ื“ื•ืช kubectl
ืฆื•ื•ืชื™ OC

ืงื‘ืœ ืงื•ื‘ื™ื•ืช
oc ืงื‘ืœ ืชืจืžื™ืœื™ื

kubectl ืงื‘ืœ ืžืจื—ื‘ื™ ืฉืžื•ืช
oc ืงื‘ืœ ืžืจื—ื‘ื™ ืฉืžื•ืช

kubectl ืœื™ืฆื•ืจ -f deployment.yaml
oc create -f deployment.yaml

ื›ืš ื ืจืื•ืช ื”ืชื•ืฆืื•ืช ืฉืœ ื”ืฉื™ืžื•ืฉ ื‘-kubectl ื‘-OpenShift API:

โ€ข kubectl get pods - ืžื—ื–ื™ืจ ืชืจืžื™ืœื™ื ื›ืฆืคื•ื™.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1

โ€ข kubectl get spaces โ€“ ืžื—ื–ื™ืจ ืžืจื—ื‘ื™ ืฉืžื•ืช ื›ืฆืคื•ื™.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ื”ืคืงื•ื“ื” kubectl create -f mydeployment.yaml ื™ื•ืฆืจืช ืžืฉืื‘ื™ Kubernetes ื‘ื“ื™ื•ืง ื›ืžื• ื‘ื›ืœ ืคืœื˜ืคื•ืจืžืช Kubernetes ืื—ืจืช, ื›ืคื™ ืฉืžื•ืฆื’ ื‘ืกืจื˜ื•ืŸ ืœืžื˜ื”:


ื‘ืžื™ืœื™ื ืื—ืจื•ืช, ื›ืœ ืžืžืฉืงื™ ื”-API ืฉืœ Kubernetes ื–ืžื™ื ื™ื ื‘ืžืœื•ืื ื‘-OpenShift ืชื•ืš ืฉืžื™ืจื” ืขืœ 100% ืชืื™ืžื•ืช. ื–ื• ื”ืกื™ื‘ื” OpenShift ืžื•ื›ืจืช ื›ืคืœื˜ืคื•ืจืžืช Kubernetes ืžื•ืกืžื›ืช ืขืœ ื™ื“ื™ ืงืจืŸ Cloud Native Computing (CNCF).โ€ƒ

OpenShift ืžื•ืกื™ืฃ ืชื›ื•ื ื•ืช ืฉื™ืžื•ืฉื™ื•ืช ืœ-Kubernetes

ืžืžืฉืงื™ ื”-API ืฉืœ Kubernetes ื–ืžื™ื ื™ื ื‘-100% ื‘-OpenShift, ืืš ื›ืœื™ ื”ืฉื™ืจื•ืช ื”ืกื˜ื ื“ืจื˜ื™ ืฉืœ Kubernetes kubectl ื—ืกืจ ื‘ื‘ื™ืจื•ืจ ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื•ื ื•ื—ื•ืช. ืœื›ืŸ Red Hat ื”ื•ืกื™ืคื” ืชื›ื•ื ื•ืช ืฉื™ืžื•ืฉื™ื•ืช ื•ื›ืœื™ ืฉื•ืจืช ืคืงื•ื“ื” ืœ-Kubernetes, ื›ืžื• OC (ืงื™ืฆื•ืจ ืฉืœ OpenShift client) ื•-ODO (OpenShift DO, ื›ืœื™ ื–ื” ืžื™ื•ืขื“ ืœืžืคืชื—ื™ื).

1. ืฉื™ืจื•ืช OC - ื’ืจืกื” ื—ื–ืงื” ื•ื ื•ื—ื” ื™ื•ืชืจ ืฉืœ Kubectl

ืœื“ื•ื’ืžื”, ื‘ื ื™ื’ื•ื“ ืœ-kubectl, ื”ื•ื ืžืืคืฉืจ ืœืš ืœื™ืฆื•ืจ ืžืจื—ื‘ื™ ืฉืžื•ืช ื—ื“ืฉื™ื ื•ืœื”ื—ืœื™ืฃ ื”ืงืฉืจื™ื ื‘ืงืœื•ืช, ื•ื’ื ืžืฆื™ืข ืžืกืคืจ ืคืงื•ื“ื•ืช ืฉื™ืžื•ืฉื™ื•ืช ืœืžืคืชื—ื™ื, ื›ื’ื•ืŸ ื‘ื ื™ื™ืช ืชืžื•ื ื•ืช ืžื™ื›ืœ ื•ืคืจื™ืกื” ืฉืœ ื™ื™ืฉื•ืžื™ื ื™ืฉื™ืจื•ืช ืžืงื•ื“ ืžืงื•ืจ ืื• ืงื‘ืฆื™ื ื‘ื™ื ืืจื™ื™ื (ืžืงื•ืจ-ืœืชืžื•ื ื”, s2i).

ื”ื‘ื” ื ืกืชื›ืœ ืขืœ ื“ื•ื’ืžืื•ืช ื›ื™ืฆื“ ื”ืขื•ื–ืจื™ื ื”ืžื•ื‘ื ื™ื ื•ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ืžืชืงื“ืžืช ืฉืœ ื›ืœื™ ื”ืฉื™ืจื•ืช OC ืขื•ื–ืจื™ื ืœืคืฉื˜ ืืช ื”ืขื‘ื•ื“ื” ื”ื™ื•ืžื™ื•ืžื™ืช.

ื”ื“ื•ื’ืžื” ื”ืจืืฉื•ื ื” ื”ื™ื ื ื™ื”ื•ืœ ืžืจื—ื‘ ืฉืžื•ืช. ืœื›ืœ ืืฉื›ื•ืœ Kubernetes ื™ืฉ ืชืžื™ื“ ืžืจื—ื‘ื™ ืฉืžื•ืช ืžืจื•ื‘ื™ื. ื”ื ืžืฉืžืฉื™ื ื‘ื“ืจืš ื›ืœืœ ืœื™ืฆื™ืจืช ืกื‘ื™ื‘ื•ืช ืคื™ืชื•ื— ื•ื™ื™ืฆื•ืจ, ืืš ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื”ื ื’ื ื›ื“ื™, ืœืžืฉืœ, ืœืกืคืง ืœื›ืœ ืžืคืชื— ืืจื’ื– ื—ื•ืœ ืื™ืฉื™. ื‘ืคื•ืขืœ, ื–ื” ื’ื•ืจื ืœื›ืš ืฉื”ืžืคืชื— ื ืืœืฅ ืœืขื‘ื•ืจ ืœืขื™ืชื™ื ืงืจื•ื‘ื•ืช ื‘ื™ืŸ ืžืจื—ื‘ื™ ืฉืžื•ืช, ืฉื›ืŸ kubectl ืคื•ืขืœ ื‘ื”ืงืฉืจ ืฉืœ ื”ืžืจื—ื‘ ื”ื ื•ื›ื—ื™. ืœื›ืŸ, ื‘ืžืงืจื” ืฉืœ kubectl, ืื ืฉื™ื ืžืฉืชืžืฉื™ื ื‘ืื•ืคืŸ ืคืขื™ืœ ื‘ืกืงืจื™ืคื˜ื™ื ืขื•ื–ืจื™ื ืœืฉื ื›ืš. ืื‘ืœ ื‘ืขืช ืฉื™ืžื•ืฉ ื‘-OC, ื›ื“ื™ ืœืขื‘ื•ืจ ืœืžืจื—ื‘ ื”ืจืฆื•ื™, ืคืฉื•ื˜ ืืžื•ืจ "ืžืจื—ื‘ ืฉืžื•ืช ืฉืœ ืคืจื•ื™ืงื˜ oc".

ืœื ื–ื•ื›ืจ ืื™ืš ืงื•ืจืื™ื ืœืžืจื—ื‘ ื”ืฉืžื•ืช ืฉืืชื” ืฆืจื™ืš? ืื™ืŸ ื‘ืขื™ื”, ืคืฉื•ื˜ ื”ืงืœื“ "oc get projects" ื›ื“ื™ ืœื”ืฆื™ื’ ืืช ื”ืจืฉื™ืžื” ื”ืžืœืื”. ืกืคืงืŸ ืชื•ื”ื” ืื™ืš ื–ื” ื™ืขื‘ื•ื“ ืื ืชื”ื™ื” ืœืš ืจืง ื’ื™ืฉื” ืœืชืช-ืงื‘ื•ืฆื” ืžื•ื’ื‘ืœืช ืฉืœ ืžืจื—ื‘ื™ ืฉืžื•ืช ื‘ืืฉื›ื•ืœ? ื•ื‘ื›ืŸ, ื›ื™ kubectl ืขื•ืฉื” ื–ืืช ื ื›ื•ืŸ ืจืง ืื RBAC ืžืืคืฉืจ ืœืš ืœืจืื•ืช ืืช ื›ืœ ื”ืจื•ื•ื—ื™ื ื‘ืืฉื›ื•ืœ, ื•ื‘ืืฉื›ื•ืœื•ืช ื’ื“ื•ืœื™ื ืœื ื›ื•ืœื ืžืงื‘ืœื™ื ื”ืจืฉืื•ืช ื›ืืœื”. ืื–, ืื ื—ื ื• ืขื•ื ื™ื: ืขื‘ื•ืจ ื”-OC ื–ื• ื‘ื›ืœืœ ืœื ื‘ืขื™ื” ื•ื”ื™ื ืชืคื™ืง ื‘ืงืœื•ืช ืจืฉื™ืžื” ืžืœืื” ื‘ืžืฆื‘ ื›ื–ื”. ื”ื“ื‘ืจื™ื ื”ืงื˜ื ื™ื ื”ืœืœื• ื”ื ืฉืžืจื›ื™ื‘ื™ื ืืช ื”ืื•ืจื™ื™ื ื˜ืฆื™ื” ื”ืืจื’ื•ื ื™ืช ืฉืœ Openshift ื•ืืช ื”ืžื“ืจื’ื™ื•ืช ื”ื˜ื•ื‘ื” ืฉืœ ื”ืคืœื˜ืคื•ืจืžื” ื”ื–ื• ืžื‘ื—ื™ื ืช ืžืฉืชืžืฉื™ื ื•ื™ื™ืฉื•ืžื™ื

2. ODO - ื’ืจืกื” ืžืฉื•ืคืจืช ืฉืœ kubectl ืœืžืคืชื—ื™ื

ื“ื•ื’ืžื” ื ื•ืกืคืช ืœืฉื™ืคื•ืจื™ื ืฉืœ Red Hat OpenShift ื‘ื”ืฉื•ื•ืื” ืœ-Kubernetes ื”ื™ื ื›ืœื™ ื”ืฉื™ืจื•ืช ืฉืœ ืฉื•ืจืช ื”ืคืงื•ื“ื” ODO. ื”ื•ื ืžื™ื•ืขื“ ืœืžืคืชื—ื™ื ื•ืžืืคืฉืจ ืœืš ืœืคืจื•ืก ื‘ืžื”ื™ืจื•ืช ืงื•ื“ ืžืงื•ืžื™ ืœืืฉื›ื•ืœ OpenShift ืžืจื•ื—ืง. ื–ื” ื’ื ื™ื›ื•ืœ ืœื™ื™ืขืœ ืชื”ืœื™ื›ื™ื ืคื ื™ืžื™ื™ื ื›ื“ื™ ืœืกื ื›ืจืŸ ื‘ืื•ืคืŸ ืžื™ื™ื“ื™ ืืช ื›ืœ ืฉื™ื ื•ื™ื™ ื”ืงื•ื“ ืขื ืงื•ื ื˜ื™ื™ื ืจื™ื ื‘ืืฉื›ื•ืœ OpenShift ืžืจื•ื—ืง ืžื‘ืœื™ ืฆื•ืจืš ืœื‘ื ื•ืช ืžื—ื“ืฉ, ืœืจืฉื•ื ื•ืœืคืจื•ืก ืžื—ื“ืฉ ืชืžื•ื ื•ืช.

ื‘ื•ืื• ื ืกืชื›ืœ ื›ื™ืฆื“ OC ื•-ODO ืžืงืœื™ื ืขืœ ื”ืขื‘ื•ื“ื” ืขื ืงื•ื ื˜ื™ื™ื ืจื™ื ื•-Kubernetes.

ืคืฉื•ื˜ ื”ืฉื•ื•ื” ื›ืžื” ื–ืจื™ืžื•ืช ืขื‘ื•ื“ื” ื›ืืฉืจ ื”ื ื‘ื ื•ื™ื™ื ืขืœ ื‘ืกื™ืก kubectl, ื•ื›ืืฉืจ ืžืฉืชืžืฉื™ื ื‘-OC ืื• ODO.

โ€ข ืคืจื™ืกืช ืงื•ื“ ื‘-OpenShift ืœืžื™ ืฉืœื ื“ื•ื‘ืจ YAML:

Kubernetes/kubectl
$>ื’ื™ื˜ ืฉื™ื‘ื•ื˜ github.com/sclorg/nodejs-ex.git
1- ืฆื•ืจ Dockerfile ืฉื‘ื•ื ื” ืืช ื”ืชืžื•ื ื” ืžืงื•ื“
-----
ืžื”ืฆื•ืžืช
WORKDIR /usr/src/app
COPY package*.json ./
COPY index.js ./
COPY ./app ./app
ื”ืคืขืœ ื”ืชืงื ื” ืฉืœ npm
ื—ืฉื™ืคื” 3000
CMD [ "npm", "ื”ืชื—ืœื”" ] โ€”โ€”โ€”โ€”โ€“
2- ืื ื—ื ื• ื‘ื•ื ื™ื ืืช ื”ืชืžื•ื ื”
$>ื‘ื ื™ื™ืŸ ืคื•ื“ืžืŸ...
3- ื”ื™ื›ื ืก ืœืจื™ืฉื•ื
ื›ื ื™ืกืช ืคื•ื“ืžืŸ...
4- ื”ืฆื‘ ืืช ื”ืชืžื•ื ื” ื‘ืจื™ืฉื•ื
ืคื•ื“ืžืŸ ืœื“ื—ื•ืฃ
5- ืฆื•ืจ ืงื‘ืฆื™ yaml ืœืคืจื™ืกืช ื™ื™ืฉื•ืžื™ื (deployment.yaml, service.yaml, ingress.yaml) - ื–ื”ื• ื”ืžื™ื ื™ืžื•ื ื”ืžื•ื—ืœื˜
6- ืคืจื•ืก ืงื•ื‘ืฆื™ ืžื ื™ืคืกื˜:
Kubectl ืœื”ื—ื™ืœ -f .

OpenShift/oc
$> oc new-app github.com/sclorg/nodejs-ex.git โ€“ ืฉื_ื”ืืคืœื™ืงืฆื™ื” ืฉืœื ื•

OpenShift/odo
$>ื’ื™ื˜ ืฉื™ื‘ื•ื˜ github.com/sclorg/nodejs-ex.git
$> odo ืœื™ืฆื•ืจ ืจื›ื™ื‘ nodejs myapp
$>ืื•ื“ื• ืœื“ื—ื•ืฃ

โ€ข ืžืชื’ ื”ืงืฉืจ: ืฉื ื” ืืช ืžืจื—ื‘ ืฉืžื•ืช ื”ืขื‘ื•ื“ื” ืื• ืืฉื›ื•ืœ ื”ืขื‘ื•ื“ื”.

Kubernetes/kubectl
1- ืฆื•ืจ ื”ืงืฉืจ ื‘-kubeconfig ืขื‘ื•ืจ ื”ืคืจื•ื™ืงื˜ "myproject"
2- kubectl set-context...

OpenShift/oc
oc project "myproject"

ื‘ืงืจืช ืื™ื›ื•ืช: "ื”ื•ืคื™ืขื” ื›ืืŸ ืชื›ื•ื ื” ืื—ืช ืžืขื ื™ื™ื ืช, ืขื“ื™ื™ืŸ ื‘ื’ืจืกืช ืืœืคื. ืื•ืœื™ ื ื•ื›ืœ ืœื”ื›ื ื™ืก ืืช ื–ื” ืœื™ื™ืฆื•ืจ?"

ื“ืžื™ื™ื ื• ืฉืืชื ื™ื•ืฉื‘ื™ื ื‘ืžื›ื•ื ื™ืช ืžื™ืจื•ืฅ ื•ืื•ืžืจื™ื ืœื›ื: "ื”ืชืงื ื• ืกื•ื’ ื—ื“ืฉ ืฉืœ ื‘ืœืžื™ื, ื•ืœืžืขืŸ ื”ืืžืช, ื”ืืžื™ื ื•ืช ืฉืœื”ื ืขื“ื™ื™ืŸ ืœื ื‘ืกื“ืจ... ืื‘ืœ ืืœ ื“ืื’ื”, ื ืฉืคืจ ืื•ืชื ื‘ืื•ืคืŸ ืืงื˜ื™ื‘ื™ ืžืžืฉ ื‘ืžื”ืœืš ืึทืœึดื™ืคื•ึผืช." ืื™ืš ืืชื” ืื•ื”ื‘ ืืช ื”ืคื•ื˜ื ืฆื™ืืœ ื”ื–ื”? ืื ื—ื ื• ื‘ืจื“ ื”ืื˜ ืื™ื›ืฉื”ื• ืœื ืžืื•ื“ ืžืจื•ืฆื™ื. ๐Ÿ™‚

ืœื›ืŸ, ืื ื• ืžื ืกื™ื ืœื”ืžืชื™ืŸ ืขื ื’ืจืกืื•ืช ืืœืคื ืขื“ ืฉื”ืŸ ื‘ื•ื’ืจื•ืช ืžืกืคื™ืง ื•ืขืฉื™ื ื• ื‘ื“ื™ืงื•ืช ืงืจื‘ ื™ืกื•ื“ื™ื•ืช ื•ืžืจื’ื™ืฉื™ื ืฉื”ืŸ ื‘ื˜ื•ื—ื•ืช ืœืฉื™ืžื•ืฉ. ื‘ื“ืจืš ื›ืœืœ, ื”ื›ืœ ืขื•ื‘ืจ ืชื—ื™ืœื” ืืช ืฉืœื‘ ื”-Dev Preview, ื•ืื– ืขื•ื‘ืจ ืชืฆื•ื’ื” ืžืงื“ื™ืžื” ืฉืœ ื˜ืง ื•ืจืง ืื– ื™ื•ืฆื ื›ืคืจืกื•ื ืคื•ืžื‘ื™ ื–ืžื™ื ื•ืช ื›ืœืœื™ืช (GA), ืฉื”ื•ื ื›ื‘ืจ ื›ืœ ื›ืš ื™ืฆื™ื‘ ืฉื”ื•ื ืžืชืื™ื ืœื™ื™ืฆื•ืจ.

ืœืžื”? ืžื›ื™ื•ื•ืŸ ืฉื›ืžื• ื‘ืคื™ืชื•ื— ืฉืœ ื›ืœ ืชื•ื›ื ื” ืื—ืจืช, ืœื ื›ืœ ื”ืจืขื™ื•ื ื•ืช ื”ืจืืฉื•ื ื™ื™ื ื‘-Kubernetes ืžื’ื™ืขื™ื ืœื’ืจืกื” ื”ืกื•ืคื™ืช. ืื• ืฉื”ื ืžื’ื™ืขื™ื ืืœื™ื• ื•ืืคื™ืœื• ืฉื•ืžืจื™ื ืขืœ ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ืžื™ื•ืขื“ืช, ืื‘ืœ ื”ื™ื™ืฉื•ื ืฉืœื”ื ืฉื•ื ื” ื‘ืชื›ืœื™ืช ืžื–ื” ืฉื‘ื’ืจืกืช ื”ืืœืคื. ืขื ืืœืคื™ ื•ืืœืคื™ ืœืงื•ื—ื•ืช Red Hat ืฉืžืฉืชืžืฉื™ื ื‘-OpenShift ื›ื“ื™ ืœืชืžื•ืš ื‘ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืงืจื™ื˜ื™ื™ื, ืื ื• ืฉืžื™ื ื“ื’ืฉ ืžื™ื•ื—ื“ ืขืœ ื™ืฆื™ื‘ื•ืช ื”ืคืœื˜ืคื•ืจืžื” ืฉืœื ื• ื•ืชืžื™ื›ื” ืืจื•ื›ืช ื˜ื•ื•ื—.

Red Hat ืžื—ื•ื™ื‘ืช ืœืฉื—ืจืจ ืืช OpenShift ื‘ืชื“ื™ืจื•ืช ื’ื‘ื•ื”ื” ื•ืœืขื“ื›ืŸ ืืช ื”ื’ืจืกื” ืฉืœ Kubernetes ืฉืžื’ื™ืขื” ืื™ืชื”. ืœื“ื•ื’ืžื”, ืžื”ื“ื•ืจืช ื”-GA ื”ื ื•ื›ื—ื™ืช ืฉืœ OpenShift 4.3 ื‘ื–ืžืŸ ื›ืชื™ื‘ืช ืฉื•ืจื•ืช ืืœื” ื›ื•ืœืœืช ืืช Kubernetes 1.16, ืฉื”ื™ื ื™ื—ื™ื“ื” ืื—ืช ื‘ืœื‘ื“ ืžืื—ื•ืจื™ ื’ืจืกืช ื”-Upstream ืฉืœ Kubernetes ืฉืžืกืคืจื” 1.17. ืœืคื™ื›ืš, ืื ื• ืžื ืกื™ื ืœืกืคืง ืœืœืงื•ื— Kubernetes ื‘ืจืžื” ืืจื’ื•ื ื™ืช ื•ืœืกืคืง ื‘ืงืจืช ืื™ื›ื•ืช ื ื•ืกืคืช ื›ืืฉืจ ืื ื• ืžืฉื—ืจืจื™ื ื’ืจืกืื•ืช ื—ื“ืฉื•ืช ืฉืœ OpenShift.

ืชื™ืงื•ื ื™ ืชื•ื›ื ื”: "ื”ื™ื” ื—ื•ืจ ื‘ื’ืจืกื” ืฉืœ Kubernetes ืฉื™ืฉ ืœื ื• ื‘ื™ื™ืฆื•ืจ. ื•ืืชื” ื™ื›ื•ืœ ืœืกื’ื•ืจ ืื•ืชื• ืจืง ืขืœ ื™ื“ื™ ืขื“ื›ื•ืŸ ืฉืœื•ืฉ ื’ืจืกืื•ืช ืœืžืขืœื”. ืื• ืฉื™ืฉ ืืคืฉืจื•ื™ื•ืช ื›ืœืฉื”ืŸ?

ื‘ืคืจื•ื™ืงื˜ ื”ืงื•ื“ ื”ืคืชื•ื— ืฉืœ Kubernetes, ืชื™ืงื•ื ื™ ืชื•ื›ื ื” ืžืฉื•ื—ืจืจื™ื ื‘ื“ืจืš ื›ืœืœ ื›ื—ืœืง ืžื”ืžื”ื“ื•ืจื” ื”ื‘ืื”, ื•ืœืขื™ืชื™ื ืžื›ืกื™ื ืžื”ื“ื•ืจืช ืื‘ืŸ ื“ืจืš ืงื•ื“ืžืช ืื—ืช ืื• ืฉืชื™ื™ื, ื•ืžืขื ื™ืงื™ื ื›ื™ืกื•ื™ ืื—ื•ืจื” ืจืง ืœ-6 ื—ื•ื“ืฉื™ื.

Red Hat ืžืชื’ืื” ื‘ื›ืš ืฉื”ื•ื ืžืฉื—ืจืจ ืชื™ืงื•ื ื™ื ืงืจื™ื˜ื™ื™ื ืžื•ืงื“ื ื™ื•ืชืจ ืžืื—ืจื™ื ื•ืžืกืคืง ืชืžื™ื›ื” ืœื”ืจื‘ื” ื™ื•ืชืจ ื–ืžืŸ. ืงื— ืœื“ื•ื’ืžื ืืช ืคื’ื™ืขื•ืช ื”ื”ืกืœืžื” ืฉืœ ื”ืจืฉืื•ืช Kubernetes (CVE-2018-1002105): ื”ื•ื ื”ืชื’ืœื” ื‘-Kubernetes 1.11, ื•ืชื™ืงื•ื ื™ื ืขื‘ื•ืจ ืžื”ื“ื•ืจื•ืช ืงื•ื“ืžื•ืช ืฉื•ื—ืจืจื• ืจืง ืขื“ ื’ืจืกื” 1.10.11, ืžื” ืฉืžื•ืชื™ืจ ืืช ื–ื” ื‘ื‘ื•ืจ ื‘ื›ืœ ื”ืžื”ื“ื•ืจื•ืช ื”ืงื•ื“ืžื•ืช ืฉืœ Kubernetes, ืž-1.x ืขื“ 1.9.

ื‘ืชื•ืจื•, Red Hat ืชื™ืงืŸ ืืช OpenShift ื‘ื—ื–ืจื” ืœื’ืจืกื” 3.2 (Kubernetes 1.2 ืงื™ื™ื), ืœื•ื›ื“ ืชืฉืข ืžื”ื“ื•ืจื•ืช OpenShift ื•ืžืคื’ื™ืŸ ื‘ื‘ื™ืจื•ืจ ืื›ืคืชื™ื•ืช ืœืœืงื•ื—ื•ืช (ืคืจื˜ื™ื ื ื•ืกืคื™ื ื›ืืŸ).

ื›ื™ืฆื“ OpenShift ื•-Red Hat ืžืงื“ืžื•ืช ืืช Kubernetes ืงื“ื™ืžื”

Red Hat ื”ื™ื ืชื•ืจืžืช ื”ืชื•ื›ื ื” ื”ืฉื ื™ื™ื” ื‘ื’ื•ื“ืœื” ืœืคืจื•ื™ืงื˜ Kubernetes ื‘ืงื•ื“ ืคืชื•ื—, ืžืื—ื•ืจื™ ื’ื•ื’ืœ ื‘ืœื‘ื“, ื›ืืฉืจ 3 ืžืชื•ืš 5 ื”ืžืคืชื—ื™ื ื”ืคื•ืจื™ื™ื ื‘ื™ื•ืชืจ ืžื’ื™ืขื™ื ืž-Red Hat. ืขื•ื‘ื“ื” ื ื•ืกืคืช ืฉืื™ื ื” ื™ื“ื•ืขื”: ืคื•ื ืงืฆื™ื•ืช ืงืจื™ื˜ื™ื•ืช ืจื‘ื•ืช ื”ื•ืคื™ืขื• ื‘-Kubernetes ื‘ื“ื™ื•ืง ื‘ื™ื•ื–ืžืช Red Hat, ื‘ืคืจื˜, ื›ื’ื•ืŸ:

  • RBAC. ืœ-Kubernetes ืœื ื”ื™ื• ืคื•ื ืงืฆื™ื•ืช RBAC (ClusterRole, ClusterRoleBinding) ืขื“ ืฉืžื”ื ื“ืกื™ Red Hat ื”ื—ืœื™ื˜ื• ืœื™ื™ืฉื ืื•ืชืŸ ื›ื—ืœืง ืžื”ืคืœื˜ืคื•ืจืžื” ืขืฆืžื”, ื•ืœื ื›ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื ื•ืกืคืช ืฉืœ OpenShift. ื”ืื Red Hat ืžืคื—ื“ืช ืœืฉืคืจ ืืช Kubernetes? ื›ืžื•ื‘ืŸ ืฉืœื, ื›ื™ Red Hat ืžืงืคื™ื“ื” ืขืœ ืขืงืจื•ื ื•ืช ืงื•ื“ ืคืชื•ื— ื•ืื™ื ื” ืžืฉื—ืงืช ื‘ืžืฉื—ืงื™ Open Core. ืฉื™ืคื•ืจื™ื ื•ื—ื™ื“ื•ืฉื™ื ื”ืžื•ื ืขื™ื ืขืœ ื™ื“ื™ ืงื”ื™ืœื•ืช ืคื™ืชื•ื—, ื•ืœื ืžืงื”ื™ืœื•ืช ืงื ื™ื™ื ื™ื•ืช, ื”ื ืงื™ื™ืžืื™ื ื™ื•ืชืจ ื•ืžืื•ืžืฆื™ื ื™ื•ืชืจ, ืžื” ืฉืžืชืื™ื ื”ื™ื˜ื‘ ืœื™ืขื“ ื”ืœื™ื‘ื” ืฉืœื ื• ืœื”ืคื•ืš ืชื•ื›ื ืช ืงื•ื“ ืคืชื•ื— ืœืฉื™ืžื•ืฉื™ืช ื™ื•ืชืจ ืœืœืงื•ื—ื•ืชื™ื ื•.
  • ืžื“ื™ื ื™ื•ืช ืื‘ื˜ื—ื” ืขื‘ื•ืจ ืคื•ื“ื™ื (Pod Security Policies). ื”ืจืขื™ื•ืŸ ื”ื–ื” ืฉืœ ื”ืคืขืœืช ื™ื™ืฉื•ืžื™ื ื‘ืฆื•ืจื” ืžืื•ื‘ื˜ื—ืช ื‘ืชื•ืš ืคื•ื“ื™ื ื™ื•ืฉื ื‘ืžืงื•ืจ ื‘-OpenShift ืชื—ืช ื”ืฉื SCC (Security Context Constraints). ื•ื›ืžื• ื‘ื“ื•ื’ืžื” ื”ืงื•ื“ืžืช, Red Hat ื”ื—ืœื™ื˜ื” ืœื”ื›ื ื™ืก ืืช ื”ืคื™ืชื•ื—ื™ื ื”ืœืœื• ืœืคืจื•ื™ืงื˜ Kubernetes ื”ืคืชื•ื— ื›ื“ื™ ืฉื›ื•ืœื ื™ื•ื›ืœื• ืœื”ืฉืชืžืฉ ื‘ื”ื.

ืืคืฉืจ ืœื”ืžืฉื™ืš ื‘ืกื“ืจืช ื”ื“ื•ื’ืžืื•ืช ื”ื–ื•, ืื‘ืœ ืจืง ืจืฆื™ื ื• ืœื”ืจืื•ืช ืฉ-Red Hat ื‘ืืžืช ืžื—ื•ื™ื‘ืช ืœืคืชื— Kubernetes ื•ืœื”ืคื•ืš ืื•ืชื” ืœื˜ื•ื‘ื” ื™ื•ืชืจ ืขื‘ื•ืจ ื›ื•ืœื.

ื‘ืจื•ืจ ืฉ-OpenShift ื–ื” Kubernetes. ืžื”ื ื”ื”ื‘ื“ืœื™ื? ๐Ÿ™‚

ืื ื• ืžืงื•ื•ื™ื ื›ื™ ื‘ืงืจื™ืื” ืขื“ ื›ืืŸ ื”ื‘ื ืช ืฉ-Kubernetes ื”ื•ื ืžืจื›ื™ื‘ ื”ืœื™ื‘ื” ืฉืœ OpenShift. ื”ืขื™ืงืจื™ืช, ืื‘ืœ ืจื—ื•ืงื” ืžืœื”ื™ื•ืช ื”ื™ื—ื™ื“ื”. ื‘ืžื™ืœื™ื ืื—ืจื•ืช, ืคืฉื•ื˜ ื”ืชืงื ืช Kubernetes ืœื ืชื™ืชืŸ ืœืš ืคืœื˜ืคื•ืจืžื” ื‘ืจืžื” ืืจื’ื•ื ื™ืช. ื™ื”ื™ื” ืขืœื™ืš ืœื”ื•ืกื™ืฃ ืื™ืžื•ืช, ืจืฉืช, ืื‘ื˜ื—ื”, ื ื™ื˜ื•ืจ, ื ื™ื”ื•ืœ ื™ื•ืžื ื™ื ื•ืขื•ื“. ื‘ื ื•ืกืฃ, ืชืฆื˜ืจืš ืœืขืฉื•ืช ื›ืžื” ื‘ื—ื™ืจื•ืช ืงืฉื•ืช ืžืชื•ืš ื”ืžืกืคืจ ื”ืจื‘ ืฉืœ ื”ื›ืœื™ื ื”ื–ืžื™ื ื™ื (ื›ื“ื™ ืœื”ืขืจื™ืš ืืช ื”ืžื’ื•ื•ืŸ ืฉืœ ื”ืžืขืจื›ืช ื”ืืงื•ืœื•ื’ื™ืช, ืคืฉื•ื˜ ืชืกืชื›ืœ ืชืจืฉื™ื CNCF) ื•ืื™ื›ืฉื”ื• ืœื”ื‘ื˜ื™ื— ืขืงื‘ื™ื•ืช ื•ืงื•ื”ืจื ื˜ื™ื•ืช ื›ืš ืฉื”ื ื™ืขื‘ื“ื• ื›ืื—ื“. ื‘ื ื•ืกืฃ, ืชืฆื˜ืจืš ื‘ืื•ืคืŸ ืงื‘ื•ืข ืœื‘ืฆืข ืขื“ื›ื•ื ื™ื ื•ื‘ื“ื™ืงื•ืช ืจื’ืจืกื™ื” ื‘ื›ืœ ืคืขื ืฉืชืฉื•ื—ืจืจ ื’ืจืกื” ื—ื“ืฉื” ืฉืœ ื›ืœ ืื—ื“ ืžื”ืจื›ื™ื‘ื™ื ืฉื‘ื”ื ืืชื” ืžืฉืชืžืฉ. ื›ืœื•ืžืจ, ื‘ื ื•ืกืฃ ืœื™ืฆื™ืจื” ื•ืชื—ื–ื•ืงื” ืฉืœ ื”ืคืœื˜ืคื•ืจืžื” ืขืฆืžื”, ืชืฆื˜ืจื›ื• ืœื”ืชืขืกืง ื’ื ืขื ื›ืœ ื”ืชื•ื›ื ื•ืช ื”ืœืœื•. ืœื ืกื‘ื™ืจ ืฉื™ื™ืฉืืจ ื”ืจื‘ื” ื–ืžืŸ ืœืคืชื•ืจ ื‘ืขื™ื•ืช ืขืกืงื™ื•ืช ื•ืœื”ืฉื™ื’ ื™ืชืจื•ื ื•ืช ืชื—ืจื•ืชื™ื™ื.

ืื‘ืœ ื‘ืžืงืจื” ืฉืœ OpenShift, Red Hat ืœื•ืงื— ืขืœ ืขืฆืžื• ืืช ื›ืœ ื”ืžื•ืจื›ื‘ื•ื™ื•ืช ื”ืœืœื• ื•ืคืฉื•ื˜ ื ื•ืชืŸ ืœืš ืคืœื˜ืคื•ืจืžื” ืฉืœืžื” ืžื‘ื—ื™ื ื” ืคื•ื ืงืฆื™ื•ื ืœื™ืช, ืฉื›ื•ืœืœืช ืœื ืจืง ืืช Kubernetes ืขืฆืžื”, ืืœื ื’ื ืืช ื›ืœ ื”ืกื˜ ืฉืœ ื›ืœื™ ื”ืงื•ื“ ื”ืคืชื•ื— ื”ื”ื›ืจื—ื™ื™ื ืฉื”ื•ืคื›ื™ื ืืช Kubernetes ืœืžืขืžื“ ืืจื’ื•ื ื™ ืืžื™ืชื™. ืคืชืจื•ืŸ ืฉืชื•ื›ืœื• ืœื”ืฉื™ืง ื‘ืื•ืคืŸ ืžื™ื™ื“ื™ ื•ื‘ืฉืœื•ื•ื” ืœื™ื™ืฆื•ืจ. ื•ื›ืžื•ื‘ืŸ, ืื ื™ืฉ ืœืš ื›ืžื” ืžืขืจื™ืžื•ืช ื˜ื›ื ื•ืœื•ื’ื™ื” ืžืฉืœืš, ืื– ืืชื” ื™ื›ื•ืœ ืœืฉืœื‘ ืืช OpenShift ื‘ืคืชืจื•ื ื•ืช ืงื™ื™ืžื™ื.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
OpenShift ื”ื™ื ืคืœื˜ืคื•ืจืžืช Kubernetes ื—ื›ืžื”

ืชืกืชื›ืœ ืขืœ ื”ืชืžื•ื ื” ืœืžืขืœื”: ื›ืœ ืžื” ืฉื ืžืฆื ืžื—ื•ืฅ ืœืžืœื‘ืŸ Kubernetes ื”ื•ื ื”ืžืงื•ื ืฉื‘ื• Red Hat ืžื•ืกื™ืฃ ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืฉืื™ืŸ ืœ-Kubernetes, ื›ืžื• ืฉืื•ืžืจื™ื, ืขื™ืฆื•ื‘ ื ืœื•ื•ื”. ื•ืขืชื” ื ืกืชื›ืœ ืขืœ ืขื™ืงืจ ื”ืชื—ื•ืžื™ื ื”ืœืœื•.

1. ืžืขืจื›ืช ื”ืคืขืœื” ื—ื–ืงื” ื›ื‘ืกื™ืก: RHEL CoreOS ืื• RHEL

Red Hat ื”ื™ื ืกืคืงื™ืช ืžื•ื‘ื™ืœื” ืฉืœ ื”ืคืฆื•ืช ืœื™ื ื•ืงืก ืœื™ื™ืฉื•ืžื™ื ืงืจื™ื˜ื™ื™ื ืœืขืกืงื™ื ื›ื‘ืจ ื™ื•ืชืจ ืž-20 ืฉื ื”. ื”ื ื™ืกื™ื•ืŸ ื”ืžืฆื˜ื‘ืจ ื•ื”ืžืชืขื“ื›ืŸ ืฉืœื ื• ื‘ืชื—ื•ื ื–ื” ืžืืคืฉืจ ืœื ื• ืœื”ืฆื™ืข ื‘ืกื™ืก ืืžื™ืŸ ื•ืžื”ื™ืžืŸ ื‘ืืžืช ืœืชืคืขื•ืœ ืชืขืฉื™ื™ืชื™ ืฉืœ ืžื›ื•ืœื•ืช. RHEL CoreOS ืžืฉืชืžืฉ ื‘ืื•ืชื• ืœื™ื‘ื” ื›ืžื• RHEL, ืืš ืžื•ืชืื ื‘ืขื™ืงืจ ืœืžืฉื™ืžื•ืช ื›ืžื• ื”ืคืขืœืช ืงื•ื ื˜ื™ื™ื ืจื™ื ื•ื”ืคืขืœืช ืืฉื›ื•ืœื•ืช Kubernetes: ื”ื’ื•ื“ืœ ื”ืžื•ืคื—ืช ื•ื”ืื™-ืฉื™ื ื•ื™ ืฉืœื• ืžืงืœื™ื ืขืœ ื”ื’ื“ืจืช ืืฉื›ื•ืœื•ืช, ืงื ื” ืžื™ื“ื” ืื•ื˜ื•ืžื˜ื™, ืคืจื™ืกืช ืชื™ืงื•ื ื™ื ื•ื›ื•'. ื›ืœ ื”ืชื›ื•ื ื•ืช ื”ืœืœื• ื”ื•ืคื›ื•ืช ืืช ื–ื” ื‘ืกื™ืก ืื™ื“ื™ืืœื™ ืœืืกืคืงืช ื—ื•ื•ื™ืช ืžืฉืชืžืฉ ื–ื”ื” ืขื OpenShift ื‘ืžื’ื•ื•ืŸ ืจื—ื‘ ืฉืœ ืกื‘ื™ื‘ื•ืช ืžื—ืฉื•ื‘, ืžืžืชื›ืช ื—ืฉื•ืคื” ื•ืขื“ ืขื ืŸ ืคืจื˜ื™ ื•ืฆื™ื‘ื•ืจื™.

2. ืื•ื˜ื•ืžืฆื™ื” ืฉืœ ืชืคืขื•ืœ IT

ืื•ื˜ื•ืžืฆื™ื” ืฉืœ ืชื”ืœื™ื›ื™ ื”ืชืงื ื” ื•ืคืขื•ืœื•ืช ื™ื•ื 4 (ื›ืœื•ืžืจ, ืคืขื•ืœื•ืช ื™ื•ืžื™ื•ืžื™ื•ืช) ื”ื™ื ื”ืฆื“ ื”ื—ื–ืง ืฉืœ OpenShift, ืžื” ืฉืžืงืœ ื‘ื”ืจื‘ื” ืขืœ ื ื™ื”ื•ืœ, ืขื“ื›ื•ืŸ ื•ืชื—ื–ื•ืงื” ืฉืœ ื‘ื™ืฆื•ืขื™ ืคืœื˜ืคื•ืจืžืช ื”ืงื•ื ื˜ื™ื™ื ืจ ื‘ืจืžื” ื”ื’ื‘ื•ื”ื” ื‘ื™ื•ืชืจ. ื–ื” ืžื•ืฉื’ ื‘ืืžืฆืขื•ืช ืชืžื™ื›ื” ื‘ืžืคืขื™ืœื™ Kubernetes ื‘ืจืžืช ืœื™ื‘ืช OpenShift XNUMX.

OpenShift 4 ื”ื™ื ื’ื ืžืขืจื›ืช ืืงื•ืœื•ื’ื™ืช ืฉืœืžื” ืฉืœ ืคืชืจื•ื ื•ืช ื”ืžื‘ื•ืกืกื™ื ืขืœ ืžืคืขื™ืœื™ Kubernetes, ืฉืคื•ืชื—ื• ื”ืŸ ืขืœ ื™ื“ื™ Red Hat ืขืฆืžื” ื•ื”ืŸ ืขืœ ื™ื“ื™ ืฉื•ืชืคื™ื ืฉืœ ืฆื“ ืฉืœื™ืฉื™ (ืจืื”. ืกืคืจื™ื™ืช ื”ืžืคืขื™ืœื™ื Red Hat, ืื• ื—ื ื•ืช ืžืคืขื™ืœ operatorhub.io, ืฉื ื•ืฆืจ ืขืœ ื™ื“ื™ Red Hat ืขื‘ื•ืจ ืžืคืชื—ื™ ืฆื“ ืฉืœื™ืฉื™).

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ื”ืงื˜ืœื•ื’ ื”ืžืฉื•ืœื‘ ืฉืœ OpenShift 4 ื›ื•ืœืœ ื™ื•ืชืจ ืž-180 ืžืคืขื™ืœื™ Kubernetes

3. ื›ืœื™ื ืœืžืคืชื—ื™ื

ืžืื– 2011, OpenShift ื–ืžื™ื ื” ื›ืคืœื˜ืคื•ืจืžืช PaaS (Platform-as-a-Service) ืฉืžืงืœื” ื‘ื”ืจื‘ื” ืขืœ ืžืคืชื—ื™ื, ืขื•ื–ืจืช ืœื”ื ืœื”ืชืžืงื“ ื‘ืงื™ื“ื•ื“ ื•ืžืฆื™ืขื” ืชืžื™ื›ื” ืžืงื•ืจื™ืช ืœืฉืคื•ืช ืชื›ื ื•ืช ื›ืžื• Java, Node.js , PHP, Ruby, Python, Go, ื›ืžื• ื’ื ืฉื™ืจื•ืชื™ ืื™ื ื˜ื’ืจืฆื™ื” ื•ืžืฉืœื•ื— ืจืฆื™ืคื™ื ืฉืœ CI/CD, ืžืกื“ื™ ื ืชื•ื ื™ื ื•ื›ื•'. OpenShift 4 ืžืฆื™ืข ืงื˜ืœื•ื’ ื ืจื—ื‘, ื”ื›ื•ืœืœ ื™ื•ืชืจ ืž-100 ืฉื™ืจื•ืชื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืžืคืขื™ืœื™ Kubernetes ืฉืคื•ืชื—ื• ืขืœ ื™ื“ื™ Red Hat ื•ื”ืฉื•ืชืคื™ื ืฉืœื ื•.

ืฉืœื ื›ืžื• Kubernetes, ืœ-OpenShift 4 ื™ืฉ GUI ื™ื™ืขื•ื“ื™ (ืงื•ื ืกื•ืœืช ื”ืžืคืชื—ื™ื), ื”ืžืกื™ื™ืขืช ืœืžืคืชื—ื™ื ืœืคืจื•ืก ืœืœื ืžืืžืฅ ื™ื™ืฉื•ืžื™ื ืžืžืงื•ืจื•ืช ืฉื•ื ื™ื (git, ืจื™ืฉื•ื ื—ื™ืฆื•ื ื™, Dockerfile ื•ื›ื•') ืœืชื•ืš ืžืจื—ื‘ื™ ื”ืฉืžื•ืช ืฉืœื”ื ื•ืžื“ืžื™ื™ื ืช ื‘ื‘ื™ืจื•ืจ ืืช ื”ืงืฉืจื™ื ื‘ื™ืŸ ืจื›ื™ื‘ื™ ื”ืืคืœื™ืงืฆื™ื”.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ืžืกื•ืฃ ื”ืžืคืชื—ื™ื ืžืกืคืง ืชืฆื•ื’ื” ื‘ืจื•ืจื” ืฉืœ ืจื›ื™ื‘ื™ ื”ืืคืœื™ืงืฆื™ื” ื•ืžืงืœ ืขืœ ื”ืขื‘ื•ื“ื” ืขื Kubernetes

ื‘ื ื•ืกืฃ, OpenShift ืžืฆื™ืขื” ืงื‘ื•ืฆื” ืฉืœ ื›ืœื™ ืคื™ืชื•ื— Codeready, ื”ื›ื•ืœืœื™ื, ื‘ืžื™ื•ื—ื“ ืกื‘ื™ื‘ื•ืช ืขื‘ื•ื“ื” ืžื•ื›ื ื•ืช ืœืงื•ื“, IDE ืขื ืžื™ื›ืœ ืžืœื ืขื ืžืžืฉืง ืื™ื ื˜ืจื ื˜ ื”ืคื•ืขืœ ื™ืฉื™ืจื•ืช ืขืœ ื’ื‘ื™ OpenShift ื•ืžื™ื™ืฉื ื’ื™ืฉืช IDE-as-a-service. ืžืฆื“ ืฉื ื™, ืœืžื™ ืฉืจื•ืฆื” ืœืขื‘ื•ื“ ืืš ื•ืจืง ื‘ืžืฆื‘ ืžืงื•ืžื™, ื™ืฉ Codeready Containers, ื’ืจืกื” ืคื•ื ืงืฆื™ื•ื ืœื™ืช ืžืœืื” ืฉืœ OpenShift 4 ืฉื ื™ืชืŸ ืœืคืจื•ืก ืขืœ ืžื—ืฉื‘ ื ื™ื™ื“.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
IDE ืžืฉื•ืœื‘ ื›ืฉื™ืจื•ืช ืœืคื™ืชื•ื— ื™ืขื™ืœ ื‘ืคืœื˜ืคื•ืจืžืช Kubernetes/OpenShift

OpenShift ืžืฆื™ืขื” ืžืขืจื›ืช CI/CD ืžืœืื” ื™ืฉื™ืจื•ืช ืžื”ืงื•ืคืกื”, ื‘ื™ืŸ ืื ืžื‘ื•ืกืกืช ืขืœ Jenkins ืžื›ื•ืœื•ืช ื•ืชื•ืกืฃ DSL ืœืขื‘ื•ื“ื” ืขื ืฆื™ื ื•ืจื•ืช, ืื• ืžืขืจื›ืช CI/CD ืžื•ื›ื•ื•ื ืช Kubernetes ื˜ืงื˜ื•ืŸ (ื›ืจื’ืข ื‘ื’ืจืกืช ืชืฆื•ื’ื” ืžืงื“ื™ืžื” ืฉืœ Tech). ืฉื ื™ ื”ืคืชืจื•ื ื•ืช ื”ืœืœื• ืžืฉืชืœื‘ื™ื ื‘ืžืœื•ืื ืขื ืงื•ื ืกื•ืœืช OpenShift, ื•ืžืืคืฉืจื™ื ืœืš ืœื”ืคืขื™ืœ ื˜ืจื™ื’ืจื™ื ืฉืœ ืฆื™ื ื•ืจื•ืช, ืœื”ืฆื™ื’ ืคืจื™ืกื•ืช, ื™ื•ืžื ื™ื ื•ืขื•ื“.

4. ื›ืœื™ ื™ื™ืฉื•ื

OpenShift ืžืืคืฉืจืช ืœืš ืœืคืจื•ืก ื’ื ื™ื™ืฉื•ืžื™ื ืžื“ื™ื ืชื™ื™ื ืžืกื•ืจืชื™ื™ื ื•ื’ื ืคืชืจื•ื ื•ืช ืžื‘ื•ืกืกื™ ืขื ืŸ ื”ืžื‘ื•ืกืกื™ื ืขืœ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื—ื“ืฉื•ืช, ื›ื’ื•ืŸ ืฉื™ืจื•ืชื™ ืžื™ืงืจื• ืื• ืœืœื ืฉืจืชื™ื. ืคืชืจื•ืŸ OpenShift Service Mesh ืžื’ื™ืข ื™ืฉื™ืจื•ืช ืžื”ืงื•ืคืกื” ืขื ื›ืœื™ื ืžืจื›ื–ื™ื™ื ืœืชื—ื–ื•ืงืช ืฉื™ืจื•ืชื™ ืžื™ืงืจื•, ื›ื’ื•ืŸ Istio, Kiali ื•-Jaeger. ื‘ืชื•ืจื•, ื”ืคืชืจื•ืŸ OpenShift Serverless ื›ื•ืœืœ ืœื ืจืง Knative, ืืœื ื’ื ื›ืœื™ื ื›ืžื• Keda ืฉื ื•ืฆืจื• ื›ื—ืœืง ืžื™ื•ื–ืžื” ืžืฉื•ืชืคืช ืขื ืžื™ืงืจื•ืกื•ืคื˜ ืœืกืคืง ืคื•ื ืงืฆื™ื•ืช Azure ื‘ืคืœื˜ืคื•ืจืžืช OpenShift.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ื”ืคืชืจื•ืŸ ื”ืžืฉื•ืœื‘ OpenShift ServiceMesh (Istio, Kiali, Jaeger) ื™ื”ื™ื” ืฉื™ืžื•ืฉื™ ื‘ืขืช ืคื™ืชื•ื— ืฉื™ืจื•ืชื™ ืžื™ืงืจื•

ื›ื“ื™ ืœื’ืฉืจ ืขืœ ื”ืคืขืจ ื‘ื™ืŸ ืืคืœื™ืงืฆื™ื•ืช ืžื“ื•ืจ ืงื•ื“ื ืœืžื›ื•ืœื•ืช, OpenShift ืžืืคืฉืจืช ื›ืขืช ื”ื’ื™ืจื” ืฉืœ ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ืœืคืœื˜ืคื•ืจืžืช OpenShift ื‘ืืžืฆืขื•ืช Container Native Virtualization (ื›ื™ื•ื ื‘-TechPreview), ืžื” ืฉื”ื•ืคืš ืืคืœื™ืงืฆื™ื•ืช ื”ื™ื‘ืจื™ื“ื™ื•ืช ืœืžืฆื™ืื•ืช ื•ืžืงืœื” ืขืœ ื”ื”ื’ื™ืจื” ืฉืœื”ืŸ ื‘ื™ืŸ ืขื ื ื™ื ืฉื•ื ื™ื, ืคืจื˜ื™ื™ื ื•ืฆื™ื‘ื•ืจื™ื™ื ื›ืื—ื“.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช ื•ื™ืจื˜ื•ืืœื™ืช ืฉืœ Windows 2019 ื”ืคื•ืขืœืช ื‘-OpenShift ื‘ืืžืฆืขื•ืช Container Native Virtualization (ื›ืจื’ืข ื‘ื’ืจืกืช ืชืฆื•ื’ื” ืžืงื“ื™ืžื” ืฉืœ Tech)

5. ื›ืœื™ื ืœืืฉื›ื•ืœื•ืช

ื›ืœ ืคืœื˜ืคื•ืจืžื” ื‘ืจืžื” ืืจื’ื•ื ื™ืช ื—ื™ื™ื‘ืช ืœื”ื™ื•ืช ื‘ืขืœืช ืฉื™ืจื•ืชื™ ื ื™ื˜ื•ืจ ื•ืจื™ืฉื•ื ืžืจื›ื–ื™, ืžื ื’ื ื•ื ื™ ืื‘ื˜ื—ื”, ืื™ืžื•ืช ื•ื”ืจืฉืื” ื•ื›ืœื™ ื ื™ื”ื•ืœ ืจืฉืช. ื•-OpenShift ืžืกืคืงืช ืืช ื›ืœ ื–ื” ืžื—ื•ืฅ ืœืงื•ืคืกื”, ื•ื”ื›ื•ืœ 100% ืงื•ื“ ืคืชื•ื—, ื›ื•ืœืœ ืคืชืจื•ื ื•ืช ื›ืžื• ElasticSearch, Prometheus, Grafana. ื›ืœ ื”ืคืชืจื•ื ื•ืช ื”ืœืœื• ืžื’ื™ืขื™ื ืขื ืœื•ื—ื•ืช ืžื—ื•ื•ื ื™ื, ืžื“ื“ื™ื ื•ื”ืชืจืื•ืช ืฉื›ื‘ืจ ื‘ื ื•ื™ื™ื ื•ืžื•ื’ื“ืจื™ื ืชื•ืš ืฉื™ืžื•ืฉ ื‘ืžื•ืžื—ื™ื•ืช ื”ื ืจื—ื‘ืช ืฉืœ ืจื“ ื”ืื˜ ื‘ื ื™ื˜ื•ืจ ืืฉื›ื•ืœื•ืช, ื”ืžืืคืฉืจื™ื ืœืš ืœืฉืœื•ื˜ ื•ืœื ื˜ืจ ื‘ื™ืขื™ืœื•ืช ืืช ืกื‘ื™ื‘ืช ื”ื™ื™ืฆื•ืจ ืฉืœืš ื›ื‘ืจ ืžื”ื”ืชื—ืœื”.

OpenShift ืžื’ื™ืขื” ื’ื ื›ืกื˜ื ื“ืจื˜ ืขื ื“ื‘ืจื™ื ื—ืฉื•ื‘ื™ื ืขื‘ื•ืจ ืœืงื•ื—ื•ืช ืืจื’ื•ื ื™ื™ื ื›ืžื• ืื™ืžื•ืช ืขื ืกืคืง OAuth ืžื•ื‘ื ื”, ืื™ื ื˜ื’ืจืฆื™ื” ืขื ืกืคืงื™ ืื™ืฉื•ืจื™ื, ื›ื•ืœืœ LDAP, ActiveDirectory, OpenID Connect ื•ืขื•ื“ ื”ืจื‘ื” ื™ื•ืชืจ.

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ืœื•ื— ื”ืžื—ื•ื•ื ื™ื Grafana ืžื•ื’ื“ืจ ืžืจืืฉ ืœื ื™ื˜ื•ืจ ืืฉื›ื•ืœื•ืช OpenShift

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
ืœืžืขืœื” ืž-150 ืžื“ื“ื™ Prometheus ื•ื”ืชืจืื•ืช ืฉื”ื•ื’ื“ืจื• ืžืจืืฉ ืขื‘ื•ืจ ื ื™ื˜ื•ืจ ืืฉื›ื•ืœ OpenShift

ื”ืžืฉืš ื™ื‘ื•ื

ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ืขืฉื™ืจื” ืฉืœ ื”ืคืชืจื•ืŸ ื•ื”ื ื™ืกื™ื•ืŸ ื”ืจื‘ ืฉืœ Red Hat ื‘ืชื—ื•ื Kubernetes ื”ื ื”ืกื™ื‘ื•ืช ืœื›ืš ืฉ-OpenShift ื”ืฉื™ื’ื” ืขืžื“ื” ื“ื•ืžื™ื ื ื˜ื™ืช ื‘ืฉื•ืง, ื›ืคื™ ืฉืžื•ืฆื’ ื‘ืื™ื•ืจ ืœืžื˜ื” (ืงืจื ืขื•ื“ ื›ืืŸ).

OpenShift ื›ื’ืจืกื” ืืจื’ื•ื ื™ืช ืฉืœ Kubernetes. ื—ืœืง 1
"ืจื“ ื”ืื˜ ืžื•ื‘ื™ืœื” ื›ื™ื•ื ืืช ื”ืฉื•ืง ืขื ื ืชื— ืฉืœ 44%.
ื”ื—ื‘ืจื” ืงื•ื˜ืคืช ืืช ื”ื™ืชืจื•ื ื•ืช ืฉืœ ืืกื˜ืจื˜ื’ื™ื™ืช ื”ืžื›ื™ืจื” ื”ืžืžื•ืงื“ืช ื‘ืœืงื•ื—ื•ืช ืฉืœื”, ืฉื‘ื” ื”ื™ื ืžื™ื™ืขืฆืช ืชื—ื™ืœื” ื•ืžืืžื ืช ืžืคืชื—ื™ื ืืจื’ื•ื ื™ื™ื ื•ืœืื—ืจ ืžื›ืŸ ืขื•ื‘ืจืช ืœืžื•ื ื˜ื™ื–ืฆื™ื” ื›ืฉื”ืืจื’ื•ืŸ ืžืชื—ื™ืœ ืœืคืจื•ืก ืงื•ื ื˜ื™ื™ื ืจื™ื ืœื™ื™ืฆื•ืจ."

(ืžึธืงื•ึนืจ: www.lightreading.com/nfv/containers/ihs-red-hat-container-strategy-is-paying-off/d/d-id/753863)

ืื ื• ืžืงื•ื•ื™ื ืฉื ื”ื ื™ืช ืžื”ืžืืžืจ ื”ื–ื”. ื‘ืคื•ืกื˜ื™ื ืขืชื™ื“ื™ื™ื ื‘ืกื“ืจื” ื–ื•, ื ืกืงื•ืจ ืžืงืจื•ื‘ ืืช ื”ื™ืชืจื•ื ื•ืช ืฉืœ OpenShift ืขืœ ืคื ื™ Kubernetes ื‘ื›ืœ ืื—ืช ืžื”ืงื˜ื’ื•ืจื™ื•ืช ื”ื ื“ื•ื ื•ืช ื›ืืŸ.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”