Я добровольно управляю (разрабатываю и принимаю) общественный проект. Значит время и деньги тесны. В настоящее время он работает на голой железной машине в AWS (t2.micro, (1 vCPU, 1 ГБ памяти)).
В целях обучения я хотел бы контейнировать свое приложение. Сейчас я ищу хостинг. Google Cloud Plattform кажется мне самым дешевым.
Я настроил кластер Kubernetes с 1 узлом (1.10.9-gke.5, g1-small (1 виртуальный ЦП, 1,7 ГБ памяти)).
После того как я настроил кластер Kubernetes с одним узлом, я проверил, сколько памяти и ЦП уже используется системой Kubernetes. (Пожалуйста, смотрите узел описания kubectl).
Мне было интересно, смогу ли я запустить следующее приложение с 30% ЦП и 30% памяти, оставшейся на узле. К сожалению, у меня нет опыта того, сколько понадобится контейнеру в моем примере с точки зрения ресурсов. Но наличие только 30% процессорного времени и 30% оставшейся памяти не так много для моего вида приложений.
kubectl описать узел
Non-terminated Pods: (9 in total)
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits
--------- ---- ------------ ---------- --------------- -------------
kube-system event-exporter-v0.2.3-54f94754f4-bznpk 0 (0%) 0 (0%) 0 (0%) 0 (0%)
kube-system fluentd-gcp-scaler-6d7bbc67c5-pbrq4 0 (0%) 0 (0%) 0 (0%) 0 (0%)
kube-system fluentd-gcp-v3.1.0-fjbz6 100m (10%) 0 (0%) 200Mi (17%) 300Mi (25%)
kube-system heapster-v1.5.3-66b7745959-4zbcl 138m (14%) 138m (14%) 301456Ki (25%) 301456Ki (25%)
kube-system kube-dns-788979dc8f-krrtt 260m (27%) 0 (0%) 110Mi (9%) 170Mi (14%)
kube-system kube-dns-autoscaler-79b4b844b9-vl4mw 20m (2%) 0 (0%) 10Mi (0%) 0 (0%)
kube-system kube-proxy-gke-spokesman-cluster-default-pool-d70d068f-wjtk 100m (10%) 0 (0%) 0 (0%) 0 (0%)
kube-system l7-default-backend-5d5b9874d5-cgczj 10m (1%) 10m (1%) 20Mi (1%) 20Mi (1%)
kube-system metrics-server-v0.2.1-7486f5bd67-ctbr2 53m (5%) 148m (15%) 154Mi (13%) 404Mi (34%)
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
CPU Requests CPU Limits Memory Requests Memory Limits
------------ ---------- --------------- -------------
681m (72%) 296m (31%) 807312Ki (67%) 1216912Ki (102%)
Вот мое приложение
PROD:
API: ASP.NET core 1.1 (microsoft/dotnet:1.1-runtime-stretch)
Frontend: Angular app (nginx:1.15-alpine)
Admin: Angular app (nginx:1.15-alpine)
TEST:
API: ASP.NET core 1.1 (microsoft/dotnet:1.1-runtime-stretch)
Frontend: Angular app (nginx:1.15-alpine)
Admin: Angular app (nginx:1.15-alpine)
SHARDED
Database: Postgres (postgres:11-alpine)
Любые предложения приветствуются.
Заранее спасибо!