KamoCRM لا يعمل على منصة شخص آخر كخدمة. إنه يعمل على RKE2 Kubernetes cluster نبنيه، ونشغله ونستيقظ عليه - مع تخزيننا الخاص، والدخول، وأتمتة الشهادات، والافتراضية، وسجل الصور. كل ما نعرفه عن شحن البرمجيات التي تبقى على قيد الحياة، تعلمناه هنا، على نفقتنا الخاصة.
| الإجراء | القيمة | المصدر | المقيسة |
|---|---|---|---|
| عمليات النشر في المجموعة | 106 | kubectl get deploy --all-namespaces | |
| مركبات ركاب | 267 | kubectl get pods --all-namespaces | |
| عبء العمل المرتبط بالحالات | 22 | kubectl get statefulsets --all-namespaces | |
| حيز الأسماء | 19 | kubectl get namespaces | |
| شهادات TLS الخاضعة للإدارة الآلية | 211 | kubectl get certificate --all-namespaces (cert-manager) | |
| طرق الدخول | 40 | kubectl get ingressroute --all-namespaces (Traefik) | |
| زمن تشغيل عقدة مستوى التحكم | 266 days | kubectl get nodes -o wide, AGE column | |
| النسخة Kubernetes | v1.35.6+rke2r1 | kubectl get nodes -o wide, VERSION column |
ما المبنى الذي علمنا
كان من الأسهل استئجارها. إن الخدمات المدارة Kubernetes موجودة، وهي جيدة، واختيارها كان ليزيل فئة كاملة من المشاكل من حياتنا. ونحن ندير خدماتنا لأن المنصة تحمل أشياء لا تستضيفها لك الخدمات المدارة بسعر معقول ــ الاتصالات الهاتفية التي تحتاج إلى تحكم حقيقي في الشبكة، ووسائط WebRTC التي تحتاج إلى مسارات UDP قابلة للتنبؤ، والاستدلال الذي يحتاج إلى معدات ــ ولأن الشركة التي تبيع كفاءة البنية الأساسية ينبغي أن تكون قادرة على إثباتها بدلاً من وصفها.
تحمل المجموعة Longhorn للتخزين الكتليّ المكرَّر، وTraefik للدخول، وcert-manager لإصدار الشهادات لكل اسم مضيف، وKubeVirt لأحمال العمل التي تحتاج حقاً إلى آلة افتراضية، وسجل خاص. الشهادات وحدها هي مثال جيد على لماذا يعلم التشغيل الأشياء التي لا تعلمها القراءة: فهي تصدر لكل اسم مؤهل تماماً وبشكل متسلسل، لذا فإن المستأجر الذي يضيف اسم مضيف ولا ينتظر يرى شهادة موقعة ذاتياً على مضيف واحد بالضبط ويستنتج أن النظام بأكمله معطوب. لا تتعلم ذلك من الوثائق. تتعلمه من تذكرة الدعم.
كانت الفشلات تعليمية بالطريقة التي تكون بها فشلاتنا وحدها. هجرة مخطط جعلت كل خدمة تعيد أخطاء لمدة ربع ساعة لأن مجمعات الاتصال كانت تحتفظ بنسخة أقدم من الكتالوج. عقدة كانت واجهة شبكة ثانية بها تفسد عمليات نقل كبيرة بشكل متقطع، مما بدا وكأنه خطأ في البرمجيات لفترة طويلة. حدود الذاكرة التي كانت جيدة حتى لم يوافق جمع القمامة. كل واحد من هذه الأشياء هو الآن شيء نصممه ضد عمل العميل، لأننا دفعنا للدرس بالفعل.
هذا هو الفرق الذي نبيعه في واقع الأمر. إن شركة تطوير لم تشغل أبداً ما بنته سوف تسلمك مستودعاً وفاتورة، وسوف تكون أول حادثة إنتاج لك وحدك. ونحن نكتب كتب التشغيل لأننا احتجنا إليها في الساعة الثانية صباحاً.
بنيت بـ
- Kubernetes (RKE2)
- Traefik
- cert-manager
- Longhorn
- KubeVirt
- containerd
- Docker registry
- Ubuntu
أخبرنا ماذا تحاول أن تفعل
إن محادثة قصيرة تكفي عادة لمعرفة ما إذا كنا الشخص المناسب. وإذا لم نكن، فسوف نقول ذلك ونشير إليك إلى مكان أفضل.
