{"id":35581,"date":"2019-10-31T22:05:09","date_gmt":"2019-10-31T19:05:09","guid":{"rendered":"https:\/\/prohoster.info\/blog\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes\/"},"modified":"2019-10-31T22:05:09","modified_gmt":"2019-10-31T19:05:09","slug":"southbridge-v-chelyabinske-i-bitriks-v-kubernetes","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes","title":{"rendered":"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Cseljabinszkban Sysadminka rendszeradminisztr\u00e1torok sz\u00e1m\u00e1ra szerveznek meetupeket, \u00e9s az utols\u00f3n \u00e9n bemutattam a megold\u00e1sunkat, amely 1C-Bitrix alkalmaz\u00e1sok Kubernetes k\u00f6rnyezetben val\u00f3 futtat\u00e1s\u00e1ra szolg\u00e1l.<\/p>\n<p><\/p>\n<p>Bitrix, Kubernetes, Ceph \u2013 j\u00f3 kever\u00e9k?<\/p>\n<p><\/p>\n<p>Elmondom, hogyan \u00e1ll\u00edtottunk \u00f6ssze egy m\u0171k\u00f6d\u0151 megold\u00e1st mindebb\u0151l.<\/p>\n<p><\/p>\n<p>Kezdj\u00fck!<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/3f1b760eeab9dc07124a6353ccd2f004.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>A meetup \u00e1prilis 18-\u00e1n zajlott Cseljabinszkban. A meetupjainkr\u00f3l itt olvashatsz <noindex><a rel=\"nofollow\" href=\"https:\/\/sysadminka.timepad.ru\">Timepad<\/a><\/noindex> \u00e9s itt n\u00e9zheted meg <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/channel\/UCMblNgU0Gt-TXb9GdVeeinw\/\">a YouTube-on.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Ha szeretn\u00e9l hozz\u00e1nk \u00e9rkezni el\u0151ad\u00f3k\u00e9nt vagy hallgat\u00f3k\u00e9nt \u2013 v\u00e1runk szeretettel, \u00edrj a vadim.isakanov@gmail.com c\u00edmre \u00e9s a Telegramra t.me\/vadimisakanov. <\/p>\n<p><\/p>\n<h2 id=\"moy-doklad\">Az el\u0151ad\u00e1som<\/h2>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=MZqPNMUjr_M\" title=\"El\u0151ad\u00e1s a Bitrixr\u0151l Kubernetesben\"><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/eb02d3ceb8248faad927c2bcae0074de.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/yadi.sk\/i\/1q0YpFHBGBdtcg\">Di\u00e1k<\/a><\/noindex><\/p>\n<p><\/p>\n<h2 id=\"reshenie-bitriks-v-kubernetes-versiya-southbridge-10\">A \"Bitrix Kubernetes k\u00f6rnyezetben, Southbridge 1.0 verzi\u00f3\" megold\u00e1s.<\/h2>\n<p><\/p>\n<p>Elmondom a megold\u00e1sunkat \"Kubernetes kezd\u0151knek\" form\u00e1tumban, ahogyan ezt a meetup-on bemutattuk. De felt\u00e9telezem, hogy a Bitrix, Docker, Kubernetes \u00e9s Ceph szavakat legal\u00e1bb a Wikip\u00e9dia szintj\u00e9n ismered.<\/p>\n<p><\/p>\n<h4 id=\"chto-voobsche-est-gotovogo-pro-bitriks-v-kubernetes\">Mi k\u00e9sz\u00fclt eddig a Bitrix Kubernetes k\u00f6rnyezetbeli m\u0171k\u00f6d\u00e9s\u00e9r\u0151l?<\/h4>\n<p><\/p>\n<p>Az interneten nagyon kev\u00e9s inform\u00e1ci\u00f3 tal\u00e1lhat\u00f3 a Bitrix alkalmaz\u00e1sok Kubernetes k\u00f6rnyezetbeli fut\u00e1s\u00e1r\u00f3l.<br \/>\nCsak ilyen anyagokat tal\u00e1ltam:<\/p>\n<p><\/p>\n<p>Alexander Serbul, 1C-Bitrix \u00e9s Anton Tuzlukov a Qsoft-t\u00f3l el\u0151ad\u00e1sa: <\/p>\n<p>\n<center><div class=\"youtube-placeholder\" data-id=\"lHK4eOvLbRM\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/lHK4eOvLbRM\/hqdefault.jpg\" alt=\"Vide\u00f3 lej\u00e1tsz\u00e1sa\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<p>Aj\u00e1nlom, hogy hallgasd meg.<\/p>\n<p><\/p>\n<p>Saj\u00e1t megold\u00e1s fejleszt\u00e9se a felhaszn\u00e1l\u00f3 r\u00e9sz\u00e9r\u0151l <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/serkyron\/\" class=\"user_link\">serkyron<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/351286\/\">a Habr-on<\/a><\/noindex>.<br \/>\nTal\u00e1ltam m\u00e9g <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ESSch\/kubernetes\">ilyen megold\u00e1st.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>\u00c9s\u2026 gyakorlatilag ez minden.<\/p>\n<p><\/p>\n<p>Figyelmeztetek, hogy a fenti linkeken tal\u00e1lhat\u00f3 megold\u00e1sok m\u0171k\u00f6d\u00e9s\u00e9nek min\u0151s\u00e9g\u00e9t nem ellen\u0151rizt\u00fck \ud83d\ude42.<br \/>\nEgy\u00e9bk\u00e9nt, a megold\u00e1sunk el\u0151k\u00e9sz\u00edt\u00e9se sor\u00e1n besz\u00e9ltem Alexander Serbul-lal, akkor m\u00e9g nem volt el\u0151ad\u00e1sa, ez\u00e9rt a di\u00e1im k\u00f6z\u00f6tt szerepel a \"Bitrix nem haszn\u00e1l Kubernetes-t\" pont.<\/p>\n<p><\/p>\n<p>De m\u00e1r sok k\u00e9sz Docker k\u00e9pet tal\u00e1lhatsz a Bitrix Docker k\u00f6rnyezetbeli m\u0171k\u00f6d\u00e9s\u00e9hez: <noindex><a rel=\"nofollow\" href=\"https:\/\/hub.docker.com\/search?q=bitrix&amp;type=image\">https:\/\/hub.docker.com\/search?q=bitrix&amp;type=image<\/a><\/noindex> <\/p>\n<p><\/p>\n<p>El\u00e9g ez egy teljes \u00e9rt\u00e9k\u0171 megold\u00e1s l\u00e9trehoz\u00e1s\u00e1hoz a Bitrix sz\u00e1m\u00e1ra Kubernetes k\u00f6rnyezetben?<br \/>\nNem. Sok probl\u00e9ma van, amit meg kell oldani.<\/p>\n<p><\/p>\n<h4 id=\"v-chem-problemy-s-bitriks-v-kubernetes\">Mik a probl\u00e9m\u00e1k a Bitrix-szel a Kubernetes k\u00f6rnyezetben?<\/h4>\n<p><\/p>\n<p><strong>Az els\u0151 \u2013 a Dockerhub-b\u00f3l sz\u00e1rmaz\u00f3 k\u00e9sz k\u00e9pek nem alkalmasak Kubernetes-re.<\/strong><\/p>\n<p><\/p>\n<p>Ha mikroszolg\u00e1ltat\u00e1s-architekt\u00far\u00e1t szeretn\u00e9nk fel\u00e9p\u00edteni (amit Kubernetes-ben \u00e1ltal\u00e1ban akarunk), az alkalmaz\u00e1st Kubernetes-ben kont\u00e9nerekre kell bontani, \u00e9s arra kell t\u00f6rekedni, hogy minden kont\u00e9ner egy kis funkci\u00f3t v\u00e9gezzen el (\u00e9s azt j\u00f3l csin\u00e1lja). Mi\u00e9rt csak egyet? R\u00f6viden: min\u00e9l egyszer\u0171bb, ann\u00e1l megb\u00edzhat\u00f3bb.<br \/>\nHa r\u00e9szletesebben - k\u00e9rlek n\u00e9zd meg ezt a cikket \u00e9s vide\u00f3t: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/426637\/\">https:\/\/habr.com\/ru\/company\/southbridge\/blog\/426637\/<\/a><\/noindex> <\/p>\n<p><\/p>\n<p>A Dockerhub-b\u00f3l sz\u00e1rmaz\u00f3 Docker k\u00e9pek t\u00f6bbs\u00e9ge \"minden egyben\" elven m\u0171k\u00f6dik, ez\u00e9rt v\u00e9g\u00fcl saj\u00e1t megold\u00e1st kellett k\u00e9sz\u00edten\u00fcnk, \u00e9s m\u00e9g a k\u00e9peket is null\u00e1r\u00f3l kellett elk\u00e9sz\u00edten\u00fcnk.<\/p>\n<p><\/p>\n<p><strong>A m\u00e1sodik \u2013 a weboldal k\u00f3dja az adminisztr\u00e1ci\u00f3s panelb\u0151l szerkeszthet\u0151.<\/strong><\/p>\n<p><\/p>\n<p>L\u00e9trehoztunk egy \u00faj r\u00e9szt az oldalon \u2014 friss\u00fclt a k\u00f3d (\u00faj direkt\u00f3rium ker\u00fclt hozz\u00e1 az \u00faj r\u00e9sz nev\u00e9vel).<\/p>\n<p><\/p>\n<p>Megv\u00e1ltoztattuk a komponens tulajdons\u00e1gait az admin panelb\u0151l \u2014 megv\u00e1ltozott a k\u00f3d.<\/p>\n<p><\/p>\n<p>A Kubernetes alap\u00e9rtelmezetten nem tud \u00edgy dolgozni, a kont\u00e9nereknek nem m\u00f3dos\u00edthat\u00f3knak kell lenni\u00fck (Stateless).<\/p>\n<p><\/p>\n<p>Az ok: minden pod a klaszterben csak a forgalom egy r\u00e9sz\u00e9t kezeli. Ha csak egy kont\u00e9nerben (podban) m\u00f3dos\u00edtjuk a k\u00f3dot, akkor a k\u00fcl\u00f6nb\u00f6z\u0151 podokban elt\u00e9r\u0151 k\u00f3d lesz, a webhely k\u00fcl\u00f6nb\u00f6z\u0151k\u00e9ppen m\u0171k\u00f6dik, a k\u00fcl\u00f6nb\u00f6z\u0151 felhaszn\u00e1l\u00f3knak elt\u00e9r\u0151 verzi\u00f3kat fog mutatni a weboldal. Ezt nem lehet \u00edgy csin\u00e1lni.<\/p>\n<p><\/p>\n<p><strong>Harmadszor \u2014 meg kell oldani a telep\u00edt\u00e9st.<\/strong><\/p>\n<p><\/p>\n<p>Ha van egy monolitunk \u00e9s egy \u201eklasszikus\u201d szerver\u00fcnk, minden nagyon egyszer\u0171: kiny\u00fajtjuk az \u00faj k\u00f3dot, elv\u00e9gezz\u00fck az adatb\u00e1zis migr\u00e1ci\u00f3t, \u00e9s \u00e1tkapcsoljuk a forgalmat az \u00faj k\u00f3d verzi\u00f3j\u00e1ra. Az \u00e1tkapcsol\u00e1s azonnal megt\u00f6rt\u00e9nik.<br \/>\nHa a weboldalunk Kubernetes-ben van, mikroszolg\u00e1ltat\u00e1sokra van szedve, sok kont\u00e9nerrel a k\u00f3dhoz \u2014 \u00f3. \u00d6ssze kell gy\u0171jteni a kont\u00e9nereket az \u00faj k\u00f3d verzi\u00f3j\u00e1val, ezeket a r\u00e9gi hely\u00e9re kell telep\u00edteni, helyesen kell v\u00e9grehajtani az adatb\u00e1zis migr\u00e1ci\u00f3t, \u00e9s ide\u00e1lisan mindezt \u00e9szrev\u00e9tlen\u00fcl kell v\u00e9gezni a l\u00e1togat\u00f3k sz\u00e1m\u00e1ra. Szerencs\u00e9re a Kubernetes rengeteg k\u00fcl\u00f6nb\u00f6z\u0151 telep\u00edt\u00e9si m\u00f3dot t\u00e1mogat.<\/p>\n<p><\/p>\n<p><strong>Negyedszer \u2014 meg kell oldani a statikus f\u00e1jlok t\u00e1rol\u00e1s\u00e1t.<\/strong><\/p>\n<p><\/p>\n<p>Ha a weboldalad \u201emind\u00f6ssze\u201d 10 gigab\u00e1jtot nyom, \u00e9s teljesen kont\u00e9nerekbe telep\u00edted, 10 gigab\u00e1jtot nyom\u00f3 kont\u00e9nereket kapsz, amelyek \u00f6r\u00f6kk\u00e9 fognak telep\u00fclni.<br \/>\nA leg \u201eneh\u00e9zebb\u201d r\u00e9szeket a weboldalb\u00f3l a kont\u00e9nereken k\u00edv\u00fcl kell t\u00e1rolni, \u00e9s felmer\u00fcl a k\u00e9rd\u00e9s, hogyan \u00e9rdemes ezt megfelel\u0151en megtenni.<\/p>\n<p><\/p>\n<h4 id=\"chego-net-v-nashem-reshenii\">Mit nem tartalmaz a megold\u00e1sunk.<\/h4>\n<p><\/p>\n<p>A Bitrix \u00f6sszes k\u00f3dja nem lett lev\u00e1gva mikrofunkci\u00f3kra\/mikroszolg\u00e1ltat\u00e1sokra (p\u00e9ld\u00e1ul a regisztr\u00e1ci\u00f3 k\u00fcl\u00f6n, az internetes bolt modulja k\u00fcl\u00f6n, stb.). Az \u00f6sszes k\u00f3dalapot t\u00e1roljuk minden kont\u00e9nerben teljes eg\u00e9sz\u00e9ben.<\/p>\n<p><\/p>\n<p>Az adatb\u00e1zist a Kubernetes-ben szint\u00e9n nem t\u00e1roljuk (m\u00e9gis dolgoztam ki adatb\u00e1zissal kapcsolatos megold\u00e1sokat Kubernetes-ben fejleszt\u0151i k\u00f6rnyezetek sz\u00e1m\u00e1ra, de nem a termel\u00e9shez).<\/p>\n<p><\/p>\n<p>Az adminisztr\u00e1torok sz\u00e1m\u00e1ra \u00e9szlelhet\u0151 lesz, hogy a weboldal Kubernetes-ben fut. A \u201erendszerellen\u0151rz\u00e9s\u201d funkci\u00f3 nem m\u0171k\u00f6dik helyesen, a weboldal k\u00f3dj\u00e1nak szerkeszt\u00e9s\u00e9hez az admin panelb\u00f3l el\u0151sz\u00f6r meg kell nyomni a \u201eszeretn\u00e9m szerkeszteni a k\u00f3dot\u201d gombot.<\/p>\n<p><\/p>\n<p>A probl\u00e9m\u00e1kat megoldottuk, a mikroszervizel\u00e9s sz\u00fcks\u00e9gess\u00e9g\u00e9t tiszt\u00e1ztuk, a c\u00e9l vil\u00e1gos - m\u0171k\u00f6d\u0151 rendszert szeretn\u00e9nk kapni a Bitrix alkalmaz\u00e1sok Kubernetes-en val\u00f3 m\u0171k\u00f6dtet\u00e9s\u00e9hez, meg\u0151rizve a Bitrix lehet\u0151s\u00e9geit \u00e9s a Kubernetes el\u0151nyeit. Elkezdj\u00fck a megval\u00f3s\u00edt\u00e1st.<\/p>\n<p><\/p>\n<h4 id=\"arhitektura\">Architekt\u00fara<\/h4>\n<p><\/p>\n<p>Sok \u201emunk\u00e1s\u201d pod egy webszerverrel (worker-ek).<br \/>\nEgy pod kr\u00f3nikus feladatokkal (csak egy k\u00f6telez\u0151).<br \/>\nEgy upgrade pod a weboldal k\u00f3dj\u00e1nak szerkeszt\u00e9s\u00e9re az adminisztr\u00e1ci\u00f3s panelelt (szint\u00e9n k\u00f6telez\u0151 csak egy).<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/e26a787c11f78811b15a89f597331ef1.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>K\u00e9rd\u00e9seket oldunk meg:<\/p>\n<p><\/p>\n<ul>\n<li>Hol t\u00e1roljuk a session-\u00f6ket?<\/li>\n<li>Hol t\u00e1roljuk a cache-t?<\/li>\n<li>Hol t\u00e1roljuk a statikus f\u00e1jlokat, nem akarjuk gigab\u00e1jt statikus f\u00e1jlokat lumpen\u00e1lni t\u00f6bb kont\u00e9nerben?<\/li>\n<li>Hogyan m\u0171k\u00f6dik az adatb\u00e1zis?<\/li>\n<\/ul>\n<p><\/p>\n<h4 id=\"docker-obraz\">Docker k\u00e9p<\/h4>\n<p><\/p>\n<p>A Docker k\u00e9p \u00f6ssze\u00e1ll\u00edt\u00e1s\u00e1val kezd\u00fcnk.<\/p>\n<p><\/p>\n<p>Ide\u00e1lis esetben egy univerz\u00e1lis k\u00e9p\u00fcnk van, amely alapj\u00e1n worker podokat, cron podokat \u00e9s upgrade podokat kapunk.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/hub.docker.com\/r\/centosadmin\/bitrixenv\">Olyan k\u00e9pet k\u00e9sz\u00edtett\u00fcnk, amely pontosan ez.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>A k\u00e9p tartalmazza az nginx, apache\/php-fpm (v\u00e1laszthat\u00f3 az \u00f6ssze\u00e1ll\u00edt\u00e1s sor\u00e1n), msmtp a levelek k\u00fcld\u00e9s\u00e9hez \u00e9s a cron.<\/p>\n<p><\/p>\n<p>Az k\u00e9p \u00f6ssze\u00e1ll\u00edt\u00e1sakor a \/app k\u00f6nyvt\u00e1rba a weboldal teljes k\u00f3dalapj\u00e1t m\u00e1soljuk (kiv\u00e9ve azokat a r\u00e9szeket, amelyeket k\u00fcl\u00f6n shared storage-ba helyez\u00fcnk).<\/p>\n<p><\/p>\n<h4 id=\"mikroservisnost-servisy\">Mikroszervizel\u00e9s, szolg\u00e1ltat\u00e1sok<\/h4>\n<p><\/p>\n<p><strong>worker podok:<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Kont\u00e9ner nginx + kont\u00e9ner apache\/php-fpm + msmtp<\/li>\n<li>Az msmtp-t k\u00fcl\u00f6n mikroszervizk\u00e9nt nem tudtuk kivenni, a Bitrix felh\u00e1borodik, hogy nem tud k\u00f6zvetlen\u00fcl levelet k\u00fcldeni.<\/li>\n<li>Minden kont\u00e9nerben a teljes k\u00f3dalap tal\u00e1lhat\u00f3.<\/li>\n<li>Tilalom a k\u00f3d m\u00f3dos\u00edt\u00e1s\u00e1ra a kont\u00e9nerekben.<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>cron pod:<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>kont\u00e9ner apache, php, cron<\/li>\n<li>a csomagban teljes k\u00f3dalap tal\u00e1lhat\u00f3<\/li>\n<li>tilalom a k\u00f3d m\u00f3dos\u00edt\u00e1s\u00e1ra a kont\u00e9nerekben<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>upgrade pod:<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>kont\u00e9ner nginx + kont\u00e9ner apache\/php-fpm + msmtp<\/li>\n<li>nincs tilalom a k\u00f3d m\u00f3dos\u00edt\u00e1s\u00e1ra a kont\u00e9nerekben<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>session t\u00e1rol\u00f3<\/strong><\/p>\n<p><\/p>\n<p><strong>Bitrix cache t\u00e1rol\u00f3<\/strong><\/p>\n<p><\/p>\n<p>Tov\u00e1bb\u00e1 fontos: az \u00f6sszes csatlakoz\u00e1si jelsz\u00f3t, az adatb\u00e1zist\u00f3l a levelekig, a kubernetes titkokban t\u00e1roljuk. B\u00f3nusz, a jelszavak csak azok sz\u00e1m\u00e1ra l\u00e1that\u00f3k, akikkel megadjuk a titkokhoz val\u00f3 hozz\u00e1f\u00e9r\u00e9st, \u00e9s nem mindenki sz\u00e1m\u00e1ra, akinek van hozz\u00e1f\u00e9r\u00e9se a projekt k\u00f3dalapj\u00e1hoz.<\/p>\n<p><\/p>\n<h4 id=\"hranilische-dlya-statiki\">Statikus f\u00e1jlok t\u00e1rol\u00f3ja<\/h4>\n<p><\/p>\n<p>B\u00e1rmit haszn\u00e1lhatunk: ceph, nfs (de az nfs-t nem aj\u00e1nljuk produkci\u00f3ra), h\u00e1l\u00f3zati t\u00e1rol\u00f3 \u201efelh\u0151\u201d szolg\u00e1ltat\u00f3kt\u00f3l, stb.<\/p>\n<p><\/p>\n<p>A t\u00e1rol\u00f3t a kont\u00e9nerekben az \/upload\/ k\u00f6nyvt\u00e1rba \u00e9s m\u00e1s statikus k\u00f6nyvt\u00e1rakba kell csatlakoztatni.<\/p>\n<p><\/p>\n<h4 id=\"baza-dannyh\">Adatb\u00e1zis<\/h4>\n<p><\/p>\n<p>Egyszer\u0171s\u00e9g kedv\u00e9\u00e9rt aj\u00e1nljuk az adatb\u00e1zis kihelyez\u00e9s\u00e9t a Kubernetes-en k\u00edv\u00fcl. Az adatb\u00e1zis a Kubernetes-ben - egy k\u00fcl\u00f6n bonyolult feladat, amely sokkal bonyolultabb\u00e1 teszi az architekt\u00far\u00e1t.<\/p>\n<p><\/p>\n<h4 id=\"hranilische-sessiy\">Session t\u00e1rol\u00f3<\/h4>\n<p><\/p>\n<p>A memcached-t haszn\u00e1ljuk \ud83d\ude42<\/p>\n<p><\/p>\n<p>J\u00f3l kezeli a munkamenetek t\u00e1rol\u00e1s\u00e1t, klaszterezhet\u0151, a php session.save_path-n \u201enat\u00edvan\u201d t\u00e1mogatott. Ez a rendszer m\u00e1r t\u00f6bbsz\u00f6r bebizony\u00edtotta mag\u00e1t a klasszikus monolit architekt\u00far\u00e1ban, amikor klasztereket \u00e9p\u00edtett\u00fcnk sok webszerverrel. A telep\u00edt\u00e9shez helm-et haszn\u00e1lunk.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ helm install stable\/memcached --name session<\/code><\/pre>\n<p><\/p>\n<p>php.ini \u2014 itt a k\u00e9pen be vannak \u00e1ll\u00edtva a munkamenetek t\u00e1rol\u00e1s\u00e1hoz sz\u00fcks\u00e9ges be\u00e1ll\u00edt\u00e1sok memcached-ben.<\/p>\n<p><\/p>\n<p>K\u00f6rnyezeti v\u00e1ltoz\u00f3kat haszn\u00e1ltunk a memcached hostokr\u00f3l sz\u00f3l\u00f3 adatok \u00e1tad\u00e1s\u00e1ra. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/inject-data-application\/define-environment-variable-container\/\">https:\/\/kubernetes.io\/docs\/tasks\/inject-data-application\/define-environment-variable-container\/<\/a><\/noindex>.<br \/>\nEz lehet\u0151v\u00e9 teszi ugyanannak a k\u00f3dnak a haszn\u00e1lat\u00e1t a dev, stage, test, prod k\u00f6rnyezetekben (a memcached hostok neve elt\u00e9r\u0151 lesz, ez\u00e9rt minden k\u00f6rnyezetbe egyedi neveket kell \u00e1tadnunk a munkamenetekhez).<br \/>\nBitrix cache t\u00e1rol\u00f3<\/p>\n<p><\/p>\n<p>Sz\u00fcks\u00e9g\u00fcnk van egy katasztr\u00f3faellen\u00e1ll\u00f3 t\u00e1rol\u00f3ra, ahov\u00e1 minden pod \u00edrhat, \u00e9s ahonnan olvashat.<\/p>\n<p><\/p>\n<p>Emellett memcached-t is haszn\u00e1lunk.<br \/>\nEzt a megold\u00e1st mag\u00e1t\u00f3l a Bitrixt\u0151l aj\u00e1nlj\u00e1k.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ helm install stable\/memcached --name cache<\/code><\/pre>\n<p><\/p>\n<p>bitrix\/.settings_extra.php \u2014 itt a Bitrix-ben be van \u00e1ll\u00edtva, hol t\u00e1roljuk a cache-t.<\/p>\n<p><\/p>\n<p>K\u00f6rnyezeti v\u00e1ltoz\u00f3kat szint\u00e9n haszn\u00e1lunk.<\/p>\n<p><\/p>\n<h3 id=\"krontaski\">Cron feladatok<\/h3>\n<p><\/p>\n<p>K\u00fcl\u00f6nb\u00f6z\u0151 megk\u00f6zel\u00edt\u00e9sek l\u00e9teznek a cron feladatok v\u00e9grehajt\u00e1s\u00e1ra Kubernetesben.<\/p>\n<p><\/p>\n<ul>\n<li>k\u00fcl\u00f6n deployment pod a cron feladatok v\u00e9grehajt\u00e1s\u00e1hoz<\/li>\n<li>cronjob a cron feladatok v\u00e9grehajt\u00e1s\u00e1hoz (ha ez egy webalkalmaz\u00e1s \u2014 wget-tel: <noindex>https:\/\/$host$cronjobname<\/noindex>, vagy kubectl exec a worker podok egyik\u00e9be, stb.)<\/li>\n<li>stb.<\/li>\n<\/ul>\n<p><\/p>\n<p>Vitatkozhatunk a legmegfelel\u0151bb megold\u00e1son, de ebben az esetben a \u201ek\u00fcl\u00f6n deployment podokkal a cron feladatokhoz\u201d v\u00e1ltozatot v\u00e1lasztottuk.<\/p>\n<p><\/p>\n<p>Hogyan k\u00e9sz\u00fclt:<\/p>\n<p><\/p>\n<ul>\n<li>cron feladatokat adunk hozz\u00e1 ConfigMap-en kereszt\u00fcl vagy a config\/addcron f\u00e1jl seg\u00edts\u00e9g\u00e9vel.<\/li>\n<li>egy p\u00e9ld\u00e1nyban elind\u00edtjuk a kont\u00e9nert, amely azonos a worker poddal + lehet\u0151v\u00e9 tessz\u00fck a cron feladatok v\u00e9grehajt\u00e1s\u00e1t benne.<\/li>\n<li>ugyanazt a k\u00f3dalapot haszn\u00e1ljuk, k\u00f6sz\u00f6nhet\u0151en az egys\u00e9ges\u00edt\u00e9snek, a kont\u00e9ner \u00f6ssze\u00e1ll\u00edt\u00e1sa egyszer\u0171.<\/li>\n<\/ul>\n<p><\/p>\n<p>Mit nyer\u00fcnk:<\/p>\n<p><\/p>\n<ul>\n<li>a m\u0171k\u00f6d\u0151 cron feladatok a fejleszt\u0151k k\u00f6rnyezet\u00e9hez hasonl\u00f3 k\u00f6rnyezetben futnak (docker).<\/li>\n<li>A cron feladatokat nem sz\u00fcks\u00e9ges \u201e\u00e1t\u00edrni\u201d Kubernetes-re, ugyan\u00fagy m\u0171k\u00f6dnek, ugyanabban a k\u00f3dalapban, mint kor\u00e1bban.<\/li>\n<li>a cron feladatokat csapatunk minden tagja hozz\u00e1adhatja, akinek van commit joguk a production \u00e1gon, nem csak az adminok.<\/li>\n<\/ul>\n<p><\/p>\n<h3 id=\"modul-southbridge-k8sdeploy-i-redaktirovanie-koda-iz-admin-paneli\">Southbridge K8SDeploy modul \u00e9s a k\u00f3d szerkeszt\u00e9se az admin panelb\u0151l.<\/h3>\n<p><\/p>\n<p>Hiszen a pod friss\u00edt\u00e9s\u00e9r\u0151l besz\u00e9lt\u00fcnk?<br \/>\nHogyan ir\u00e1ny\u00edtsuk oda a forgalmat?<br \/>\nHurr\u00e1, \u00edrtunk ehhez egy modult php-n \ud83d\ude42 Ez egy kis klasszikus modul a Bitrix sz\u00e1m\u00e1ra. M\u00e9g nem \u00e9rhet\u0151 el nyilv\u00e1nosan, de tervezz\u00fck, hogy megnyitjuk.<br \/>\nA modul telep\u00edt\u00e9se \u00fagy t\u00f6rt\u00e9nik, mint egy szok\u00e1sos Bitrix modul:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/ba9f895ce645862c7ba003d523cd5656.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u00c9s \u00edgy n\u00e9z ki:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/916ae9243fae9f6405cc68174ec5bb2b.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ez lehet\u0151v\u00e9 teszi egy cookie be\u00e1ll\u00edt\u00e1s\u00e1t, amely az oldal adminisztr\u00e1tor\u00e1t azonos\u00edtja, \u00e9s lehet\u0151v\u00e9 teszi a Kubernetes sz\u00e1m\u00e1ra, hogy forgalmat k\u00fcldj\u00f6n a friss\u00edt\u00e9si podra.<\/p>\n<p><\/p>\n<p>Miut\u00e1n a v\u00e1ltoztat\u00e1sok elk\u00e9sz\u00fcltek, meg kell nyomni a git push-t, a k\u00f3dv\u00e1ltoz\u00e1sok el fognak k\u00fcldve a git-be, majd a rendszer \u00faj k\u00e9pet k\u00e9sz\u00edt az \u00faj k\u00f3dverzi\u00f3val \u00e9s \"kigur\u00edtja\" azt a klaszterre, felv\u00e1ltva a r\u00e9gi podokat.<\/p>\n<p><\/p>\n<p>Igen, kicsit neh\u00e9zkes, de \u00edgy meg\u0151rizz\u00fck a mikroszolg\u00e1ltat\u00e1s-architekt\u00far\u00e1t \u00e9s nem vessz\u00fck el a Bitrix felhaszn\u00e1l\u00f3inak kedvenc lehet\u0151s\u00e9g\u00e9t, hogy a k\u00f3dot m\u00f3dos\u00edts\u00e1k az admin fel\u00fcletr\u0151l. V\u00e9g\u00fcl is ez egy opci\u00f3, a k\u00f3d m\u00f3dos\u00edt\u00e1si feladatot m\u00e1sk\u00e9nt is meg lehet oldani.<\/p>\n<p><\/p>\n<h4 id=\"helm-chart\">Helm chart<\/h4>\n<p><\/p>\n<p>\u00c1ltal\u00e1ban a Kubernetes alkalmaz\u00e1sok \u00f6ssze\u00e1ll\u00edt\u00e1s\u00e1hoz a Helm csomagkezel\u0151t haszn\u00e1ljuk.<br \/>\nA Bitrix megold\u00e1sunkhoz Kubernetes alatt Szergej Bondarev, vezet\u0151 rendszeradminisztr\u00e1torunk k\u00e9sz\u00edtett egy speci\u00e1lis Helm chartot.<\/p>\n<p><\/p>\n<p>\u00d6sszes\u00edti a worker-eket, friss\u00edt\u00e9seket, cron podokat, be\u00e1ll\u00edtja az ingress-eket, szolg\u00e1ltat\u00e1sokat, valamint \u00e1tadja a v\u00e1ltoz\u00f3kat a Kubernetes titkokb\u00f3l a podoknak.<\/p>\n<p><\/p>\n<p>A k\u00f3dot a Gitlabban t\u00e1roljuk, \u00e9s a Helm \u00f6ssze\u00e1ll\u00edt\u00e1st is a Gitlabb\u00f3l ind\u00edtjuk.<\/p>\n<p><\/p>\n<p>R\u00f6viden \u00edgy n\u00e9z ki:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ helm upgrade --install project .helm --set image=registrygitlab.local\/k8s\/bitrix -f .helm\/values.yaml --wait --timeout 300 --debug --tiller-namespace=production<\/code><\/pre>\n<p><\/p>\n<p>A Helm lehet\u0151v\u00e9 teszi a \"z\u00f6kken\u0151mentes\" vissza\u00e1ll\u00edt\u00e1st is, ha v\u00e1ltoztat\u00e1s k\u00f6zben valami nem m\u0171k\u00f6dik. J\u00f3, amikor nem p\u00e1nikban \"jav\u00edtod a k\u00f3dot ftp-n, mert a production le\u00e1llt\", hanem a Kubernetes automatikusan elv\u00e9gzi ezt, r\u00e1ad\u00e1sul le\u00e1ll\u00e1s n\u00e9lk\u00fcl.<\/p>\n<p><\/p>\n<h4 id=\"deploy\">Deploy<\/h4>\n<p><\/p>\n<p>Igen, Gitlab &amp; Gitlab CI fanatikusok vagyunk, haszn\u00e1ljuk \ud83d\ude42<br \/>\nGitlabba t\u00f6rt\u00e9n\u0151 elk\u00f6telez\u00e9ssel a Gitlab elind\u00edt egy pipeline-t, amely a projekt \u00faj k\u00f6rnyezetverzi\u00f3j\u00e1nak telep\u00edt\u00e9s\u00e9t v\u00e9gzi.<\/p>\n<p><\/p>\n<p>L\u00e9p\u00e9sek:<\/p>\n<p><\/p>\n<ul>\n<li>build (\u00faj Docker k\u00e9p \u00f6ssze\u00e1ll\u00edt\u00e1sa)<\/li>\n<li>test (tesztel\u00e9s)<\/li>\n<li>clean up (tesztel\u00e9si k\u00f6rnyezet elt\u00e1vol\u00edt\u00e1sa)<\/li>\n<li>push (k\u00e9p elk\u00fcld\u00e9se a Docker registrybe)<\/li>\n<li>deploy (alkalmaz\u00e1s telep\u00edt\u00e9se Kubernetesben a Helmen kereszt\u00fcl).<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetes alatt\" src=\"\/wp-content\/uploads\/74e565a0793b90c3cc19b8c7dedaff34.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hurr\u00e1, k\u00e9sz, bevezetj\u00fck!<br \/>\nVagy felvetj\u00fck a k\u00e9rd\u00e9seket, ha vannak.<\/p>\n<p><\/p>\n<h2 id=\"itak-chto-my-sdelali\">Teh\u00e1t mit csin\u00e1ltunk?<\/h2>\n<p><\/p>\n<p><strong>Technikai szempontb\u00f3l:<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Dockeriz\u00e1ltuk a Bitrix-ot;<\/li>\n<li>\"felv\u00e1gtuk\" a Bitrix-ot kont\u00e9nerekre, amelyek mindegyike minimum funkci\u00f3kat v\u00e9gez;<\/li>\n<li>el\u00e9rt\u00fck, hogy a kont\u00e9nerek \u00e1llapotmentesek legyenek;<\/li>\n<li>megoldottuk a Bitrix friss\u00edt\u00e9si probl\u00e9m\u00e1j\u00e1t Kubernetesben;<\/li>\n<li>a Bitrix \u00f6sszes funkci\u00f3ja tov\u00e1bbra is m\u0171k\u00f6d\u00f6tt (majdnem mindegyik);<\/li>\n<li>megoldottuk a Kubernetes telep\u00edt\u00e9st \u00e9s a verzi\u00f3k k\u00f6z\u00f6tti vissza\u00e1ll\u00edt\u00e1st.<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>\u00dczleti szempontb\u00f3l:<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>hibamentess\u00e9g;<\/li>\n<li>Kubernetes eszk\u00f6z\u00f6k (egyszer\u0171 integr\u00e1ci\u00f3 a Gitlab CI-vel, z\u00f6kken\u0151mentes telep\u00edt\u00e9s, stb.);<\/li>\n<li>jelszavak a titkokban (csak azok l\u00e1tj\u00e1k, akiknek k\u00f6zvetlen hozz\u00e1f\u00e9r\u00e9s\u00fck van a jelszavakhoz);<\/li>\n<li>K\u00e9nyelmes t\u00f6bb k\u00f6rnyezetet kialak\u00edtani (fejleszt\u00e9shez, tesztel\u00e9shez stb.) egyetlen infrastrukt\u00far\u00e1ban.<\/li>\n<\/ul>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/456608\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u043c\u0438\u0442\u0430\u043f\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 Sysadminka, \u0438 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0438\u0437 \u043d\u0438\u0445 \u044f \u0434\u0435\u043b\u0430\u043b \u0434\u043e\u043a\u043b\u0430\u0434 \u043e \u043d\u0430\u0448\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 1\u0421-\u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes. \u0411\u0438\u0442\u0440\u0438\u043a\u0441, Kubernetes, \u0421eph \u2014 \u043e\u0442\u043b\u0438\u0447\u043d\u0430\u044f \u0441\u043c\u0435\u0441\u044c? \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043c\u044b \u0438\u0437 \u0432\u0441\u0435\u0433\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0431\u0440\u0430\u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435. \u041f\u043e\u0435\u0445\u0430\u043b\u0438! \u041c\u0438\u0442\u0430\u043f \u043f\u0440\u043e\u0448\u0435\u043b 18 \u0430\u043f\u0440\u0435\u043b\u044f \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435. \u041f\u0440\u043e \u043d\u0430\u0448\u0438 \u043c\u0438\u0442\u0430\u043f\u044b \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 Timepad \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35581","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u043c\u0438\u0442\u0430\u043f\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 Sysadminka, \u0438 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0438\u0437 \u043d\u0438\u0445 \u044f \u0434\u0435\u043b\u0430\u043b \u0434\u043e\u043a\u043b\u0430\u0434 \u043e \u043d\u0430\u0448\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 1\u0421-\u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes. \u0411\u0438\u0442\u0440\u0438\u043a\u0441, Kubernetes, \u0421eph \u2014.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Southbridge \u0432 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u0438 \u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u043c\u0438\u0442\u0430\u043f\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 Sysadminka, \u0438 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0438\u0437 \u043d\u0438\u0445 \u044f \u0434\u0435\u043b\u0430\u043b \u0434\u043e\u043a\u043b\u0430\u0434 \u043e \u043d\u0430\u0448\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 1\u0421-\u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes. \u0411\u0438\u0442\u0440\u0438\u043a\u0441, Kubernetes, \u0421eph \u2014.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:05:09+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:05:09+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Southbridge Cseljabinszkban \u00e9s Bitrix Kubernetesben | ProHoster","description":"Cseljabinszkban rendszeradminisztr\u00e1toroknak tartanak meeteket a Sysadmink\u00e1ban, \u00e9s az utols\u00f3 alkalommal tartottam el\u0151ad\u00e1st a megold\u00e1sunkr\u00f3l az 1C-Bitrix alkalmaz\u00e1sok Kubernetesben val\u00f3 m\u0171k\u00f6dtet\u00e9s\u00e9re. Bitrix, Kubernetes, Ceph \u2014.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Southbridge \u0432 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u0438 \u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes | ProHoster","og:description":"\u0412 \u0427\u0435\u043b\u044f\u0431\u0438\u043d\u0441\u043a\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u043c\u0438\u0442\u0430\u043f\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 Sysadminka, \u0438 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0438\u0437 \u043d\u0438\u0445 \u044f \u0434\u0435\u043b\u0430\u043b \u0434\u043e\u043a\u043b\u0430\u0434 \u043e \u043d\u0430\u0448\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 1\u0421-\u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0432 Kubernetes. \u0411\u0438\u0442\u0440\u0438\u043a\u0441, Kubernetes, \u0421eph \u2014.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/southbridge-v-chelyabinske-i-bitriks-v-kubernetes","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:05:09+00:00","article:modified_time":"2019-10-31T19:05:09+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35581","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 23:52:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:59:36","updated":"2026-01-21 23:52:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/35581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=35581"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/35581\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=35581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=35581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=35581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}