• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    ALMADDocker a kontejnery
    Docker aneb přístupný provoz kontejnerizovaných aplikací
    Docker(Hub), Compose, Swarm, boot2docker, DevOps, LXC, ECS, TumTum a jiné buzzwordy
    Bezpečnost v prostředí kontejnerů
    Related: automatizace [ Centralizovaná správa stanic a ostatních prvků v síti konfigurace/inventarizace/instalace/aktualizace/zalohovani ]
    rozbalit záhlaví
    FALLENANGEL
    FALLENANGEL --- ---
    JON: ok, jsem od ty vyvojarsky casti trochu odtrzenej takze mozna rikam nesmysly. Mel jsem za to, ze ten template vyresi git, kde mas tu sablonu uloženou. Developer ji vezme, upravi, pushne a spustí pipelinu, která deployuje aplikaci. Nebo ti jde o vytvoření yaml templatu tech resource? Pripadne jakejch presne?

    VELDRANE: je to minimálně zajimavej nápad. Zkusím se poptat, jestli to někdo kolem resil.
    VELDRANE
    VELDRANE --- ---
    FALLENANGEL: No prave ze nevidel :), coz ale neznamena, ze si tu nekdo treba pohrdlive neodfrkne a neprohlasi: "Pche helm, Vy maloverni, jen operator je ta spravna cesta, sypu v golangu z rukavu". Priznavam ze o ci/cd vim vcelku tuzku, uspesne se tehle oblasti vyhybam co to de paac to smrdi komunikaci s vyvojem :). Vrcholem me statecnosti bylo par helm chartu a naky multistage buildy v jenkinsu (nechci uz to opakovat :) pro veci za kery odpovidam. Takze i ja si tu tad poslechnu par rad na tohle tema.
    JON
    JON --- ---
    FALLENANGEL: to je urcite varianta jak to delat, ale uplne to neresi ten problem s tema manifestama, ne?
    Na webu ArgoCD sami pisou

    Kubernetes manifests can be specified in several ways:

    kustomize applications
    helm charts
    ksonnet applications
    jsonnet files
    Plain directory of YAML/json manifests
    Any custom config management tool configured as a config management plugin

    A kustomize mi neprijde dobry, ksonnet se prestal vyvijet, psat pro vlastni appky helm chartu mi prijde overkill - zbyva ten jsonnet, ale ze bych z toho na prvni pohled rval nadsenim, to nemohu rict.
    FALLENANGEL
    FALLENANGEL --- ---
    Operatory se pisou spis na systemovy veci. VELDRANE videl jsi nekdy operator pro deployment aplikaci? Rad se naucim neco novyho.

    JON: Co na to jit pres gitops? ArgoCD napriklad.
    JON
    JON --- ---
    VELDRANE: co znamena nepisou se rovnou operatori?
    Chtel bych se prave vyhnout tomu, ze se budeme ucit neco, co uz je prekonane,proto se mozna tak blbe ptam.

    Co si od toho templatovani slibuju: vyvojar si bude u sebe bude moct spustit nejakou cast vseho a k tomu si pripojit appku, kterou vyviji.
    V CI se spusti nejakej subset vseho pro integracni testy.
    V CI se spusti kompletni vsechno ve verzi N-1, provede se update na verzi N a to cele se otestuje, ze funguje.
    Vysledek se vysype do produkce (to uz vlastne vypada jako drobnost).
    A ve vsech techhle setupech se ty veci budou nejakyma drobnyma parametrama lisit - pocet instanci, jestli generujou skutecny nebo fejkovy data apod. A rad bych mel nejakej konzistentni zaklad, kterej se bude parametrizovat.
    VELDRANE
    VELDRANE --- ---
    Btw nezkousel tu nekdo rozbehat docker/podman (preferovana varianta) s ovs swistem ? Jako nakonec sem to nejak rozchodil ale je to strasnej bastl:

    pody ---> linux bridge (nativni docker network) <-- veth ---> ovs

    Neni nakej pekne plugin kterej by to umel pripojit primo na definovanej ovs vswist ?

    Chci mit pod network integrovanou na l2 s moji siti doma (nic zasadniho je to jen tak pro srandu :)
    VELDRANE
    VELDRANE --- ---
    JON: No jasne, pravda ne uplne na vsechno, ale vetsina co vim je v helmu. Je to vcelku easy cesta jak neco nasadit, pravda nevim jestli to uz dneska neni trochu passe a nepisou se spis operatori. Zas na vytvoreni chartu nepotrebujes zadny extra skilly.
    JON
    JON --- ---
    VELDRANE: jako ze si pisete helm charty i pro vlastni appky?
    VELDRANE
    VELDRANE --- ---
    JON: S templatovanin ceho konkretne ? Instalace ? Aplikaci ?

    Na deploy aplikaci casto pouzivame helm coz je v podstate templatovani
    JON
    JON --- ---
    mate nekdo nejake dobre zkusenosti s templatovanim k8s yamlu? Pohravam si s myslenkou celou tu vopicarnu generovat z pythonu - ale sere me na tom, ze clovek samozrejme prijde o tu deklarativnost. Nejvic by se mi libilo neco mezi, ale fakt bych to nechtel psat inhouse.
    RUDOLF
    RUDOLF --- ---
    REFLEX: to je jen jeden stroj ne? Normálně nastav stejnou network pro všechny kontejnery co na sebe mají lokálně vidět. Ty kontejnery budou mít stejné dns jako název služby, nebo možná prefix compose.

    Když chceš něco mít veřejně, nahoď třeba traefik na routování do kontejnerů. A jen tuhle službu exposni. Pravidla routování si nastvíš jako labels u každého kontejneru.

    Na server si nasměruj DNS a jen si nastav routování konkrétnich hostnames do kontejnerů.

    No a kdybys chtěl víc reselient řešení pro víc hostů, jde použít i Docker swarm. Je to imho jednodušší než K8s a můžeš používat compose pro deployování stacků služeb.
    VELDRANE
    VELDRANE --- ---
    MLEKAR_STEIN: Mno porad mi prijde jednodussi si projit “porodnimi bolestmi” stavby k8s nebo ocp, nez to lepit pokoutne pres linux bridge, vlastni dns a ja nevim cim vsim. Ale proti gustu zadnej disputat :))

    Btw co je starsi server ? Ja tu mam na hrani proliant dl380 gen8 a na te to v kvm jede jak z praku. Mel sem tu i starou gen6, a na ni hezky 8 nodovy ocp cluster (taky v kvm).
    HVJ3R
    HVJ3R --- ---
    MLEKAR_STEIN: Rozjet na jednom nebo dvou starejch serverech se to taky da: minikube a microk8s. Vyhoda je, ze orchestrace (helmy) rozjeta pro tyhle tooly ti bude fungovat i na managed clusteru.
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    VELDRANE: jasně, taky bych rekl ze existuje lepší řešení, ale ne každý umí rozjet k8s cluster
    problem je když na to neni hw a je potreba "ten docker" rozjet na jednom mebo svou starych serverech.
    VELDRANE
    VELDRANE --- ---
    MLEKAR_STEIN: ehh neni tohle presne ten duvod proc zacit s k8s nebo openshiftem ? :)
    MARTEN
    MARTEN --- ---
    Poslu i sem. Tohle je priblizne co pouzivam lokalne. jen tady takove neserazene a bez popisu. https://github.com/marten-cz/docker-templates
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    REFLEX: tak na dev jsem to takhle provozoval. nekde mam k tomu schovany Docker a compose files. v nedeli se dostanu domu tak v pondeli se po tom muzu podivat.
    REFLEX
    REFLEX --- ---
    MLEKAR_STEIN: zapomnel jsem to zminit, ma to byt pouze na dev
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    tak zavisi, jak moc to musi byt production ready.

    taky se.da vytvořit docker network,.te udělat bridge se sitovkou a nastavit routování. pak je ta sit dostupna.
    je to docela hack, ale da se to relativne automatizovat.
    a pak se da udelat autoregistrace do dns. to ani hack neni, jen clovek musi mitinteeni dns.
    pak to muze vypadat tak,ze na fyzickym serveru mam sit propagovanou ven a kontejner z te site se autoregistruje do nejake subdomeny
    a pak se da ke kontaku pristupovat pres dns jmeno :)
    MARTEN
    MARTEN --- ---
    REFLEX: Ty porty bych nedelal, protoze pak by si musel pres host. Poslu ti jak to mam :) Exposnout port DB je dobre pro tebe at se pripojis pres gui, ale ne mezi serivces
    REFLEX
    REFLEX --- ---
    WOODMAKER: pravda to by slo taky, proste by exposoval port databaze, mozna jednodusi reseni
    Kliknutím sem můžete změnit nastavení reklam