{"id":94388,"date":"2020-09-16T07:43:39","date_gmt":"2020-09-16T05:43:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes"},"modified":"2020-09-16T07:43:39","modified_gmt":"2020-09-16T05:43:39","slug":"hranenie-dannyh-v-klastere-kubernetes","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","title":{"rendered":"Datastore i Kubernetes-klynge","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Det er muligt at konfigurere datalagring for applikationer, der k\u00f8rer i Kubernetes-klynger, p\u00e5 flere m\u00e5der. Nogle af dem er allerede for\u00e6ldede, mens andre er helt nye. I denne artikel vil vi se p\u00e5 konceptet med tre forskellige m\u00e5der at tilslutte lagersystemer (S3) p\u00e5, herunder den nyeste: tilslutning via Container Storage Interface.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Datastore i Kubernetes-klynge\" src=\"\/wp-content\/uploads\/2020\/09\/c045dc02cc4db1a0693730574a02eb4a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"sposob-1-ukazanie-pv-v-manifeste-poda\">Metode 1. Angivelse af PV i pod-manifestet<\/h2>\n<p><\/p>\n<p>Et typisk manifest, der beskriver en pod i Kubernetes-klysten: <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Datastore i Kubernetes-klynge\" src=\"\/wp-content\/uploads\/2020\/09\/1df1b236df758f4a4a18905d31413617.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>De farvede sektioner i manifestet angiver, hvilken volumen der forbindes til hvor.<\/p>\n<p><\/p>\n<p>I sektionen <strong>volumeMounts<\/strong> angiver monteringspunkter (mountPath) - hvilken mappe inden i containeren det permanente volumene vil blive monteret, samt navnet p\u00e5 volumenen.<\/p>\n<p><\/p>\n<p>I sektionen <strong>x<\/strong> angiver alle volumener, der bruges i pod'en. De angiver navnet p\u00e5 hvert volumen, typen (i vores tilf\u00e6lde: awsElasticBlockStore) og tilslutningsparametrene. Hvilke parametre der angives i manifestet, afh\u00e6nger af typen af volumen.<\/p>\n<p><\/p>\n<p>Det samme volumen kan monteres i flere containere i pod'en samtidig. S\u00e5ledes kan forskellige applikationsprocesser f\u00e5 adgang til de samme data. <\/p>\n<p><\/p>\n<p>Denne metode tilslutning blev opfundet i starten, da Kubernetes lige var begyndt, og i dag er metoden for\u00e6ldet.<\/p>\n<p><\/p>\n<p>Brugen af denne metode medf\u00f8rer flere problemer: <\/p>\n<p><\/p>\n<ol>\n<li>alle volumener skal oprettes manuelt, Kubernetes kan ikke oprette noget for os;<\/li>\n<li>adgangsparametrene for hvert af volumenerne er unikke, og de skal angives i manifestet for alle pods, der bruger volumenen;<\/li>\n<li>for at \u00e6ndre lagersystemet (for eksempel at flytte fra AWS til Google Cloud) skal indstillingerne og typen af tilsluttede volumener \u00e6ndres i alle manifests.<\/li>\n<\/ol>\n<p><\/p>\n<p>Alt dette er meget besv\u00e6rligt, s\u00e5 i praksis bruges denne metode kun til at forbinde nogle specifikke typer volumener: configMap, secret, emptyDir, hostPath:<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>configMap og secret - systemvolumener, der g\u00f8r det muligt at oprette et volumen i containeren med filer fra Kubernetes-manifestet.<\/p>\n<p>\n<\/li>\n<li>\n<p>emptyDir - et midlertidigt volumen, der kun oprettes i pod'ens levetid. Det er praktisk til testform\u00e5l eller til at opbevare midlertidige data. N\u00e5r pod'en slettes, bliver emptyDir-volumenet ogs\u00e5 slettet, og alle data g\u00e5r tabt.<\/p>\n<p>\n<\/li>\n<li>\n<p>hostPath - giver mulighed for at montere enhver mappe fra serverens lokale disk, hvor applikationen k\u00f8rer, ind i containeren med applikationen, herunder \/etc\/kubernetes. Dette er en usikker funktion, derfor forbyder sikkerhedspolitikker normalt brugen af denne type volumener. Ellers kan en ondsindet applikation montere kataloget HTC Kubernetes inde i sin container og stj\u00e6le alle klyngens certifikater. Generelt tillades hostPath volumener kun for systemapplikationer, der k\u00f8rer i kube-system namespace.<\/p>\n<p>\n<\/li>\n<\/ul>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/storage\/volumes\/#types-of-volumes\">Lagringssystemer, som Kubernetes arbejder med ud af boksen<\/a><\/noindex> er angivet i dokumentationen.<\/p>\n<p><\/p>\n<h2 id=\"sposob-2-podklyuchenie-k-podam-scpvcpv\">Metode 2. Tilslutning til pod'er SC\/PVC\/PV<\/h2>\n<p><\/p>\n<p>Et alternativ til tilslutning er konceptet Storage class, PersistentVolumeClaim, PersistentVolume.<\/p>\n<p><\/p>\n<p><u>Storage class<\/u> opbevarer forbindelsesparametre til lagringssystemet.<\/p>\n<p><\/p>\n<p><u>PersistentVolumeClaim<\/u> beskriver kravene til det volumen, som applikationen har brug for.<br \/>\n<u>PersistentVolume<\/u> opbevarer adgangsparametre og status for volumen.<\/p>\n<p><\/p>\n<p>Kernen i ideen: i pod-manifestet angives volumen af typen PersistentVolumeClaim, og navnet p\u00e5 denne enhed angives i parameteren claimName.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Datastore i Kubernetes-klynge\" src=\"\/wp-content\/uploads\/2020\/09\/08b0460be887d39801d1acb9ee1bbd2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>I manifestet for PersistentVolumeClaim beskrives kravene til de data, der er n\u00f8dvendige for applikationen. Herunder:<\/p>\n<p><\/p>\n<ul>\n<li>diskst\u00f8rrelse; <\/li>\n<li>adgangsm\u00e5de: ReadWriteOnce eller ReadWriteMany;<\/li>\n<li>henvisning til Storage class - hvilket lagringssystem vi \u00f8nsker at oprette volumen i.<\/li>\n<\/ul>\n<p><\/p>\n<p>I manifestet for Storage class opbevares type og forbindelsesparametre til lagringssystemet. Disse er n\u00f8dvendige for kubelet til at montere volumen til sin node. <\/p>\n<p><\/p>\n<p>I manifesterne for PersistentVolume angives Storage class og adgangsparametre til det specifikke volumen (volumen ID, sti, osv.).<\/p>\n<p><\/p>\n<p>N\u00e5r der oprettes en PVC, ser Kubernetes, hvilket volumen der kr\u00e6ves i hvilken st\u00f8rrelse, og fra hvilken Storage class, og v\u00e6lger et ledigt PersistentVolume.<\/p>\n<p><\/p>\n<p>Hvis der ikke er s\u00e5danne PV'er tilg\u00e6ngelige, kan Kubernetes starte et s\u00e6rligt program - Provisioner (navnet angives i Storage class). Dette program tilslutter sig lagringssystemet, opretter et volumen i den kr\u00e6vede st\u00f8rrelse, modtager et ID og skaber et manifest for PersistentVolume i Kubernetes-klyngen, som er forbundet med PersistentVolumeClaim.<\/p>\n<p><\/p>\n<p>Alt dette netv\u00e6rk af abstraktioner g\u00f8r det muligt at fjerne information om, hvilket lagringssystem applikationen arbejder med, fra niveauet for applikationsmanifestet til administrationsniveauet. <\/p>\n<p><\/p>\n<p>Alle forbindelsesparametre til lagringssystemet findes i Storage class, som administreres af clusteradministratorer. Det, man skal g\u00f8re ved overgangen fra AWS til Google Cloud, er at \u00e6ndre navnet p\u00e5 Storage class i PVC i applikationsmanifestet. Persistent Volume til datalagring vil blive oprettet automatisk i klyngen ved hj\u00e6lp af Provisioner-programmet.<\/p>\n<p><\/p>\n<h2 id=\"sposob-3-container-storage-interface\">Metode 3. Container Storage Interface<\/h2>\n<p><\/p>\n<p>Al koden, der interagerer med forskellige lagringssystemer, er en del af kernen i Kubernetes. Udgivelse af fejlrettelser eller nye funktioner er knyttet til nye versioner, og koden skal \u00e6ndres for alle underst\u00f8ttede versioner af Kubernetes. Alt dette er vanskeligt at vedligeholde og tilf\u00f8je nye funktioner.<\/p>\n<p><\/p>\n<p>For at l\u00f8se problemet skabte udviklerne fra Cloud Foundry, Kubernetes, Mesos og Docker Container Storage Interface (CSI) \u2014 et enkelt, ensartet gr\u00e6nseflade, der beskriver samspillet mellem containerh\u00e5ndteringssystemet og en specifik driver (CSI Driver), der arbejder med et bestemt lagringssystem. Al kode, der interagerer med lagringssystemet, blev flyttet fra kernen i Kubernetes til et separat system.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/blog\/2019\/01\/15\/container-storage-interface-ga\/\">Dokumentation til Container Storage Interface<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Som regel best\u00e5r CSI Driver af to komponenter: Node Plugin og Controller plugin.<\/p>\n<p><\/p>\n<p>Node Plugin k\u00f8rer p\u00e5 hver node og er ansvarlig for montering af volumes og operationer p\u00e5 dem. Controller plugin interagerer med lagringssystemet: opretter eller sletter volumes, tildeler adgangsrettigheder mv.<\/p>\n<p><\/p>\n<p>Der findes stadig gamle drivere i kernen i Kubernetes, men det anbefales ikke at bruge dem, og alle r\u00e5des til at installere CSI Driver specifikt til det system, de skal arbejde med.<\/p>\n<p><\/p>\n<p>Innovationer kan skr\u00e6mme dem, der allerede er vant til at konfigurere datalagring via Storage class, men der er faktisk ikke sket noget skr\u00e6mmende. For programm\u00f8rer \u00e6ndrer det sig ikke \u2014 de vil fortsat arbejde med navnet p\u00e5 Storage class. For administratorer er der tilf\u00f8jet installation af helm chart og strukturen for indstillingerne er \u00e6ndret. Tidligere blev indstillingerne indtastet direkte i Storage class, men nu skal de f\u00f8rst angives i helm chart og derefter i Storage class. N\u00e5r man ser n\u00e6rmere p\u00e5 det, er der ikke sket noget skr\u00e6mmende.<\/p>\n<p><\/p>\n<p>Lad os med et eksempel se p\u00e5, hvilke fordele man kan f\u00e5 ved at skifte til tilslutning af Ceph-lagringssystemet via CSI-driveren.<\/p>\n<p><\/p>\n<p>N\u00e5r man arbejder med Ceph, giver CSI-pluginet flere muligheder for arbejde med lagringssystemet end de indbyggede drivere.<\/p>\n<p><\/p>\n<ol>\n<li><strong>Dynamisk oprettelse af diske.<\/strong> Normalt bruges RBD-diskene kun i RWO-tilstand, men CSI for Ceph giver mulighed for at bruge dem i RWX-tilstand. Flere pods p\u00e5 forskellige noder kan montere den samme RDB-disk p\u00e5 deres noder og arbejde med dem samtidigt. For retf\u00e6rdighedens skyld er det ikke alt s\u00e5 str\u00e5lende - denne disk kan kun tilsluttes som en blok-enhed, hvilket betyder, at applikationen skal tilpasses til at arbejde med den i en multi-adgangs-tilstand.<\/li>\n<li><strong>Oprettelse af snapshots.<\/strong> I Kubernetes-klyngen kan man oprette et manifest, der kr\u00e6ver oprettelse af et snapshot. CSI-pluginet vil bem\u00e6rke det og tage et snapshot af disken. P\u00e5 baggrund af dette kan der laves enten en backup eller en kopi af PersistentVolume. <\/li>\n<li><strong>For\u00f8gelse af diskst\u00f8rrelsen<\/strong> p\u00e5 SAN og PersistentVolume i Kubernetes-klyngen.<\/li>\n<li><strong>Kvoter.<\/strong> De indbyggede CephFS-drivere i Kubernetes underst\u00f8tter ikke kvoter, mens de nyeste CSI-plugins med den nyeste Ceph Nautilus kan aktivere kvoter p\u00e5 CephFS-partitioner.<\/li>\n<li><strong>Metrikker.<\/strong> CSI-pluginet kan give Prometheus en r\u00e6kke metrikker om, hvilke volumener der er tilsluttet, hvilke interaktioner der foreg\u00e5r, osv.<\/li>\n<li><strong>Topology aware.<\/strong> Tillader angivelse i manifester, hvordan klyngen er geografisk fordelt, og undg\u00e5r tilslutning til pods, der k\u00f8rer i London, fra datalagringssystemet, der ligger i Amsterdam. <\/li>\n<\/ol>\n<p><\/p>\n<p>Hvordan man tilslutter Ceph til Kubernetes-klyngen via CSI, se <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/DteNn-1f-WI\">i den praktiske del af aftenskolens forel\u00e6sning af Slyerm<\/a><\/noindex>. Man kan ogs\u00e5 tilmelde sig <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Ssx7pg\">video-kurset Ceph<\/a><\/noindex>, som starter den 15. oktober. <\/p>\n<p><\/p>\n<p><em>Artiklen er skrevet af Sergey Bondarev, praktiserende arkitekt hos Southbridge, Certified Kubernetes Administrator, en af udviklerne af kubespray.<\/em><\/p>\n<p><\/p>\n<p>                        <b class=\"spoiler_title\">Lidt Post Scriptum ikke som reklame, men for at v\u00e6re til nytte...<\/b><\/p>\n<p>P.S. Sergey Bondarev leder to intensive kurser: den opdaterede <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/1WIJFg\">Kubernetes Basis<\/a><\/noindex> 28-30 september og det avancerede <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Wbqz5g\">Kubernetes Mega<\/a><\/noindex> 14-16 oktober.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Datastore i Kubernetes-klynge\" src=\"\/wp-content\/uploads\/2020\/09\/69752ee9f7c9caf887011564139baf16.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/519130\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0421\u0425\u0414, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u2014 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Container Storage Interface. \u0421\u043f\u043e\u0441\u043e\u0431 1. \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 PV \u0432 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u0435 \u043f\u043e\u0434\u0430 \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes: \u0426\u0432\u0435\u0442\u043e\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":94389,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-94388","post","type-post","status-publish","format-standard","has-post-thumbnail","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=\"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e.\" \/>\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\/da\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-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=\"2020-09-16T05:43:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-16T05:43:39+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\udd47Datalagring i Kubernetes-klyngen | ProHoster","description":"Det er muligt at konfigurere datalagring for applikationer, der k\u00f8rer i Kubernetes-klyngen, p\u00e5 flere forskellige m\u00e5der. Nogle af dem er allerede for\u00e6ldede, mens andre er dukket op for nylig.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes | ProHoster","og:description":"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-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":"2020-09-16T05:43:39+00:00","article:modified_time":"2020-09-16T05:43:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94388","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:27:34","updated":"2022-10-02 10:35:39","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/94388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=94388"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/94388\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/94389"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=94388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=94388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=94388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}