From 95dae5fbda7910b1ccf1b04cfbdbadb0dc100f7d Mon Sep 17 00:00:00 2001 From: woody_lin Date: Tue, 3 Mar 2026 16:39:52 +0800 Subject: [PATCH] feat: Add v0.6 documentation content and update documentation build configuration. --- astro.config.mjs | 4 + package.json | 1 + pnpm-lock.yaml | 172 ++++- src/assets/v0.6/otter-2.png | Bin 0 -> 531536 bytes src/content.config.ts | 4 +- .../basic/configuration/01-ntp-server.mdx | 47 ++ .../basic/configuration/02-boot-image.mdx | 51 ++ .../basic/configuration/03-machine-tag.mdx | 62 ++ .../configuration/04-package-repository.mdx | 42 ++ src/content/docs/v0.6/basic/machines.mdx | 166 +++++ src/content/docs/v0.6/basic/networking.mdx | 102 +++ src/content/docs/v0.6/create-scope.md | 24 + .../docs/v0.6/demos/01-virtual-machine.mdx | 185 ++++++ src/content/docs/v0.6/demos/02-coder.mdx | 72 +++ src/content/docs/v0.6/demos/03-jupyterhub.mdx | 75 +++ src/content/docs/v0.6/demos/04-llm-model.mdx | 103 +++ src/content/docs/v0.6/demos/05-postgres.mdx | 279 ++++++++ .../docs/v0.6/demos/06-create-helm-chart.mdx | 219 +++++++ .../v0.6/demos/07-aidaptivcache-operator.mdx | 97 +++ .../v0.6/demos/08-aidaptivcache-finetune.mdx | 527 ++++++++++++++++ .../v0.6/demos/09-aidaptivcache-inference.mdx | 596 ++++++++++++++++++ .../v0.6/getting-started/01-prerequisites.mdx | 222 +++++++ .../v0.6/getting-started/02-installation.mdx | 81 +++ .../docs/v0.6/getting-started/03-scope.mdx | 107 ++++ src/content/docs/v0.6/guides/example.md | 12 + src/content/docs/v0.6/index.mdx | 71 +++ src/content/docs/v0.6/introduction.mdx | 84 +++ src/content/docs/v0.6/reference/example.md | 12 + .../service/applications/01-workloads.mdx | 93 +++ .../v0.6/service/applications/02-services.mdx | 25 + .../v0.6/service/applications/03-secrets.mdx | 37 ++ .../v0.6/service/applications/04-store.mdx | 120 ++++ src/content/docs/v0.6/service/compute.mdx | 95 +++ src/content/docs/v0.6/service/models.mdx | 83 +++ .../docs/v0.6/service/repositories.mdx | 120 ++++ .../v0.6/service/settings/01-extensions.mdx | 63 ++ .../service/settings/02-built-in-test.mdx | 72 +++ .../v0.6/service/settings/03-data-volume.mdx | 68 ++ .../service/settings/04-instance-type.mdx | 57 ++ .../service/settings/05-model-artifact.mdx | 56 ++ .../docs/v0.6/service/storage/01-osd.mdx | 56 ++ .../docs/v0.6/service/storage/02-pool.mdx | 80 +++ .../v0.6/service/storage/03-block-device.mdx | 105 +++ .../v0.6/service/storage/04-file-system.mdx | 220 +++++++ .../docs/v0.6/service/storage/05-smb.mdx | 74 +++ .../docs/v0.6/service/storage/06-object.mdx | 205 ++++++ src/content/versions/v0.6.json | 121 ++++ 47 files changed, 5140 insertions(+), 27 deletions(-) create mode 100644 src/assets/v0.6/otter-2.png create mode 100644 src/content/docs/v0.6/basic/configuration/01-ntp-server.mdx create mode 100644 src/content/docs/v0.6/basic/configuration/02-boot-image.mdx create mode 100644 src/content/docs/v0.6/basic/configuration/03-machine-tag.mdx create mode 100644 src/content/docs/v0.6/basic/configuration/04-package-repository.mdx create mode 100644 src/content/docs/v0.6/basic/machines.mdx create mode 100644 src/content/docs/v0.6/basic/networking.mdx create mode 100644 src/content/docs/v0.6/create-scope.md create mode 100644 src/content/docs/v0.6/demos/01-virtual-machine.mdx create mode 100644 src/content/docs/v0.6/demos/02-coder.mdx create mode 100644 src/content/docs/v0.6/demos/03-jupyterhub.mdx create mode 100644 src/content/docs/v0.6/demos/04-llm-model.mdx create mode 100644 src/content/docs/v0.6/demos/05-postgres.mdx create mode 100644 src/content/docs/v0.6/demos/06-create-helm-chart.mdx create mode 100644 src/content/docs/v0.6/demos/07-aidaptivcache-operator.mdx create mode 100644 src/content/docs/v0.6/demos/08-aidaptivcache-finetune.mdx create mode 100644 src/content/docs/v0.6/demos/09-aidaptivcache-inference.mdx create mode 100644 src/content/docs/v0.6/getting-started/01-prerequisites.mdx create mode 100644 src/content/docs/v0.6/getting-started/02-installation.mdx create mode 100644 src/content/docs/v0.6/getting-started/03-scope.mdx create mode 100644 src/content/docs/v0.6/guides/example.md create mode 100644 src/content/docs/v0.6/index.mdx create mode 100644 src/content/docs/v0.6/introduction.mdx create mode 100644 src/content/docs/v0.6/reference/example.md create mode 100644 src/content/docs/v0.6/service/applications/01-workloads.mdx create mode 100644 src/content/docs/v0.6/service/applications/02-services.mdx create mode 100644 src/content/docs/v0.6/service/applications/03-secrets.mdx create mode 100644 src/content/docs/v0.6/service/applications/04-store.mdx create mode 100644 src/content/docs/v0.6/service/compute.mdx create mode 100644 src/content/docs/v0.6/service/models.mdx create mode 100644 src/content/docs/v0.6/service/repositories.mdx create mode 100644 src/content/docs/v0.6/service/settings/01-extensions.mdx create mode 100644 src/content/docs/v0.6/service/settings/02-built-in-test.mdx create mode 100644 src/content/docs/v0.6/service/settings/03-data-volume.mdx create mode 100644 src/content/docs/v0.6/service/settings/04-instance-type.mdx create mode 100644 src/content/docs/v0.6/service/settings/05-model-artifact.mdx create mode 100644 src/content/docs/v0.6/service/storage/01-osd.mdx create mode 100644 src/content/docs/v0.6/service/storage/02-pool.mdx create mode 100644 src/content/docs/v0.6/service/storage/03-block-device.mdx create mode 100644 src/content/docs/v0.6/service/storage/04-file-system.mdx create mode 100644 src/content/docs/v0.6/service/storage/05-smb.mdx create mode 100644 src/content/docs/v0.6/service/storage/06-object.mdx create mode 100644 src/content/versions/v0.6.json diff --git a/astro.config.mjs b/astro.config.mjs index da329d2..d4b921a 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -1,6 +1,7 @@ // @ts-check import { defineConfig } from 'astro/config'; import starlight from '@astrojs/starlight'; +import starlightVersions from 'starlight-versions'; import tailwindcss from '@tailwindcss/vite'; import starlightOpenAPI, { openAPISidebarGroups } from 'starlight-openapi'; import Icons from 'unplugin-icons/vite'; @@ -140,6 +141,9 @@ export default defineConfig({ ], customCss: ['./src/styles/global.css'], plugins: [ + starlightVersions({ + versions: [{ slug: 'v0.6' }] + }), // Generate the OpenAPI documentation pages. starlightOpenAPI([ { diff --git a/package.json b/package.json index 6595a09..33565a1 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "astro": "^5.6.1", "sharp": "^0.34.2", "starlight-openapi": "^0.21.1", + "starlight-versions": "^0.7.0", "tailwindcss": "^4.0.7", "unplugin-icons": "^22.5.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 59308c3..a7f480d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,10 +10,10 @@ importers: dependencies: '@astrojs/starlight': specifier: ^0.36.2 - version: 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)) + version: 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) '@astrojs/starlight-tailwind': specifier: ^4.0.2 - version: 4.0.2(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)))(tailwindcss@4.1.17) + version: 4.0.2(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)))(tailwindcss@4.1.17) '@fontsource/geist': specifier: ^5.2.8 version: 5.2.8 @@ -28,16 +28,19 @@ importers: version: 2.2.413 '@tailwindcss/vite': specifier: ^4.0.7 - version: 4.1.17(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)) + version: 4.1.17(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2)) astro: specifier: ^5.6.1 - version: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3) + version: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2) sharp: specifier: ^0.34.2 version: 0.34.5 starlight-openapi: specifier: ^0.21.1 - version: 0.21.1(@astrojs/markdown-remark@6.3.8)(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)))(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3))(openapi-types@12.1.3) + version: 0.21.1(@astrojs/markdown-remark@6.3.8)(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)))(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))(openapi-types@12.1.3) + starlight-versions: + specifier: ^0.7.0 + version: 0.7.0(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))) tailwindcss: specifier: ^4.0.7 version: 4.1.17 @@ -1113,6 +1116,9 @@ packages: fast-uri@3.1.0: resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -1132,6 +1138,10 @@ packages: fontkit@2.0.4: resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==} + format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -1403,6 +1413,9 @@ packages: mdast-util-from-markdown@2.0.2: resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + mdast-util-gfm-autolink-literal@2.0.1: resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} @@ -1454,6 +1467,12 @@ packages: micromark-extension-directive@3.0.2: resolution: {integrity: sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==} + micromark-extension-directive@4.0.0: + resolution: {integrity: sha512-/C2nqVmXXmiseSSuCdItCMho7ybwwop6RrrRPk0KbOHW21JKoCldC+8rFOaundDoRBUWBnJJcxeA/Kvi34WQXg==} + + micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + micromark-extension-gfm-autolink-literal@2.1.0: resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} @@ -1742,6 +1761,12 @@ packages: remark-directive@3.0.1: resolution: {integrity: sha512-gwglrEQEZcZYgVyG1tQuA+h58EZfq5CSULw7J90AFuCTyib1thgHPoqQ+h9iFvU6R+vnZ5oNFQR5QKgGpk741A==} + remark-directive@4.0.0: + resolution: {integrity: sha512-7sxn4RfF1o3izevPV1DheyGDD6X4c9hrGpfdUpm7uC++dqrnJxIZVkk7CoKqcLm0VUMAuOol7Mno3m6g8cfMuA==} + + remark-frontmatter@5.0.0: + resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} + remark-gfm@4.0.1: resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} @@ -1761,6 +1786,9 @@ packages: remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + remark@15.0.1: + resolution: {integrity: sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==} + require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -1831,6 +1859,12 @@ packages: '@astrojs/starlight': '>=0.34.0' astro: '>=5.5.0' + starlight-versions@0.7.0: + resolution: {integrity: sha512-obz0/sdoflXBqr1zwu12KlkioRy0bFtvbmdVyT/4Ax7LObDJXBkmSymU72Z3vj3ajKZYui0RAle2wiqghaaeOw==} + engines: {node: '>=18'} + peerDependencies: + '@astrojs/starlight': '>=0.32.0' + stream-replace-string@2.0.0: resolution: {integrity: sha512-TlnjJ1C0QrmxRNrON00JvaFFlNh5TTG00APw23j74ET7gkQpTASi6/L2fuiav8pzK715HXtUeClpBTw2NPSn6w==} @@ -2133,6 +2167,11 @@ packages: xxhash-wasm@1.1.0: resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==} + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + engines: {node: '>= 14.6'} + hasBin: true + yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} @@ -2208,12 +2247,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.3.10(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3))': + '@astrojs/mdx@4.3.10(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@astrojs/markdown-remark': 6.3.8 '@mdx-js/mdx': 3.1.1 acorn: 8.15.0 - astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3) + astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2) es-module-lexer: 1.7.0 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.5 @@ -2237,22 +2276,22 @@ snapshots: stream-replace-string: 2.0.0 zod: 3.25.76 - '@astrojs/starlight-tailwind@4.0.2(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)))(tailwindcss@4.1.17)': + '@astrojs/starlight-tailwind@4.0.2(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)))(tailwindcss@4.1.17)': dependencies: - '@astrojs/starlight': 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)) + '@astrojs/starlight': 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) tailwindcss: 4.1.17 - '@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3))': + '@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@astrojs/markdown-remark': 6.3.8 - '@astrojs/mdx': 4.3.10(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)) + '@astrojs/mdx': 4.3.10(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) '@astrojs/sitemap': 3.6.0 '@pagefind/default-ui': 1.4.0 '@types/hast': 3.0.4 '@types/js-yaml': 4.0.9 '@types/mdast': 4.0.4 - astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3) - astro-expressive-code: 0.41.3(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)) + astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2) + astro-expressive-code: 0.41.3(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) bcp-47: 2.1.0 hast-util-from-html: 2.0.3 hast-util-select: 6.0.4 @@ -2804,12 +2843,12 @@ snapshots: '@tailwindcss/oxide-win32-arm64-msvc': 4.1.17 '@tailwindcss/oxide-win32-x64-msvc': 4.1.17 - '@tailwindcss/vite@4.1.17(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2))': + '@tailwindcss/vite@4.1.17(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2))': dependencies: '@tailwindcss/node': 4.1.17 '@tailwindcss/oxide': 4.1.17 tailwindcss: 4.1.17 - vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2) '@types/debug@4.1.12': dependencies: @@ -2903,12 +2942,12 @@ snapshots: astring@1.9.0: {} - astro-expressive-code@0.41.3(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)): + astro-expressive-code@0.41.3(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)): dependencies: - astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3) + astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2) rehype-expressive-code: 0.41.3 - astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3): + astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2): dependencies: '@astrojs/compiler': 2.13.0 '@astrojs/internal-helpers': 0.7.4 @@ -2964,8 +3003,8 @@ snapshots: unist-util-visit: 5.0.0 unstorage: 1.17.2 vfile: 6.0.3 - vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2) - vitefu: 1.1.1(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)) + vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2) + vitefu: 1.1.1(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2)) xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 yocto-spinner: 0.2.3 @@ -3241,6 +3280,10 @@ snapshots: fast-uri@3.1.0: {} + fault@2.0.1: + dependencies: + format: 0.2.2 + fdir@6.5.0(picomatch@4.0.3): optionalDependencies: picomatch: 4.0.3 @@ -3264,6 +3307,8 @@ snapshots: unicode-properties: 1.4.1 unicode-trie: 2.0.0 + format@0.2.2: {} + fsevents@2.3.3: optional: true @@ -3652,6 +3697,17 @@ snapshots: transitivePeerDependencies: - supports-color + mdast-util-frontmatter@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + mdast-util-gfm-autolink-literal@2.0.1: dependencies: '@types/mdast': 4.0.4 @@ -3822,6 +3878,23 @@ snapshots: micromark-util-types: 2.0.2 parse-entities: 4.0.2 + micromark-extension-directive@4.0.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + parse-entities: 4.0.2 + + micromark-extension-frontmatter@2.0.0: + dependencies: + fault: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + micromark-extension-gfm-autolink-literal@2.1.0: dependencies: micromark-util-character: 2.1.1 @@ -4304,6 +4377,24 @@ snapshots: transitivePeerDependencies: - supports-color + remark-directive@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-directive: 3.1.0 + micromark-extension-directive: 4.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-frontmatter@5.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-frontmatter: 2.0.1 + micromark-extension-frontmatter: 2.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + remark-gfm@4.0.1: dependencies: '@types/mdast': 4.0.4 @@ -4352,6 +4443,15 @@ snapshots: mdast-util-to-markdown: 2.1.2 unified: 11.0.5 + remark@15.0.1: + dependencies: + '@types/mdast': 4.0.4 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + require-from-string@2.0.2: {} restructure@3.0.2: {} @@ -4472,17 +4572,34 @@ snapshots: space-separated-tokens@2.0.2: {} - starlight-openapi@0.21.1(@astrojs/markdown-remark@6.3.8)(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)))(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3))(openapi-types@12.1.3): + starlight-openapi@0.21.1(@astrojs/markdown-remark@6.3.8)(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)))(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))(openapi-types@12.1.3): dependencies: '@astrojs/markdown-remark': 6.3.8 - '@astrojs/starlight': 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)) + '@astrojs/starlight': 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) '@readme/openapi-parser': 4.1.2(openapi-types@12.1.3) - astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3) + astro: 5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2) github-slugger: 2.0.0 url-template: 3.1.1 transitivePeerDependencies: - openapi-types + starlight-versions@0.7.0(@astrojs/starlight@0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2))): + dependencies: + '@astrojs/starlight': 0.36.2(astro@5.15.7(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.2)(typescript@5.9.3)(yaml@2.8.2)) + '@pagefind/default-ui': 1.4.0 + github-slugger: 2.0.0 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + remark: 15.0.1 + remark-directive: 4.0.0 + remark-frontmatter: 5.0.0 + remark-mdx: 3.1.1 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + yaml: 2.8.2 + transitivePeerDependencies: + - supports-color + stream-replace-string@2.0.0: {} string-width@4.2.3: @@ -4672,7 +4789,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2): + vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2): dependencies: esbuild: 0.25.12 fdir: 6.5.0(picomatch@4.0.3) @@ -4685,10 +4802,11 @@ snapshots: fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.30.2 + yaml: 2.8.2 - vitefu@1.1.1(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)): + vitefu@1.1.1(vite@6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2)): optionalDependencies: - vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@24.10.1)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2) web-namespaces@2.0.1: {} @@ -4708,6 +4826,8 @@ snapshots: xxhash-wasm@1.1.0: {} + yaml@2.8.2: {} + yargs-parser@21.1.1: {} yocto-queue@1.2.2: {} diff --git a/src/assets/v0.6/otter-2.png b/src/assets/v0.6/otter-2.png new file mode 100644 index 0000000000000000000000000000000000000000..0facec17127bae7ba4fb3df597fb0062ce6c55ec GIT binary patch literal 531536 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

CNja|jjH1(tyE)sOa~ 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

}Lqm@g2moGVY^J{bw)FSB2LzeFe|>XLenM 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

4B0r?x8Kn8!(uu6y?4ng?BA9t84Nn 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

I#4Cf8(GSX2@G?gJG6_X?fM| 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 z z`{a@|h%0Zr77i@TT3wp9naF6L7KflFc@Rfk_tDq1cWx3fC?C1c+S}kRd34k0johh? zL0?_J8SdPBXl-hWl{6lHyrld~d!$q-U6oQHeE*#*VMa<3!YZ#w;cj3%%WspRBW9-uvi_dVe%?f2YgzDOw+S^Ka^6a_s1kRVCEm~bvvx{{S<*1 zF0^d?`t!r@xk9neHF!ssLE6|{DFU{_54YB5XJVvIn!y=X`f;C=ay`wmf0bpUAs#g%s2UE;R-ZqA{-?!4?jWbZBD663AN%1b z+5l5@2KSkLK*>kphrBcQ0RTK;-#&ZcibW~*VwCD=!_#Na!lTDe!lQ>zLap8kORHKRU3W3e)C@V^s_I+^&7Xt@|u_-3?Ro+JHnBYqHCwExQmIy zh+(`rg=K{5YW1!t?g!!3b_@f`Z6Us#~;$}n4 zHVPE3q=D#)YgF?1O*15?&1186Q;|qvD%BFcx9t_Tx-A%zz-_nKXP~G4_ zyS(b!TCEZ8J$P*Ogc=d+p4W5yjlz5^aSY-B0JDqCGIBEWk;4b|UII*_P`JG)oW?8O z;ZOI<9}i}A<9(VOgUlQ*AWuy(14)~e8Bt+1POccP-?|fS+`6lK4v1nlEAcNn(>*h1 z)cXhqFl-Er88Zo}KX~WuFgIJW0RWU8d$&UjO2;mE`(lua=ysGZcRnZ&UI}y)5Xm3c zX>WR97M*^&sVnVlN{xlVHu%P~CyU|~GeBlVZ8;7V?G&(ZLT?blvNBJLA% zV@J~I%X=yQdKuUGo3&~2jkph8c2L|ENBBuc$`CXIgIw+?IjBWNrJxalLa67L=9 zXB%kkBbld&+_Ac#{OuM!pntPJm7`v$XT>m@U=g=+%-D?$bm}cDwK%(kErd4PTquTo zaV9)|x)eVC^t15MC!d8!s*~lJIok$MldNJ}7)AJl|I}s9lmIPcpF|dNvN&>2$H;Ti z_s9DrZn_dTOd9pN`qLTJvySnS+_WULb|V}+d?@^#Kl^Dos5)1#uE}mEREh zHnp&D@Y-yy{Ldx>0253QF&O~(7UAlnN9}V*Pu*>|>K8iA<`2r{l5J9R=4icTy5k+u zX*#CWIr{)W8t!&(Zr=Q|&m|#P;lCIxqvd=v_x9bp;r_$N;okj6y1yT8-nkcU-M+8R z{$99q_hGoLPJeNEMegNIvN8bHK0RFsIWcKg;TyA*xqi*>7&h@qgf~;}Vtkw*@E8Sh zm`j|8&4N>?ndvXczv=a6xODzpID7VljkdEauOPuM;rv~AjyXe$GsgX}JVg z+l4JvReQ-7D%S44xp7kpN=dKMD*!ya*v>s120Y9!DLJ&4?|<(~I50mKI<30e&dvt_ zhNWkmx0}g}7Xn3LJBq)iYprbc+>(M7`A#o?y`FMMzHi93?6aJ*4A>^*;Zeyp7G~^er|q`tG5h*W*=NhZ zl&y5BR7zoXwiHesKNc=sJS)ZjQn+ybOgMS$n3>ZS@+hGUa3~lCi{Z1h7X|__i}CA^ zkf*O3@g3A1!+h*T`5BXV<<8x9>d+oLN*TR_rSh4b>Hv@v}P2&UTPI!oY!Q zsg9gZ;ZJ`0<512| zhemxZIT0aQgZcl zyRrNl1_l;8V(QaVxf|zRfBV1t&Bq_tlUEZ=@SO&HYJzVOZajEU|KVG2-hKA;@!t}M zIKvV%_*6%KD64jrJx(F#Pu*~II0QMH1@AE}9}J-L2Gx4gCRtc2hv38VI(uV^gcxeM zYzmeg2q+HR6nC`~#Od_q26vq)4l7hu6frZ&Jv03bD!_nI`c2aibs2}4Cws*(hVyqY zOOj#?8vkJ%NxXT5Fv1}_iB~cc^O4|(XmIrKfpF#Zi?*D*(`x8Ff?UtNBMAbZ?doBs z;d!$;Y}RgnJRDmIX?qwGf-(T1$P`D*jQBk0YWK2d&xu_#-bD=c&ZNU0Vm;zKh;>!N zq8(g$`|bl90H9lBASzw-Ufvxk_HNAKVr{mGNIAZA`9e5x{IDq+q0>|w(G`o<4!mxX z-sqa~0gvmb`jURvt;-|q6ON@Vi6zS)Z2&-5zLS3E{)6zHlwuDTydyigMW7=X{ zqfdiZ5^wxE!$ZXfAW(bhwoi^L-nf_rrHgYMP@2x)!#U9RVtOt zmwKb6^yCT5o?jNmg+97|sT8f95lmC@@iFiE;rtAE#qRT0$*9wg-2jWIIR|w z{pu@JR{3J-L9O2Tho9fL5x?Cz!35uNY~)ZAyy{q=dc5?90KiYgLm9qVS;`DAkRJkz!iqXayoz=`xY*px2hJ(RI?!lYD4c)xwk$2Ic6XE#Gm|T zWIZqU@}nc6uc0t(^j&_(&yBUM6L<1>5Vi?jw%@u3Pg6F1#MjA$4z9`=zUsv6|LK#* zYzg-i{)^dGIKM#Y-VQwMbok#^kdKaG_m1rQL3UmSC?^-z2bJ5na`g5ANR!!@MC$jW z2>3OPv{~9N$Udi$&C}RcqkY~n8yb}=+*7|t)p7D9neh^N8wA6`-)robIy1rMKzT() zUUkX(@`jY}ir#d>p@Rq1=N^zEB|B1fP^3B2g}Ox_Obb1Ee_mUIS!7+f`b7hg{lSdE2 z!u(A5JAeAO!lmO^ zcI0+;ikX=iD?9S6(`wJ0J%0${bb<*c5cYo$GQpPdmtTHaFBBL4>B6BS|K!n=rzd1wBMIU~+l*y4Mfo=df3 zgq)FI{TMs!em9nI#q2OQhCVHS;-gViX5zt3-8hK4VDLdiJRo54N=DsT0YH3Vt}NTE zt}fdCZ4UmcS66Msoo`b&8g*MT+6x1p2Itp)hL>fQb{pAp=;d3Fs5e;}he7_NX}fUu z)De{0B8TEh3QXsX-*ctfTGd6dXW^78C4y$5RMfQ-s?};VPhm6ZbEMM*rI9T!p0j3- ztUm}o)PL?t=fc8*wQ0-;`GLJOEbVH~g+fW`SvLU`cwdmUzg2iVHw(AFRd;)h?Z(N= zGV4BT{<4q`+vDVj@0=X5&vm~$`{ zGvs%RL)tR%{P1{fj1z8q`4;PL!IX=K4g(zLCyM_ z9SF++z_gSxW@3wqf4LBXsfUVp-o9fK`3VGwhlk4yGBd|n`1{>LHvL=0IQJgkVdQXs z(*C924~6WvZiMkwKNHXa!PS%GE!P5e>#IVtvhPPkN_wFCXG ze*R7P)o(rsAAIszc<}IfXoo^5Ru%xkKt8`rRrGaxAT^Q7xGklVtN35&6teP;w zQaBE&^~MPxOCrbta31KC*W+20fAxIY}^q3V4m2A`J&{(P>Z_f zaGmq#&W1w=7Hn3Bg@XtjsCbD?_pJbF&(Z`D?CL}iLBR7*0h(YUY$l&#eomP}fj}1B z#5x|&tw@lxgY94^<%Pf);}{7cYdgw2d4hceD)XxopLYwp>DSAE*O}eIe#wtf=^Fk{ zb=^C2!Ruf|90-^x6+>>S9m=Jg&3bYc%S>4+wUliXzMR=hoTQKq)9Pa4cRJ799AcXq zgUxeub75(DCA|Os`{9F+KMK#EKM%9>3&snn*YHK`=cd@hFGWs45l{AFvn7mYPWoqn z0wsfxz((OKmF;C z!{tloY)gveK_{L?fp0vMN4@akfQZ4&dhysSHd8lW1ia39e7LZp(~4OSPCEr{nw3A4 zQ>)p^J!>q+f|_8039O%);9H7%Y2o@CZ(aF6FRfNTSX^BWvl4)e*{Rq&?0d`1SPsIt z&KO}WO=5pC6k|f+*@V(#_T>(N3ir-nyZ$8T4iF^oyLQHe)3U?-3bru74s4SfsV)k# z9V*4?@cPAb;pm}x8;zfmS!DXU*VP6L^k_`@6@@d}G%$0TK%JoKHUeCFP;6ZO_&dpJ zc5h1zO&A<4xKO<^a^;?axL8_L?-5G*)RdiootVeHs`LZ2q1cYn>BgQ5x4@O8y}(}i z`=T(a+{Xd8PLBPSAH-)|oV=elO3ZA)sUziv^ywKTW^T4(d+1TFj~$*5=T03Dokq?2 z+;*$pRla(8(yO28JOVLZ(GFYziU+{OZDhP}HmLtoQUJ?DCEUJqH~jX!--pkyePyS; zS7zp9pTlcg_C*_r)hp$u3Q1cV)jN<~~&@hv{M^ zG$jk%fBZCj_{nGC-M{%&_`~Pd!h# zLrUI&y#J;S^zNsntWOzHxqLMMrOu4Ltva-AB&u7gH|^$Hm@DVPpZ)ZY!|ShIQ2k$! z+l~!>5q5Uq0r`fcJ9xdDGRe!TkK{2yTU}FnOimN88C>^bxj4vOr8rrqh} z4_0O;D*z^#Ai?HZ&;+j}-hKDo*6pRnZ;zci`G0x*bn)}$)wNJ>G)=fcSwS$%GV9%7 z2Kec;8EiX5F-BXK&Fzq|NT-dy!?0zS8Jt#QP1p7C)*Ekx!-o!pk{A!8@+`}X!kn0} z82N7G#eT$#Oc!B|qH!4HCQUmA!Wn~4@{0iguSd)PZpMGNgR%;!yCHrcP#Q+J zkwNu(v+c@(eFQ76q>(+>CTNaGA9kG_-1|UB92A(ak8B=prp~01&fjkz$ctD<5Wua@ zpb)G6l*?uNngl1G=cUo02=RGIX-d{#vuca$I7KI0KONkAeP#Pfu~Jraa<;sCM#?^e zUXPwU3%`H=qwvwy&%=|aOJR2IU?|TX2&>hqsBZRTQSOVOB;^tXg+X)T&k7jI+G#u3 z4`n|n?w)sh4U}3B%eMf!dA#OK>F2=GT&beS=HsV?69qnBnh!xre7-y@IUpbIK71U0 z_x>m0m+!qFu6=VWEUilE&XvM+u_QY)b_lBN@t2>b^s}_y0~0*W>9l9_XJdZF`rYS7 z_a;N2rc!|=TNG69I5Ps-;*>6jadF&`HyI$~(g(ozs@1hZtJ4|2^mT$kAcyx!MVVl? zF@6eof>#>%?%nHLI(+>4+@blYTeoh%b6|dUp;DGGBSu(VtBOHJ29{A+^;y{~}viFsk{WHU0dZLhno%)K#6`xCPlVZ~>QHli1XzmH6Skz=^083`y@>!E1h z^pDCtOaDW=9^e4y&YTHvzxBGTHPi@NfzzDDb!`U97_SI{mDwUgk{|B9r(hfd8jsC- z;1TJ^IM=;$?8h+kjo5JlM`M@0AL`vep@~xDPp+o(;r@fiVP&N%WA=lnYfP4ff+&+< zFJ2%Du_^>EV|R(4(=do7Hs3^{K@ z>8iIn;p0Di8tM%RoB4v$6%*9+tuKLcjUbCj+XU517tX8goV4Ysd@tSiKkp{2ZYKBp z9*XGZ+R?yj@@*7>LQ}!6!01xf9`c?_y_DL@FvxOY1vZlh~vuAqW z36;uBC`!qD`sBI#-CU^F8=)+-mfU$223$-rNDMedJR)TQc)g|#%f02L?(H=9w%jWW z1|b@aW_Z4|93DS;VqYVu%+AFD0=4UAtHrFL$|xryP4b*8d_-3i*1WDfI$>`0HzA8_ za_=zSV(lu%X(#CUx;>=hwH@?o=wOWX-NKKuf!!-V$QjlJQp!jM%~sp`t#$QZoYv10 z|Bm`IX7g9p8sWz6d*PF-*TR=y-waO|msQ5*TYOH zZ<7+iKBwBWy2Bs=&N)z$c#(dqPh7hc(f>3agUWfB*&y>_7+3z|VENDBw91w*0NlC% z(8}E8MVbfcxA^pjMBc<$S}rBO8_^wf)csnuws`Ks*?;)K)h{2#w-bPW@DKjM^s!_0 z@{caRcJQ6IuN?W&TURc>b?Nl$KYa7`?_Ifk;T_$-`SxoU&%E`<#gpHA?c&@Izkj82 z>5YS}AN}ai)YYqxXsQ#uqL>T-d^+ zY+-&jy!pnZP$^1?TW7g3b;)Z9@R&uD_{Pn)o(V(CGcitwOc9el1mUJ6p^yLYnJt6m z^M{spgxRk3et$`C9E^(t0O!x04j0ay4f))9;L}v&1^~Q%W#h~9$ht$EN4?)K*kKfV zJ<3L;)4y-?Vj9ufTQ)VX>T)1aD3U#s>752~)MhPAadDoR*5aL_&z`{e1O zDFM;GD?&+Kie8z|JiFg!q3;sgE;E2A@ht{;WuMR5a^M@T_=IP%Tnc=hW@%|9+>`RL zwpI=0O4(M)wOg%FDstMo6o`)Mf3vB0byW8myvWN`p%ArH*>w3u2HEoKwolsL4lp>h z&4YM3WkLQ9GEc*Ee;CHa&-@ofb(vhzAJ6i*rDs0f$Lah~u28YQd9~UIcke$A*Kgkq zAARy!xc~5(t=QnifBW2U+`uoZMH|GiZBDH2QWzYbXM6Nzg}T9D6!Jtmndx+=)8D(N z%&@~cv1p$^-W#d!pOS2W@=qUGt1jDDhJO5`cfuK6%Y|HA^53khF2QD0k3{BwGC;;X zD^8-{F`s)e**ZLKX^eZ`491oJrl4>c0H6$S-Mw#ZUk!{L)vMS(vQe{l-8=ss4Eh4L zi?rKQOQ%kq|HmJE_Qk#A)pr{I{=fh4m;U_9`I8TBef4L{PgeiKXV0GhZ=OAV^q)O^ zaPL1^diwN#b^F%!zxVvvlmGDXqeuV2>gw{}d;0Lff3&9S%Jb*{UaQvnX=9~y?)z_C zF8|<-OVj7y{9g6%|NXze{_eZ)?n;%I;Kg7v0Pr2b!-tEt%jZvhQp`^seg5?M8>K>_ ze1H?d+4nw#5pd-;UI%xuCTOLUL`H6L6qy!|T6U`sITlVu7|nVa(Mg7Yc{jP3IGNGa?EUWoqEioK@8c= zww?*Y@;y5MU~#1qCo^Fzt7QcM2VkN2kOFLbz4o|t(`@a7y59+n`dT=5=2W`^u$+5x0CH6r|{*5I%YOEZn|zJJf15@rVP8V<{B$ zJ}+X>!b0aq?pP&Y;mClnAmbl;_P%2n+|4+9S@&yJt zW4RLg7djLBrY+ z{RRH~|JnN!Fv+g$z7M>avF4t&uP9U%P}ujS0d_YDvMJH65lLBc!?HffqY-8ISmM|o z*&bQ8<}*jK{EaP-ZP_wqQ6gfe4c@%rnp zXP^LkqWWFFo?~gG;AQJ-&MW{Q3UM zfR6zB0|1{OT$#GFeCDACzg4SLA6Q;qI+adk@^&B?9U7fqOqho;Tc;Sa>jck+VbaEB z6KvXt(;akr3W2z-Pi<94{CU5@zwZc)nKz+#`Zwl}`{>!9qAR0LKATo5)Y)?S?(w6C z-3!k@?S}Iiw>UrJ#)gLEx#~Fe**-giqGX-E;({Kt4^eq~6uf`bUt^uT*%(5I>!EX8 z8}{9vahpKz778X?Y8I`SseR)}vK81sw7eKuF zT&b4a*vOD=DH$4);KHnu>K;mu&v(M$+M*#|leUUZc~4UUCL9U~lPtfs0RTNS)4~A2 za$!Y|qLmKNfIsun9wxFlf~;c&K)L9SA3JELR?JE#h85eP+-sA{qEY0>#jk)m7V>mVzaHxBT^Lg?Awv(-~z%my2&U$!0bII%0n|s zh54g>s{YrRb(Pk^mY8fdV}lcO^9ye3#!Xi$m8}mL8XmF10LGqe-?;qwZ2_WDJOQg< z6iIZ$tzwGui>6|)?J3Gj{k8IN^YCHqJmPfsg!r6Km{Ji;NTFw-mOgK|Z<&VPq3p5G z-%j_3&xlVAp!~s?QfcwyWp{1rwv_%0?)~!@Z05gEtf~yidsbpd!M6bdJu3_bb>Me| z&7cisX=FeUwCLUjXXV}x(2`Exx2H9vpJI%^@du`Q_tGCoCkkKu;)|KbPCavG=K94yedFrY|7v-0{`aY_o*vF+M~8-T zY2@ay(GgoABbM!khgE0chvJM4_ zjHhD*uzc=d5(s6|G~`RtE@lFPau5*S#qHzn1F+di(-kI|Cfrk(g*tVf6#z4HZf15~ z)zN?3-`734iJ6cDlmg0S)zwrVxo@~99)HyBnH-bQSytFoO1$8KSqLA0xGE(3waYdT z^3)c^AS@E3eh`d6y|(J|`5{-7@j$QSf&*k0pomsE&E4*wv zYi9!7xqaJ&QGx_0+zh$Z*qg8Rl}@YvqC8oI-ZZJ9{o#?T4DryXHD?s%h_qNc)|EOd zDy^GIsUJv5`6TSQxkcNOu(+};hbfmI8Fg8;CzREy+Q#4@@q2z?F&eEtJS!VnKo2Wr zh?#p@8*PSX#i)0@?`*tpk4|-+d?n9(w6c%xF*bW_%*op)-vvMMEB4`CFyWc7LU>ZM zm8~ehzJKy*lRG6W{CUQJdxb;z^wmlfzA$V@V&Ij7`35ps-AhrEo4Lgmcj?-c`|tv@ z{TJPhTQhEci35!Nkk8;Cr^RO!bjtaU1V;Tfv=N=IoRn{aPgp5_y)~EoS}lp>7%MQ+ z7wSvMFZm!YQl}Wr7f#`axWftMh|=%Nm~Dirm*s*>%gyN%N8GC~Kj-$3kGNb)9@*<( zRlgAB7iDNN7NJ9X^N-*O54!Csirt$gco)6j4xl4mpEip?*H#T_U|U97WzPV>mFrWq z2y2Iag_>Y;7*dM^GEkij2+3O2QowXjAUWulCq8~ZJHdU-S~+N^Z{h- zC_kwy+$!JUZ+?&<>v9S#mrn1g6qlcxo0)lSEbWeb>Z!*se|mEN!kbf5G_F4GL%_rO z_=Mrgjp@ZR$4-26AU&|>%GIj}CdVfxSt>_|lu=`@u{2J-W`oglI{6rrh3Og-mRmnk zZET!3au(;QzLRSq$#3Babcb}b0Hz&vfE|Fn53l8dXJ(Q(%!v-XR8;3XAjO|k&iSN{ z(vi(L_sHp!?%{_{x}jX!mNAn~l>bV(Wa&)8=!ulWINH+_p@Y?C(8+u6eA|7r$G^1% zcFL=c`FFPv2?Xt+9#d~6Qb-U*(7!!DFRqB-AzJAb*QDQv!+R6tsK-)}Gg4?Cf9#B# z93NBFQ{7{kCk~?-LNC0S1wR&yuKa9lN_@N`{>`3fR;3KMy!xS`p;0$KH|xqJwyXGA!E&i+ zGxfRQ5m$tNlMg<)C_jAM$-H3z+TJDXtsTpb7T|wzhDL+c007+Y*@8n%DJo~(o8^VG{ zxi>%2v%T*D-iNS2d;c6k{4dNhhcH7t@wno2dD^^Ry3gQdRSG%s0mA`)a=<^cm%lDK zp{C5RL3NdJ$`pQ-|BM|-Iy1NEE?vGV-t?h+?}H2O>eQ6@@sfB`O1ww3$lc(e_!ol( zF74{X2N5#N_OnIFq?9O$A!m%f=$@;s6tFvclHr!YUTpaBt_c&K%IXz!N#2RibC4yU ze`ISRvIOBb8dX;pZ(LO!-ZwewUU>E?_vB*_yJ3V3$swExV@9=wu>4??rvPd?mP-WO z>?W+-dc?o$Q2Y!q4W@I=6#yLW=vKuCRR4Sq#o=?LDW2KD4cCObsK3V6M7dLW7~8Q~_;DP?i^ zJnN2iqmMeWyNPz1x0XSj(!E|@>?%6uqv#P$2zwYJ*2(ZUhmfcIisChb5vv?H%Yr@CX*(G^ zZA)p{?!X~{3;h-V^JSC4C+VSnrZZCN)YcXjmMlFrDVkXn?6C=}9`r}WBHIU4PgQ@Z z+4MHHR5kQN&2YKO(C%bsxnovx*C8*YT3YR=PvCXitgG&MK2@~XOt}JQ@X?e~nXm#a7+RL^ z?^=dgIgAY^$QZQ=H%Su)Ny0U5>{re}Q1Z!F4EGEIfaIV+Xz=h3wnU)d+g1vt89Q>2 zgZrvA`rC~0*K97Ydj?c$Zc$}Azp(7S{nlA`QHuY?OIO^~t=n#4rC?#D)vsrVhFwKU zAxgi^_*>rjIDH;@!hI=wnZVzZX4xBw{GiZBBuDSI*DXg&7quF$6lpDzr~5 zl>ZC>u54(#1)`~5j}HzoJw;)*)sn#*MT$-nHc z^QY|k&UqsUOs^R~Scl*?w;iyKcR6U!_uWFrv>Dc=up>I9d%e8aRdmWn>=62N;UKUj z37@xa&-huVNCcDv?^f`gWC#a)TzH`z(ecbfC*6U4du#w;a1a#*XL0wfYqO?rGf&p! zX$UsZDFKriN@m{>z8L^O;GUYA-p~MmrP0Ea2qocnRD#13k3K2^LVj5(q?hJ5Mn<=C z?pPvnOk>Q-}ra*ODgCz}Wlx4q1+W0O$?nu5UTmqDW-r|h$|HQ))Artdv;Mh$2xb zRozOl;FgyQ?()T}Zf15-^iWyA=D=rSRL{c7;QqQ>oUa$ zp>3OhcqM11pq!^uQt-u7Q21F@wAxS_vw6o^jthKc;np2@`N}o-;e|`?gAXrC>Axza ztnQYJ6;u8ci1)AjV|xHA0|q&xNcnI4SVW+;S$;^_uut%*ueXfjS2S6k38sX^kxYNv zqm{P5l{@5xkY_dV@~rYgTE45P&hh1-5%ECurj?}yRga3>zi-mL@Z3}G(K8Rpo=Jwf z%cTchrMzNc*$M+L{8$uGTtcAt6AR@9rN;mOia%QbN-Fo}06>@gvHB=@-~O%*q5bO; zRsfW%wff}#L%+2$w)b0S&z_~?d~ETBFMMHW>el5Szi{D$|IeO@(bE}bC}_8J&cq;Z zR$Yd672OBeV;g+FwyfLp86IKbil=dw1$7%fY1;zCGxcik)XkgE4h`iFKK=NqZ=Snw zZ6)&B$9;hQ0Kg|4moHzgJ@U-+m&ZraU%hi@ZgP30a3GV(jv)Y4q)=OX7q^Asq9{d@ zfOUX=@X#|5n?d1Ec4o{~_~{PwV^`m?C(&F%AO-_B@hcIyWwxU3Mu)Q!$O`IntE$X= zU)s5cPn~d2JpPD{(3hn6r_~u-*d}=4U+Ez{=+^y4O&sCbmQN6&KEq`n3JEjyA!eX@OX68iYO z`Qlj~lCx>To1Wy3z45xn_mHqLhP*>{MS- zvS~k2)l24?E#bCMykS7Wh)vX0UlCh&A(Wti(?-?P_!)5`lhTRu&a6JO(lse9g+kfQ z&d#~(H*VRd1o@H(Nh(6ZRqW4+gsUI#5kYIbTOWf%2;rBKqVH z(Xqi&eC6w^t{m9Lc_QU{!>tsmZhmRSR#csP@4UNm^@h7B#sAv1TW)%K)~&3Rls}{~ ztMXJXiT9?X)BF8)0fOht48uwSVKYk%z4)Qs`}8sd!Q8IT9cbd$U&#Z~7EBW`tk|;+ zV3_gwWoNe-JpU#eo%kNR3UdsKD8IcUj4{%W)TYApEia=gk&ulS5=Hj^8< zcK!O9;i1v-SDrib^|wB_QZi3{+;gav_3=pupX@k)dFu8vFF*F1Bk7Ui)UBzbrIo_O z(C}~?1=rfVIx8>i%UGMIfr}kPOD7G+bi+f0#3L{PFEVil{y7PSA9zjF2@EP;6R%cl zu2wBccx0BQ;STKE>z-9-{J^ne5~eEl-G4^oy^7=gH{-SdyT#cVNw@aAj`tR$?2HyA zok2=Lr?@e_Lth{3kT0z7q7#zzf=+hZ#k%<$;%ru;BoHneHULnmHtajZ_8sZO06-@Y zG-kC?Go}C3$p_r=qlY9gayXdEO|;Q58k&Nhzf$fyQGTFfzBUCQ--%l-l0Y?(&bS*= zQkZ>X|E(9^)p19Zv_j%8${U5n008Zc)Bm4(;xRWeoKu>WZv7=wv7xe$ymX{}3)rb} zwu{Zuv7x-WpRq|&Nn5Kw{Oq5>6uwuEl{cX*>u{S4F<@RE3_d|Cq)-~Q+O2?TL&0KU{J*K zBAN_|irRBzpg1VyZ6>_a%W!Z06*l+5px9&QxB0Q{j~RUS?#n3c<=Uz#X3)hUqDHrP zrEO!7(on3fy5&MeX`Hu##YT4i3J1~$rPpWWpEN101G+Nf zkMbv4$W!|wfbs*n!hnmX8*))De7RG$)D8a`QeI*WSM`Y3g*LR=Gmrqho!l1)Lp=S&iDQyAo^+2r`cSm(Q1%(oRjVkWY`0Qc7_2hEqXUc%(HqsR zyN#~-a}QwkmBDG1?Uidc+)9ZRbo5Jtk*S|VyR|wYP+L3_=?U)b;-#pn>hjpco^MPX zDF4gveCP7Vasc3mfB1)o7nW}QN9W&r_s{I#JAQy|ukf&JCgm1p=T$YC1Y>Z~uk>*Y z@WZ?A>ZSmE@g~=pdV3W_I>WIx{kK>aqR5ec{5b{+R&x z0esKWM<2q43sdFcJ^R1)(1{bjwY;)CJbh<&&rp77LhX5ghK&%#FH8Z!ALRgk&}{B< z82;oV$vYw_lr|xxh4xMfmaTBqnZlq@r1*Rev#qOjmWZkHvd6AcbYmlV_t=?-+!K#J zqWhejOX;^237mkQbyYfOF+!U;l0Tc()Q!!O1mZV|z~so0kdjWuvLa#EX4=y15f@xT zN0xLKp0`MT6KiAlXr-^41k)Rx($&dsx6zC;zqgM0Z5#%zS<&DP-Q;-)El%*x zWYcbBbX4s$?Fz+`t8k(^bvh)^*pwb3g=$Tz6_z#UWL=dKODwJS(w-m&z){9gvROvV z)m(_yjCcmi)NR&WhBii@Vte^zP-qLqqMKh_RGXVI1^L>I+ivRCw7YX>*3RKT1S?mi zSfco%^vEcYiUdX1D?#KDt9MY8Z7=|Lyx09|gM=f-tu-jpJ{J@>=XgLCu}py zU)yUR&FVLl9{Ax(sp=M%R;1|9xog*NxeqU1F&@Gv)h|iezk2PayQMTPEU(ydew6!6 zCZ{N%+YcuAexG=C)iYbIh>I0ic0izLVM#G%Og=NfLV1t}Ru{}rwsINOA3p#PKzd1! zFHI{^<9puDjO8VC;LnH6H7Ng<+e{R!vKB#C@i>AC zUMbo37+-!E-N}(r6Oj~3xCwK>b8ry7Lq^4=%DmpF4-Ah@{LX6j=)d?lt^oM_=Rcpz z6z5()_s(1Y?>&>Fhxj59xywF(*aj=6vK+iATUG#Y*msIOvmwuf=2O$k-}tsC6XiSd zjmbDN6cP8fomPhDw0;=WT^2vEvp-Z1^*lT~bLZs2$wRjvdFI52@4a`m|Czvh47hP0 zeKavWJzf9c^3|JIDOi75h z*XSDV2-Z4!wJ8SPkQbhL>Tx$dI;?!#!~j5azgtMgc`vaUS~|In+wBC8*$&oC%Qmx} zHkMJHES8IQfYjL7h+9~glYq(rld5&hSV;k6=|8jY`}ZG^pH(+EKWBO4KMhDg)+31? zo>U_fbcJ-RsjK?4t1eA9x&}kP#+ClUwtERtgn2zp&))%q+MYQ#ak!>r*y3a9#Jerti4f`31MQTy!fd1y_-$Qn_OL zqge*8+%RJ^fhDtFx2dl}w_I^mc9OD3SqdB=6NY7+<(W5c%c>B%P^ag*btj#K~P`J*{jLRCeF zWDLSZ?$8zfU$ZlmJUzVP>SI#=N92&UPVhAD9OB_^BqZ%rPo{`$vl1puf0m(sPD&YgSve?D|z|B2C& zAy-&lcAR;|>XllhYTxune&$>c+FK?gzF>$dV;mtHm3LN$LpenE!Qhi?sK=2v6)0`B z?uJH2Tw#Sl0Dq=fI+Gb+m|u8kVtD*tpSyT%DstV&Jwmg*`sgEx*I$1*8=yKU1SC{fbM~9+4G^A%S92kTR^9#)K z08_qAIBLN&m56ccV#2S&=Wst$LKGjYe0VtTjvPKLW$UOL%1ZzobpAL!6dm z_@FJVyNMq8h(Mppjkt1S(EW>l{SCLcQc*{hm%xs&?CA^jqzS8#T+{|?RaY)9y3f4w zqWhsA{H$s}%RnU{+F^jn^tFd4`E*+#94n`0I6h$NJo$}s&`|oA&l(uaxyE3|eR%1* z`}r^Z6PL;k%N2r_l!rw6LOZc9X3*|Z62u!ySH0x^;E#UZJ@w=xuDr6OP;0g-pj$a7 z=eRo6vCW`U9Rl6LiM!v8x)#FUNc{IJdeOdKp2h2Lr@ZJCMm$fLEgn%nQIV20pn96i zXWfDn%p2FP%dTqs!B<%-F6Fi?7GG6_> z_TtC-9%g8H4s;Egve-hi|A}bs-acD>3SP`zq}2t#^i=^CUzF@t`bC@it@yLQcwWp( zHk4pkG*`Alu!q-{)hc~yDNTF=m-uY;gdE2ERKlo9=q9}w`dpqd-1C09Sgyp z4_a8{l~+!T-dKG4mEpM+u3SWS;^^k4RW_uVaC6idrIW!YlzMpR_~?*(;Mh_3;ECgI zOiC4d`&VnoE~-zYlkHwn*q+z5!fl~NuVqy{zuFSlLdcVlu5Re&Zaw>e^}^ptw3m^G zm9zS!S|jc1>74u5-}sihe)Ep3l-HI|t@_+Xd$V8lb=y|!3An)!F7Z(&)Z4mVGq7;r z=mS5qI(q2Gzw(u@l+DA(1b^U%zW0GEA71#mL0A1=4ymlGug+zar%aY9+pXeWD6OQ`w(~6S zV+mw7hw{HF;Vkbe<*JnQ5u3qa)R9IHs|XCl7=@Teasa@i#Y7N*7`>!Z&Z=`huy4Yh zdHA%Qw!VMQxE)Al%6@bbu&HYbo4z5iv7r0|&#=N9kM^e)T8wae*h)BUe!2(GT)}qQh30Ljsperc`D9!ds+b9l{Jro9>Gt7=tL**|R>U*GJLw!axU^ib z+4|XqMK^tC*4;KU<8I!*V>9#|WE#wj@{n2mJG1k)vS5C3$!72Q;>prVk@;>L0A>4= zaz%u*ih!*E9A4=6=QA6dO65eCXjWbtZEO*s;Ri(`N;_o*P~@%ai1LzIf7VR2Bl5?O z4baMsU0d$FZvlJwki81;DJ$~T$7zESJV$W`80(jnUR&K^MWNZLKBd{DzbbxDm@30+ zrJzbub(0fg?m;R3&p-dPJ9KcL8)i9wqiTb_VSAz9U+wEni-UUFutVvxhz(qW0nn^_ zBcwBu>F9)RZhHCMNVvNJpC`$tWM;ngZ)cbYp8Elx zH_8Z{?ti`bc^?L5l5Tl6(Po`6dSN5+-xYMpM?2k~&Jm$o0?757x7B9*!fY+0(=>p_BKty;EE0G@g1lotx|h{DoL9yhJDwpnij!Mmr%ZamZ`0QKF= zN0g%!3@JSv%60DC2kMmd&VR2zjwqw>qCqJ7pA&hS5_0G`Yb<$6-Fc4I2 zo0lo$5)P$c4dwDS%e^9{ex)d7AX22LUo5w`gDF+#_{z(^J^Nf$ZI5#UR2gNj@X%&; z&nmSVU$W7?QmZSpNOeWY7EQDZ+A}ISEx=kqM5lq$<#?nouheP6C(^aG2!4>5BMe$CDpj^f5j@bwJiLBB@*;_M&OgX#_A(=6X7 zY~+Vhso?UNw981TXZs-M2|Xen{^VnixYH+&+gF8{h^Uu~t|7nFFHZOOOP-;VG+1;N ze<(*!ho?B)x1e&>qvw~A=PknOTF8I|dbPV=@9rk7%_zTYuwC`^>eMZ_xLmOQmljEj z0&D1PKB^wrJM!LJ`fDubt$z9efZ@@x5B3~x{KJpS7Jx5)@x{#CjQi}ZsT+SjlOEX1 zL8^9sis~ubqsR-Bd7Jr{ypm7kA?@9AD>5GPX-+~7YtLgZANYFg5w1;MfDMh!LQrVB z$7^l1K3po75A7Qr`So`%Ug0p5KJEc1^*;L85EuyHpuh{)Z(V=(<3FKZCo z$Ng``Yz1xpf^@L~Y$ncbZi9X6oxiTN_lVnfGI4aWPrBJPbje4eHv!6K-_q{ptvhyd zH3EoVt_ppa;NR2RqT9MS6CU?Wj=D!5dC27?H6pOGFVrg%Ah`EvKDAqK8o_&$o@RJH zUgfskvPTz1gaLqJscHiN9AIYYmY}tk3~#e4`e~DXD?r22dFsLA?t$Y+l%*1kZOe~u z(;yj+#h(Cf?GHa|U#|=EADMvoeH`8FH;Qh;brRc+=U$>0?dzti!|SA#=1j54Szhpw^G?7*JAZg^zaEiEs)rNu>6ar`0( z)Az7ESU#dF%0Gh((8T!yETfNu`X1f2)7`vHrX?u;AnJq+QT>dT!h%-F*!d@Xa_3hH zSW7YkvC!-H#zzAK7&=ar^62UZ=u)ncQhd6uaz&Z9Pv2%7X9Oz6&G&V=U#$Z7+e7EP^62&Met@S>IYb?! zOj8*@0I*b$6|2*H`F2c4(<K<(481Qa_HvN z)L+eH2A^f$KPT>I)yG#WWtX$_DWZ1J%)|IK@Gai^df64RGH5H0$XnA!H~!xLwlzsB z6Tc0BJLw4%BV&`(&m4W=ch6qC_OUvX;iH1~-mi~7HVBsOT)1{?<9Qwro04o9b+5xR+EuxU+k2`zf zBy6Sgfn$g5lZVX#fXJ!kORUE?dZPP)sJXU~bg)I-)w3!#`xa|+%5o<}o!FbZ@pv zG4dDeA(UA=JM`3u7R}t_+}!$WNDKSl%^KpMSON2nd#rr^#Qv0@7In-3@)D-t`*Dnq z6A%wGozy=*GQt0tUHkJom!%Tn6L}|6R z-peNu%{rxw^5v`+sXmu2cs2k);aNQ;*8%M;PHe zO&|RG@4x^4NB%Q(uf6tKzEWEFVzpfU!=s}^Ie!*{=YQj4#y&&Jt?b}QRoa#fqOl^Qo}FJY@BGuRee>;ay#4+^{>Hl({`Bdd zGCcZ!leln=*_Hqke8d65834wpV;DfP;VNOQP*~PgoppN91_K)Ez{|y=dh)XDrF?j& z9gz$-z=WvCeALk`jiA@NPQd+U{d`;y>LiD3ZKhtBKhz2NEtfeJ8>Qdp;r&*>pa(-5 zHnNUcQU(;P-flCM;){mX5>jrh3}@PQZAFrN}%NPb9Hy% z;9)m1GGcB~BIz>Nd)?rZlv48Y=>b-^vE*BQ z2X&r4hq~)mp9RId9h=Kn`mm%)U_gSoEtOXvX!m^kKYET3=!n;?IBnsXefZ>2O3D)H z@mmJGeYi5KAM6wSKyl-p%D(JK|~W1be^gXNo=i z)%$}NdH!t!t^-Ua%1-h_##TPC^q+GgmRwazeLk0R51u&eo|WSNxgYpm_u%m($|~GC zTVYtQ7NtCu+)zHFVEn45n(Ah)rgBpnn|TqXHGBvhHrA z9*1%Y`5mryCP)JC*d(7N0OLR$zYd;Rp-?FmA1(}5zxOA8q6d+E>>B!+-p6iW^($XF zUw-3_%cWF4{o$%>%m&5Cm;p1Y2tqI)@ddvmvc*WaHt%I>m9k7pYSyY9{*<>-c`wMB z+sJ=lW*wQBEnVFC>Q0E;G4~@v-h+5qd>r9t0=>{dI_X3~G7oTvN!rH|1^~L&!CgWa z1nU(qwDL}^&z1;!mS5QX1%x;5x>SeYIO9%Zy z1XE5CB-Kx_m7n|lhYq^Q$w`Zk`pb$NmTj}@h7|!L!&y__R+bmlKcw7akDhT)J^8rX zw`Y&9=OUAn+xc2WR{e(l6$|au_et@*4EG4qW=!RbnP4xP{d;i*^(#pe!t$q)tFg#$ zyFobTGqqk(#V{YAG->FS2|_e|9)dk9B4~&4vS`vC3Edb!SkN*d91OtD{J`6k9#iT& z8WetSm?39yCB#cE1jE3BzxQb7S3~r4FmVLBFyscOz{higQ5@Tnp!;Cz`fEs*2u1{o z2LD;sTD@e?CDoNudD)GOYvC9KS}?HQuH%@~d0>eGC$;LGmbqg9VQLZ0-> z8?x52H^N5qQT21MGFJ4N{}BcU|6RQJ;eVV;4?J}A$YHl<&!k&gTC~B`@Tu!eI;#XL zUz%-F?I=7(H8tdWybO}%;SmPeuM5N2TvQD+F4xu9eB_g-l+p-}e& zFc0}L21lnH?d5Fi2_mdzVC}$52XFTdArIo$SibBwHrj!L&A45!9PS5@o?z^NC+ddk zTwLMzifyZ22780biF6_mRwWqM+tR%8yxI}?-d#v`_(D|SX*Z@+*mJy&#kzxL{cFV1 z!+Z8lt4*pM(y5c~&6IJI7NIQU96im{>mp7~pRlH)( zJCxi*hYq=Y`}Wy86!$F4xz$d2Z|zR~0jK_FX}cU$Ddq3r-bweV7oK$w969JFMu*&L ztz=8OIpLk{WAsBT2{*-C&!zykz2`syL`4en5qR760tv2WcED3ma0zRfiaqVL)hr!HIgsl>2gN$?e@U;+}u{N%z_B zdC5Kh%wz7z!97y!m3Ark>6FsWYC`#8@QCI94VF$TOca!Q)qgTEo~Ps$c@qYUm2k(96!O5Yc=An@7o8SSsu8m>^P*s@00M@3-_W`|t0G3aXM91+5I zwsgu2Aed2CV!~T6G2j;dWIQVBnEjr?mI?M4&mPwr-Z2Bw=`YMk#O?SC_Q5pc7BdW2 zi?=CA1=ATpfa?Trzcwr{fJSjez-`YeImrB=1Nn#u7UUZ30Et-=pRsm0hH zJXOmOCMJ$#Im8j(h4%H_Tr8fYsDBcv}X zqng^`Kq{-}jH^^vZJ>iCd={p)JD&zxo;9B+J)So5qD3?J!G!m5cN;Zzct?Z~_D0N3 zqEp#z1nbcf-Ur2_n+fi=YC6##-X#&z+GZ&0$b=e~w2MCnJF}Pn28UFIIxAb2w%aNF zM5y}7Y<;CvaN`rB?)U>oT`H4y#d68&O3j2wg*A}&;i*<|E=-m$#JH+Uua@02kDYc; z%bb4Tpc|$7Rts*hUe@~>OUq30qdnMQnED}Qsp@muK7+SP2bEIWp>1GndA*zsD(}@M zTBa&D5^!lNW_%t}KBUP~OdsS&4Vosb6bNp@?0IVzoqR||#^+fut-PdH>}>3uoXCBA zHa}hlMr)h#X@ECiS41271faeDYnk$tKtfshtnG1A5A6jRR3+SlK1d-Aa}?#ai`*f-rXgAz__90XT&oC>cREybX0!t+Ir=Aw=zoFhv)da-t>7S!-=D- z-@r!_eR`*OQ6b<5x!jOFvwg}R^q7`HkhOAUCO&NQ;EO*Ts>-+c2USif?4-okN<~*% zT5>Cki>_WNx&4!4?y1Kfai4khMfcigUv)Uw$|M}17a+&Juw{G6})ZXzi z5@+`0T?@Y74!kLz7fG?>lR;qm87hZieAHDA5E}_rw`q)(r4P9SNB?kcFBj37@GpJ6? z3I+sofoZT}z{YpA?WEyJ@;1{;rq1 zy8#4E>QFwPx3d5+EYGGMnqaCn%*+yl01_r$CX+&zb@hgndWQm8bHn+Jd+>oH?zv~5 zG;{RG0hdlmv9A@RWb!qPx)e{fe;Yt3+x~H8v~!uX!Pu-`0;I{$4$?0(z#iyqH(`dB z!A6vbXzssh0s^h=y{&kzxsq~GkwULL%4dh%P;S`v+1pZnDJ8B^acPxDFsapwgn^>; z_Z2I*Rmx4}dtmRFd*abk?t4D8zx&z7O;f?x~3T@vlpHZhxn3PkUAk*hE4ym!GUyoaG+YLJik2I zSi7gDk6lHJQ}@xwE@13Rb~Teu6|K>mVBx`YTrmmYK8z^ZxBTlhn;pQu>5iq0(S5LQ zzProV46_BhMeAni*eMW4FSAwLi!yCU=%iB%bZ<2NRVf3^Sm8c70I*&d@w_68_%o&# z)_V_d(Wm&h{@L)>9tI4LU9FY3g;A;RySK)xS^ng2bV6S`Rk<;$Q z7oKqk4~)B^yyB@A6jwotrj*9)fXm1os{#1zB?k!dE%{bkU|DP0Ong~#o3Ulgo3Hy| zBY7To6Ur%RI$HyyAI0$z_i;~P)hC9~cDiAs^)jiCsrTt#^Zt$&swYik>Ue5jCv%m1b;3vc#ry+R_2+vJA z;NO*s_-)n|3x!h?gZX3rMIUzy{Q-bJb{*+-ZYinkBOoy#5Y6YCeK&?tk7gU$a}Ek5;|yZcyS;7WteX&m$v4ZvXzhGW%U)Rf@TUQnW}WtWoyMQuaBep3k_Y zWzQD^IO&~FyOm4Jb{!qbxI+gf-AgY$AvZcS=qkl|x3V~6%f<6K@d62{ ztP0>e@c!UC=Bp(%qu|#Rr>b~!KW!JZwduf{WfkwA;_WP4llO5ukbF)e`7XGR8`R~H z23ye}o6Q)uMYWwj(lqVqvl%}IYA8=d7_J%dLZhKkw>;)-5)6tzpZsOXenaIo&?vfm z+PVFEhTWOd$K0zgJ?(zr`(9BQPPl{n#@yss&JD4hL*+j}ePD}6v<-yAA(_P_PR^C! zvwqBMG8oXu?t(hj4ZO2HF?tUDMZA6{{dcn448%w3<;lv{1Gq~*=Z14xw`XG92Ipv}3<|J^ANLH_A!6FN zK>|(LGlouOH#s(L@fHe&iN&STk;uA_yM*37S08=s0Hjpe0DxyO?Nu($bdrEspp4aO zHJjn#-V6eR-XVyP+K2b;g0Dx$S zrlmGQPaRQs&wrXh*#rfD+>w0AR~bgWlay|5j>8wF()W}FaIiIc%62C$ACJ8WkHP{m8-f?8qS zwze=k)?hV&41)uvrj$hzUS2!-3!k@u39X|c>_PsOx(cP$*@%kUX-z<>x*#giBP5lJrU$E1A zR1PTjj6hJ8Pn>ZF z_l~7D6&xHQXj=_b-c4Dd(Vf@!v2)mJoeE{L)%q9^{I4zJ zfqJnx<}2h!2*u*s0NV^?uuXoz9{nOeiuS`4aPsQ}3tgZMie0MK(#`~%|m-Ovm-nt@njHi0C~addhY z?BZtQplSAKo-xIeEcJZX5*nEVa342!3G1bKYk9MipbmIL-3&|OJUy+YZXnd(Hlx>E zK|{hNCzRJCg{6gfS$Tg98elepo_Rx$-ITP2X1&JF+XwnWnh=Olpu)2^5iG3Mb29xr zBQ($^dm+Tx$Ni73l-16aFX8ky2)vk7iUCi)zs~9teGeu+<@cF_LCd3{1QhrG3 z5nmQxA1)ON4}Jaf5BJXjxQl2nsXqGHVT_KB@)ePJHSj8YN$ewf;~7Jo8HMM#VV@x# zwU@Jebqx%z+swoLjAZ(@izq7$Az!!#^HIZ2=g)d*&nK@Ohj^3MPT*bePp8Q2WO$}} z@;;bOh`;Y-0^;|ZMW=eOk*y8^K979-aX+4>t#={orD;29?qhT4R7bjDGj6ww_zD!_ zL3ZMmzSN? zRtdj+A>+XQJ?`O$9&|50`;>e9(TClU!~5O%aMl!AW~UpKq74Qlv7I^__uDC)t>io5 z#7!K@@H)lW3Bi@ku15ymY05p<=$XNhl=8f(_&fiVg#q^TvrJ!#`#__lvZ}j1V?*wt zQ^(!QFFoT|V!ZIAd+gCuwqhfnQDMmsdCs@{2UL~}zHq=F+$R{wXO#wJ%G^KaMNn5l z9iYC{q{LV{S>;6~=wnB*(K-|mua|T&@jAKH`raF>)qP7#CQW`+&{({4=JxHWAJ3!* zCl~-78P2=X$}+NbTmFHK=9%|H8&y+~A6wl-+c3LTH#t7$9zS#16_@61+tdLL)f|BT z!XxXp;>vhx3?c6IXo%CxmdRW?!{?X9+6RwwW?1y9kGp_A2kc{4aq!^5)zv{aH#m^0 zp&TK=q0k535k}#|h+rHr3IsXa@Qw8W`NjXBw6xSqB< zVPn;Q)`t2P>RbqqYdlZm2H@Vpkw983l&x;p>V9NB!m54cS&Fu{Kw5sA|7v`BhUn>W5EP)ALyV@VI{zU z0|(5ooRqrBfK?`)6DLi%dR6UDhVR8Q>s{rbxk^>fsynMv4%JpM2*U&FOl(=Y`WyC> zkB;Qrv7-mw(~m#uUU=?l_vDigxd$FNAmKYL$5q>601bS300q;hfiV24H3W8&0=*#( z+z0-G(qny_lu`PxpqSbx2lec~$t_0-!@H0ND7$eJ(t+^;erGoTdZ7Urjk*_Q_Wk}! zy=I>XW3(g;Y(kDL1s1<#6@@s2DffPR1PAst98-81g_{zU%6*&FAE;NPyqBeZRb4id zc6;}XyA#I_yO*WtfBKc@-1mIX3+}mR9&ryGJ>W+2qL9IvYRUYjlyBlPwv6AFAJgW^ zRA^TCN~jsTXLTEWCExK^!fNnh8I`W`Qj`sf7b^XJ@}N79+HHiozFmZHdYNvZJlAv6 z4OVxf`WHvAPri@SlZ=m*I)f?ynK{}Jl?=b|fzbBjVFAAPj|m{mPVoj11_MEjI-ipG z=->-qcy;Ld)r&ta<@?Fup`040|0L<~@UY3ho$_X*2zf?6vq}fP$JqiS!&&z|pL)@@ zKCu;QfcWxRH$FOI@l#%`xbi%VFyf|Fr{ab3;?cRIV&Hw; zHQYN6*vBUVU;5IQ>bYEIu25X54KQMl5GIB|qpzuF4ttY5Q}93t34ozgD~#Hw^n@T% zk4EtaCF~9By?56MTV;%!0de#)+eNo9HX43lz)5to-)RIoyP129kOv_@sE>Xdz{Y3` zX|OIW5@5K}+4b6L5&R{un+5)Yi9ZL#%Q$Wy20B`3wZAx${(~W%-Qu~MfQBFhbuu4! zbV_sFtcPB1Hsb$oqt#Bmp$;>P#67D3jvhH~gIlFyrI`mj;|_t9x)NrF>-CUNUT|e3 znXAo&q4+W=C?S~70;W@|Zfq>;jvUzQ&OCHN%IcHum6xA)2lwx5h8=hYaX=4zWIezq z!YnoSw5ykV7hRyWT7G zqHi;Zmt`jdLfLc0g!;gBx6z5Fq=~y@;Ata>`|EWDA^q4%Y^)Rx9=w-DzhQjwi!Wx1 zw`;$5wO0EBtau?Av_aAl+UZt77?@02Jf>Qfg_Qgu@e{SZ=f&IX5Y>!$$f{qp!?+_# zy7^8#7=$Ru%Cj0zJA+bcq2b)nZh*Hvv2OUS;+%E_nQ8yD1?^wEZGF$BsEl=b(2+Ih*A*?tJ zaRmEt#Xa|ojw49Ng)3@Vi?&vIcME%~h=<30cfoBGYkX_ilDe*pxtIs zl{fUA7-sctU_G+O0B9zT0X{2cQ~Jz~`_C(uD$Fp-zZ3*`0oQt?9Pvx#3(=&MPqJIB zthh#b+3{We$+5gU{oqme%#)9~&wbx#-1mL@75B&gz@6GRN28%^Ck$V1KoKzFtgDSE2+w*k-_ZnSoEroyMP!6?W2#~!N}<3 zQZAb*u{0CqijzNCzGSlr>gr(-@eavXOJ6l{Q!JHj+3`S10!~VTTskkNgE(;iSKpAf z_VjHI@s2D2yH57q5O=#7e;;qeyDOEI1Y5vt7f9w)vJ6os=m@E+p^T}o7-rC{jO1m# zvJdgB7vFm5O8M;I83L$u+? zly+TlSrtvJh(l=)hG*>ATEM^vJO~qn^|+g&;vin)zmUO@c56T$vAUX1x%x!(s*k&X`(K0V<0FsiK%-PHSC+z3NrbS;iM>rhrW3rqn4Y){pIBob zA1eY@2NZ@FP(>ELuV__aV@}w~56r0}gF+xn2xZ$rV6NTFcCqP>I;1Z$bQ&SOo_YJx zUyQ%sU3AKm&6p5I5}oX}iq?p@&+DKh7^1uj=oByhut%Y$Gs94~gMA!6=XVZ-?+s6_ zx)SV3TdNNFm=PY@2LQbL_UM=8q~!PcL)-0~)& z`SN8?I)X6+cPO`fi37#|?==6(eLeVsw^U}pwLF`n`xf8a;mzxDbT+^0YL8F%{Ohuq}e zJ+_ho<-E-H15u1(PMQj(qAN*Z#va2xOQx9(4Ey!tv;EBSv%;XvAi9+76$#rI?n`RF z{$0uPB@7~vC)s?)jZcob0|)lG)2C0mmtTI_{l5Rp?{#1N;-7T?#eex{-5>cQue;BF z<`wtpPrc+m`#mqZ7oL91ojP&E?HM0(`IORFZpf-#h!ww8|GC(ji>}TtP zY#n5rUP$u00IV@=E8yG~!YLLD*@4>XKD}-c+Q+V=zRhe*!j|v_09JG)GVojcB6l1%A+gE|hgB zQV6mV#7m2AB$sl3_zQo)oqX_!Tb`eHsWbv-sMRr%Gopv8AIFB%6M@bf@QdF@4H}6I6hhqwYvNBl$I)sN z+a>D$!A8>*&ogk>@&E-uabuEkCTZ#fJC$1XjQW;NQ-`GlSL=3ITrN9gv)RRB+0D(( zxOuh5uyTbyM>?qdWjv3K+GB__-d=H!t!*EWz)X8;$X$IP<8I8XxOd(?FE^f#@}BJm zVK9)-ia=W!h+}y^^oF+a7yja3a<9GiT64Ca&wI_x%(&_4XQ-HN4Ina7nu64<(O z#1#0D$AJ8?feSKMuyDw?4*j1Y$*32zE#9tvQw-(Y8qDTu zN^5ja+pH^`+1bVNiPMk##r*?A|KrcT@rGX#bRXi6{lVXR@YEAu&2wY?6py#_RCh}xR9ecVO;HF6Jbm`KRvha@%(xEr_cESxy~ z=%1c=p!5r0`qJ5t)M1SuRrIbYee|&d`2C-Kde7}!vwy3+vize*4(*SGw5l5&8@6vN z8=4)lXY4RK1_3yfq%LNZ%M7^v`zGD~y_0TILWzCDS%Qgcu!Pbp9dU$y<0Cr&Ai8*$ zbQ_+-)do*`qCLH9are`|A?$RyBn3tTb}~{T>J4>=gINjaL+--mDfiCV5A-bInSH|& z^i7bYOrrb@0|2JLNbpW)q-a-HTsqZoum7PRagROxpj%m3kRYs%T16C6)1)GzClnv$ zN%?lI4_%DQ5SC8! z?cur&01VVi_WkYWo_^T<$nXC>Qg&(`2LM7{O{OOZEWzFj=-a?11^|+@B++bBF?aE> zI$^yq?=?E5>Au1y2LO_8>{0d9!jKS|QXOT$%K8}9Sylp2FA+2u0GOS-V+ys+&Z|9B z-34OM|U+tDJ3WR0)mQI-vM!D?I)nVX)@7)s*JOw%sx>1yj z_b6gc&*yA`oUMS!s68_nQL}hbSwG9jpa^lZCzn0P%*Hbl$mbE+uUjfCx_|f!zu=~> zUv)V}G?W%sA?}DKK;BU<As6z4DiV9O?oHX|(%@LHgeq2#4~+ zzwv;;VcX#;5{%!5r>3p)iUH5ges=<-FQjERK|FDU=Vm_Y8tmdUb)zlme>b5XQbmw= z^UEb009YxhPG$3c)n^zTb`@7Y-hM@V`7zTK(U?bhbYLa5u1foUe~QB9!yl zMmCdOuumO{Hz3I5@)@_ZFdw;y0~XR^YRsezkB+&D6pNd;?nv1Bz(M-h`s#<2!Ft$c11Fv`GGuR{zZH`gLi$=}ZEFIOLyC zpQqD9b`ly;=Ivmi5OrJI0HPZK+e~B?y)(r_%0{gog?SI#3+alRq+LM#zK<4q<;(q$ zXQ3Q}NrJkF32lf&>*`WksjGbNA4RrYDVm^p;NU)Y;=~F2TwpH8;9lfUjQ~X*gmx32 zQHm{YhNH1p6F^DE*!DCzOb3)qEDcd#>Rv9d>EV@E*+0($XeepBfia>gl{`uKi zw>UdvN`hb7Uv>@gJ7xk?N*4xYp0W90Sf!w-S{a}#`IO0}T{`PmOOW58EX@fX%u{E; zYXdsfi{1!+yNAD%*gSn3htnOXB~mX$rRybDS^hHv(RW*v%nXxx4LJ_*7AVcZ}L zd@^vE$z(I-a$&Do^l?{kcQ{}lpJ)u+uGR+9=~=#$&dfi`KeGzPh$JkTsueAv^vt9# z#)neH{eY`hY7!EL#F>U%L)WEh!@Yaqn)_G3^KJL7x8HY{Z_T=LLt$ixoy*`R8x063 zY-Ug-zOiIVtV%Jc<3Q_S)+u6pD8wx!PX26FK&W;7h~}y41%IJ z5f_Zb(==E|jMV2tyXl1ZyTGu06NjOrsJ2YgUccKi8>Fe*`#|R!)9k1yudSIj{~dv# zuGh+MGg6#WdLGW@-9TNU1tc>I))Y*X9`#(l)a6ffvY$2VrKeM_N}gXSl>O|5bgBAuzWEx$>;T;Tr#83%vh46JY@EtnKs%TU|A&lYN3G{g|XowOE+6- z0P;5N#4j(z532!E=ElzgRwNvVE(!Q61y%^KJpwuvhVsRX>X!M5Xz!{J9F;N^sE`~XJ_WkEG#V8%7wVLe27A`H8*4!H^fsJd*c>*a}rO!gvdt2>cbE!zv{>YA4gI|5iWZCd~X}b`O;C zZnmQkelXO{xB(##l6-*YWPV{n{$o15kDJz46@FUJt~ zrE2^CNAgnY1!D|$g<-ezX3t3ISX5O})MW-!QqVFv2`71X`Pwb_&bbfWn{SazFwMioPj0XlD}Um{DOs0tQ6fwiHr~s1E+WMH(SyoUWomgBWf=mxElCx8p87gr{a6f$v6gOiwm!d6?N?nD1waUSLXGj^ zw8{tUW*K=gtVIK~hWJpdP+szCi$;@C7zqsF8Yxv_i;UzExr*qO9c_qJ05(u&z+Fpl z>xT8-?-n)_@4ce2kIlpCZ>+rHZE97#zA9mr*XcA0qvYW_%6-EQp5l{%XU;riv*_U) z*CtfU9rt|pj%WG@1a4qTab#=|SMR;@D_Sst9%~~lTCDxF9-FYQ6DW)jCh#7eJnXrKJU>lVM60 zRdbD$fDY)y-z;yN#`7AKIzx0NybxatSjgUj^!MJZk0u=vPir$DbCCA9324^S4hZkM zz27e4bOd0F)}n9@s(KHkcsC7<%3KT;3TVS; z9zNwpM{-i~%i>QBYxD3G@{PFIokJj^iog{ZZ*!J7VUi#fakJZ4+c~z->)lSG z7n2X2Krc7j0cq@%&W*+y+ywU+6S8IE_DO_z?R}&K2RoMYa;4J@cJ~9~!WFckC?wMs zp5rugpUeja&PXRnz5~hUdx@>kazD}E$NGquSEu&Id+h0RLcc>lL>sWv?jJho9z6Mg z+q-YlmcY_hlFA5vXg6GWM;qWd*af%Thv#tL0&YFO0L;d_Xx0;hpI`#wb|E|r?pYbY z%7rjsK)>btu$r0X$U_&CR2q`>hI{)oU%lq;+@7}Q;7&bbn_=veYnZuDnspWMsJ~S% zsejdN(7))*Bh!b=tT?dbucwh zua;}&C!TnsH_>+)ufP6!wmzHw;Sb(_|BoIzd?-6HF=0H4{4mhAl{PcV&bY#DlNCyh zI(bF;e+n@k)tjn1-!x1MIoMt+y_3$>VZ&4jE>08X4hom z{yM?@#7q*Qp6D`EEFRl@MeJisXm3e<^sx*0?ce_G(&)(WyXw@JSY9+Rn0BL5%u(ip zFw}`Lcsm%5XFB3J5ku0o&hj!j8c4fTI%i6KwLai(P0zabKe*uDKKs6V_uP3mb@PrZ z6l*pJkRKXT+&NdNt-5MWRiDG%V2~1+>=fl@{4Ivt1cFIGOn})or|KjGZ4!abz@YCY z?sk0L5HG7u(-f6$DDyA?!16nfSlLIgyp9H{;`tA#{dQgch#^0(%#$n?t;e;`gDB zQ&;ITsH@=_cL>?2_c77n>fbEsXa9#lW?AgE0ih)|40k4w6@rPrk(tP=YS#rN> zj4(r-fM*|9OW98Xx2ym#0bA}v7;*3pJKyiMOwwHvA-tr&q#+zzo{wt4y@JJrIJx3N zNpY2G$qrFWGYgpL`G{+$(Jf4)Nv4mjp;z98dK1h>kPNSvzfN%nJ3dzlXg3=H13=we z#^VXI-|1AkK0YzN@)!QXUsy}TJw(1b_t51l7k=XSk;8{r?!UCS;EF3tZftBsiR>&$ zH1k;RZL4EbMj=P&>(!oh##&k*eQXb_14H=>^}*D&y7&}APqEDG zp;t=aUyLSl4UDCo!ElPQgf@(<7J+ZnL2SH<5l zUK9#uEj&Z+Z2Gt#(5!FN0$r^$l+e($mx&{EZlNRecD`c-)Nd3FE8`s);MqDNK|nOd zJ7bSd_Ot~% z1Ar6nC4o;&jJe~-kJ_q$W5w5ft4d4qh zgyDIGrxOH!@%9xDD_jBh%$*D4$Wc;6)a-~7QJ+;{22i+?Gb9(XdH^84?@_MB3o z7`a*tzY5mZOFI`Jy0><%cNm`~o{zwr?7eswhnAjt;J7=uf4{3&Yc`vojh6ibu4WV_ z?Vc}f1ewTqr|iTvnqelfnf9{Q?P}&)bl1o3qX!4>qmP}#QZ;>hY;5$OE-w{|17afi z;Ze2zmeK^04BbC_AuUu@W?k`P2c$_rNoRAmzn@RFF)+Z={!DhrL?gadi7C%7d^MsDSDy1L@R&gYsH$vmR0eW4xd4N>H%p%0YVgw>BCnI~bnhVRbVet-cjH z#z8@q>coCHxG2#nS(BvEcSjj=P5+I_2u+iY@;S@xV7| zla^nxJPucJJX8F`bKn8^kJGx*vI&U$SFGv%)oLrSK6VwoTUsA|>=52~kKS$&nI+Z=Kt zVXiJWnY`??u2gHdTQhU+?0e_kci(=`UAS`HEiCh?BPlX`3z(B)6@je=AaFV%ra6dL zkL!U!fKJ93axb$@#2IfAz25BfKZqXq6O#=7Ii;eJ`=&v>;YhGc30uc;|hlNnV zch-9$_`4qwr|o{G^L|IDAKlE|LOiZ+?F~0USq}9(n?>&4jS{bS?wnc2$SxzvvNonB2+COi#Jhx_$RU?_!Dv?qo<^xNjNrYR12B zT>}Cgoe;j7(#>oK-Remaf&kO)i-vP28au-kA zDP`gabPT3a)x~nrA6#>f!M^`J>DnK@dild28{@=3wWoTu?D$d-hXC>kP*x^2^H97a zw8?;Gx|Bn{J<+nPbv5(UyAcmzC65&R(czqX_|!=^F*59GrJ~K|Bly~~f0pN(Pd~Vi zU%gSBdME!OKH9Yj%iPN@#2PoD{dcQd-R;G~ayc(}_p$4storEVu3+{0+*=0@9r~ZH z-?(`WUW3SBpAu)um#)TexR>F+$#A$b2w+UZ&pLADM1MY0gwO-Ss#K$8$&8-L@a2Fy zj7o|;pE63zl&h=m`mNjUo%cR)-}=tm?#lIPH@{GD)tcfM;CDCCEe`B6w4GFx1}{Mv0-ZtmV1TU&lmoS^S~OGI_9{wSJdO7wI?;E()7(dA zP;T+Ei`RGVc}G1C0xdKB7}_T9f<4MIK;cIbVJ3fUeAK1vBzy)8RM(}J(4>b)hTPtL zd)(o}2koo?PTmJ`Wt}kN?Y|RnOMF4;35bUgH-r~A*g=1YHyECS*$9&Huwo(J2cwiI zFt@z4UmoKG5$nPQ-@5o5YDR6DPoUOoC3o<^KKJ19W3E;#sa@-R-4D8uKY_3C z3||R+viXjQg2)XrQJ6gFRkm^9ZauepJJ2YXd(SNNv15qy;6D1;Rea_A`Eq);_z#bt zI{9DCEG+%&tJiMK+2{S(YpAMd3cHkgIs(33j{40#%kk~Iq*B6C8GrII-y>zuCSbG} z1&!02Ik~?n0EwIMPH*L(Lj$Fhr86#GYu;VWc)m?;tZq3 zHoV??-_dkH=zurd*#^Y@$Ibl+=%Palia-$l!&2V$(tsN}ZoW0lJ^q%Lm%VZv^TWGf z0^;GuO&p!x$IV($rj)IZhjxGv#Ee3i5rhV=&`KvC1b}emT~LTZJh&ro$g2>JeZyS9 zF2D;1?O`R&y#{o3GJR|wo$@hmb{oCo3v~_qP)Ds_kO}XwH#-jelrU`reY&FX2jv?7 zw3SvJuB$C@m@O*^vUZRAY&PwxwX%f^TJAlM32_0!uLk5^jGwg3_2L!ii}|Cj3xxSA*5roi05H11a}*CzftUTc-;{4r&}I% zdKXV`+1q@1tT#aISXVpPMUZgDvps1+luzzC&yBbdR6Q2bG7hKF); z0ON?5hhPlJ^T;O9gK>eqH;5}Nca#E@8*z&(RrleAtL}Hd`>uQE?1%2g)E!r@NSMiu z*@^)BgkX&?1&Dds&@6)xbypPQhEcRsBj8!s>+(U%-0qHwCNgUTC78w!*g7V09IH5a>XuF?X?b}$TQ{>Fdb{z$Z;J=0O~hy1^bS4&-#2%WUD6$h(-WWNqz#33 z)Cuk3ZXO|?ZYC~#69)!G92&7V9wD2hr3F`5UNO6x`eWR+^AsN!??c!iyl=**u>6Jk&+X_5B@rtfcX7K1@U~l*XWgh@%#>^8#<+_lmED(jQwGge&WX_bE2{j{yPCT zDE(ouD2YG|18juF7jM$()co{~rRdvw_Xc11p;!0bx_#p>7nYY_WD*NWG@izA-!0t% zA${;3I|!RLseH_(GiEnPJ6f$v=~oQ(imR5E-IGr|>Yv4LvYZKkz><(}2sds*8~0~o zagTe?FFcLyd@hM(cmRLFbimq5)W@!&KLF6jUB{bmzFGZezx6xs=l4JG-|jnk@<&dc zdGyaLu9SZ1(zP4cOJYvTQtrnmCM6uCWH^0Pj8e+F?Ku|H7#$hWRSLM=p|IEzMPo!Q z#)OSGRB?<1nuJ06V22@J4;YZ5zf`Qb4=-PL-+B8z_x8IVy7w7`Z^C@5 zekEZ`W@8;1oiReaKNN6dNalC)d1L6p&Lt!Tfhqu6Nh88SpgY8uyaL=LpP5w&enGeU zK6VlCzU`Pk+K_B>JO{gGofba`b|}bgyh6a88G4H7zGWYuHS;r*nD9Ohp5yVy(F_CL z)WaAJGM(N~ zZ9+w;s*p0diGGtXsavi7%9nK$DEz_15NM$uhq_EXq;2xf&f2Kd<_26{GZ>vdhOrfOCuS{kb!Ql@q5x|t2n9W@$|<)9U4^Iq?KbxuMNO47$Et0wO&&= ztkS8tgZuZmhfW{2L6b(k?6S1MD87KUwmhh~F|wm9>|JbdE{;y!N-#-;H1*syQ<<%=SIY6)2>jixw4)Ivsnp55_DMp9d%ma3Zr8tm=10? z5ju`;X15VKgl^`efOtMZGfUxGiZR`6XM{8cVI|yCM;QP>IoJv|pKsmWhqN`rl;DpY zf&#)3#y<6B@M*qmTO)q24CzZqh!~a}ak+dp9Ln z2yG?q7Vx~*cz4WDh5>*8>_gn#cS4|nCAft<(WA;!m#Xe@j7C2VRRi(kB%!fhpiVV-y$PT4X9cDAF`Y}WJ7+Xyz z0>XO?u{Par0CB&aOdnfAJpZ0idQ-O+y~?SNdxOC7`{?7I zffWJ2{9A9$?Rnsle=t6L;NLm<(3$_R?lQl0Japyj`;=cOz@3^wON+*n9ztsVNoq=cV(AT1|l^z5y&dgxnvYq}LDH1k=5cvrRX^meI z+RA0WbeZSy4kVxZ=wr7K>e^OK6Z97hCwFjz=?31xD`+4TUxpOt7Pm2+Ne? z@8alYALwGnlYxLR``OL-xpcMN=oy_q^g)CL4P4{#!NVG*vb%lrmP<>ku!DEyj{aD_ z52VfTIZ+J#C)tOwFY(BZI9L%t zOqh@b&F3EFa<@Q!t!F;U=#-wM>4i@266FZk;4aEv9N4yxam&_`NuWnJEBa3dl}k$co%=aQN;bm z5z0Ra@soOPHgng@=#z?8jq0P1dyFrA=}YzBc=OGLearP<934CGCr>|o`rnga@b@oW zynJb4VYzI=MpR{UxgldJ#!Dk+5(JoFIx!yndu7ds!ve{Hv;?Cp%M}M)wI-#$%6@-l zA@b@phGd^}%f*_zd}Ydg^V{#Z?|k4++~C` zb~AnS2K6K$o@cgnFzRHJi2E@Crs>buDFk{(_pyuD$BiP;0OI~Tncnd9gzy4AcCVVB zkwDHNX8t|11MO}D@MF)>vP*?xcJVC$>(kOlANN0~$8i(T$v)J5lnd^Y0|1?nd`Exb zw+pr6!c8)cB;s^z6rI8%ep3dbIO$_?*N_$I84w>_T3T|8i}TF^O%yg;>6YemyXr&L zSFWORNU=w885qn;;m?^t;Sa_u{)6H?DLa3M0fBUez1h*BtI-MQfVgX-3)+Hm7?hFC z0QbGj-N07L>VCm)(;iBIHemHlafNoY6R-g+g{NzyR;$k5zI|Zl0^b0>_~MJ1#^U5F zH*Z}3?+zb4aBO~dMsj1?tt?4?L^~IHD#J~UWnMeQF{sRYp_Wk#+ykA&aF6JayEH4#Yp40pX zQW7WpUs^&1igI38L8W5kQOV88O)5gz8D~fupRT^TGE}I)t|0h18zL#}vs0m@&f3aLq|5|lrGj;W$4I3zD``y4`%2n!8?5(ei_>B}4 z2IDiCoOn~-1{%!pPKKFIxGH2uq;^Fz&-&OLEWee>p-$`usAGiBU^4ZJIB9J#p+`E|-e#=B-=fVqN*cR4U6pMe#rJPW@ma#F>jB zFrlV$q-QZT*c#t@PNmq#=|AaKt#LHqU^EMCF7?BV2mAfgwvVx-4r_V2;I3Y|>IyoeS6JZ~2bq!3k~*iW}yEV~;wZ>x5weCPqKoG44hOPZ8#_9QmT>>{t+gAs&?t>36xv87C+(5?9#<6UjnK`Tfv_JW?CAzw!6?uL!;HnbR z>33fH-1ocV$B&y5l(J3tf;{0Lw{3OL__e+C&x90zFZg!n1#jD{k5lU;{d-{Vb>%Z; z@HSd310N0C%VAFTLm8z-{q6Y=-gDQkT#n(Tr`jorIz3i{woOV;U?zr1`=G^Vs1vfK0?}~+zTUsf&qQbP5 zcVZ!R24NH%TqT{&T0S$lK>X0k)&kOK{VV06ghZTK#v_?0aS%$o>usP%JV|t-X-8<- z24YpB4V`Eu&y(nwrVZu^?U#Y0RrNQs^9xo-SRFziOc|?i<;sUejR0{9{2Sk@{Dbdz zS{QJdbWZiO;ue+)rF{nu{runj+3RmbFLxUQ`}05W#MF(;Kb=XXUKkn9OSY_7-K$i} zs=GDLBw%2|93wv@WkKJL{e8&OkPm?TtJVGXhKBlM&gWEYy2c2lwcoy+_!i``~rsX^edmfT^`83 zv44F0jmBVV<<9iX*wWH`DxJ=ZWOHJ$Vuph$n2DH|lotDAS(JpCMt#*~rO=m4Wn*d_ zC|E2Nj05pa(?Kya&x>G+ur!n$KCQxC!x)@(HE?hVBXm+2W(S3M? zT<(1uTZT{of>ZL(C)S&F|CCt@v4`pYN9^|PS=|vGc3i=ltCURr>Kdg#y83Xoj)p`I z6#pP-6Ca;_Y)A;bdhLduDQ5ad(e4d9};xR>A?+0apKfP&Qn?}!o4l{hGH?oOLb>hyO-NweAq2FAq=xa2qk)~BNN_v$9jzDZsmig*TSVe z(4LGxx7-EeD`d+(;*PIE;`O@HCRh^7cd{9{OX(%=t!=}Ujo13TTZKQ!h@Ja(uXZpf zzL3fcyLaAw-`$wHse6AIEJ`=4$!H_;7=_`l5Jp(gM>|?o-|+pP`Zhy90JaDyzoRn-bfYVS@gc3`ag;muOyYglYK0xWBiG=9 z#d^$PC0JX82H!{0-&&i{gM}8+(K57Gy-~eq zg-N9`uyXM5;s5j8g)1Kt&Tium{hseTb8G6#Pu9wX@3l|viC+3dX5d*x!$guP;Yw|g z4KSny!=KMyuDpz(tg*Z#-Lj`0*UDA3*H!hqilb6g`yFtH_m8<3pLx>Nt3{V3!xS$f z6Y-LjRwfo8+%pCvg|L;kx)+Ozo+a1jhup|5(QQA(U5Za&rT?^b} zSg8Qdf^V)AOA0slor(O|FZKrj?hg6`0DXL9aQ5uk)ytPJS3bNpHTC2RpZcwXdnbM) zlTOdf&oAbtZrw~v02`i|oE$7l$rpEVIVm{IXuz5(m8#9|4-JWNi7S<){11JW{cA31@Dxr6#Wvl){=7$6+|f(-4KA{FJ^2^-xHvVcLxpenXl$G#&v@o2uzwZ zc4N$&Mm&Nozz<|Z4-tK96NHJoYhCD^wgq{&Y*t=UFQ^N2b`^C@S0&WiDZ41@vTt^D zxUn2W2=alLBCmVOtx{TX51u^XPMkQd;zRkT7p1$ztK7<~ErB(Ek$_LQv1yp>X;Z6wY3w3BM+9T-hZfkj!^b>z3CU_$@Ru9^ow)<;Q3F>}G zN1!_*KDzQL+LXek$FKnf`5}Ck(vvr|RpPO*6sh%d(X)5Upha5!PudNsFRNBc?!))r zcfbCXUvdBNOTXZL@yq|jed8P7bXTulbGL5aQUAv00ISyDEf*`+_cb7zL4{0KChrDq z6`UU=$Bt)j&-R4uUo0qr36&ej~3j_%$&QexTbF2wiQaZ75B{Sf?F;W z6u0P3=j;p~@`l^zFmj z5g6A%FIOr5iicGtm3nn@iOuSu!>my5OnV0#9}NA$ zaR@8E>W*g=_$06oJvVK{+J|`Fz(B@bymHmeFD_eK*4xMx@IfG*Yne6hf{*R-vw z&E|)`F?g`_%jeI}s?_?}ZS)5K`uIrV{Q2|s_by$XdHMSee{*8&_?O3rCqJmxYv~W( zKcCI!^TWAZK3ymjU4CfDgglh}l!T%x3O{TMg-k+%XLc|~1&Tn#bHvQ(q`ERTW9ZQy zGySpT6M?5*Ye+yUxy6M=cV}kCm>RRKjGl@nQzZGMpkxqXK=#=2$)uV(s+#V_5K|FD z#YB>^&GL9kV}F6a`p$(8(XLTP7|D_y;TiW1z!R`_kjJ`2sf^txP28O~!28%bkT>i~ zXQoUcCz)a5P@U^jw^hEfQRk$}VsTl{s$96kz0I!KlNU(H*;=LOjvhVaPM4?xu>DJIIzWV~}khdQ7q%WRdNpyd+7F)@yq@T6VQTs7Eo3+jU+e{O*JJ0U` z?axLK+K}UjrCMFist)5F9&L)U{yb}DAdCxAv~Ls4B(fqXErn%3 zisisS)}?c!?t}9e-L)GxY>*c}Y@adZLmoVTP!RS4BU;2uh=mz=(*4=be8xR;=8P@R zMehM*6Xix91)$jnp&PSO+T_U24}dpW{wY)$z_nImi-G7Btr_|zrH=ss&i%k($6)l# zooV;xH^1qA;TL|v{qO(#&$wTZ;{Q9p^9^_H>Q%S6xMXPv*bU=3IrQC@Z0SwQgT+L_|K_NoxXF&-Ml?* zW@_rD`qG--tKTGG&V4&ssMUhk-%)^6Rv?BxFaKXvZ>CBN~0m+(h^_=g_5dhzm47K=+iG%`G7 z%0ILJHp`DuLc#z!%CBF+AVj2xezH3fZ^gG*VX(?){Z`f971zrzJnQyPPLhj?1KES% zMFV*nB8p(ymVkE`;xV7PGUz#I0|1LFMe%{0*^!v`1Sq(z}>-Gj@?HeA0eDQJ6%6_;o8c?k>l@89LoOU{)yw?U0Nv&EY2^E)Em{j z1eGj;7&8KN2DL`j<#SmRgu($aaq!%n2@-P(%z7<6LuE-K%f%5I5w@7ghcQ;FWmi}! zxP|3qH@~ptip8=mS7aa{E7OoLVgicXK^p=U!W9Zsn8|6;1`XjpeucsM&LuGRmXGK; zmcGEGvEwfOZp+wq5UnnvCp})uUxQ?awpo|}XnE}i04zLpMjXP!e%4Z%C29zcban{t zo=(eon@OT<@JJYPrLwG*%kJR8y%OqA>uu=L)!9dWi7yNQm_OMEbjyQaAAjFoM-m9x z6}|2@05Cnf=sx)1qU@m#qb>ozP4_;a<^Vv5PVX|AK^p*=7#}u4BiQ4lnNDx3tM^D= z*qz>UB_HBgFa4nHJ_>iENQU1nzWWC2khgv6w-&-i^KB#f9qLFY;684Wb^+^B!@w$z zWV|FjA%mt*00<%GD1Hnax@%49DZ{1Ra2KK05g?(xSTi~1wEpbZ&~fmUv!YxBlmGd2+6 z!{&-GZL7)Dm!SCDjK36Q!cHk&qoboPFZymyO}TG>``hkkfA(*?zx#LpuKV(rzw9o4 zc)=|#E~?*Jv3_WDWW>TkiLsSh7Kidi{b{vY@dFs9!29@#E6l?44A^>SH0U|F3GcXK z?6ZIJLw;DgNSfk-x2BbkDD{*NgD-sgw^D1^IRwj6M6O&_-p|e3$^Z@;WWc}%MC9IP zDWkz#wg~um8ju8Q%9d-oJQpC33LS82C4S;M0#@ zzjEoXm5R&1XKaMkKWvqYh_m#{;1Iea+HHW(EOEqbbQ7WJR>oVj63Y_(EZgtOCHc}r zt>T`3;xTvPfn#p9UU3caHXD49Ti*LPeK_0`68YE`zTn-3c+96FOG$Qiwgre)I!{#AC={fqtpz}-QA0HBYL1voJ9!i8Ja7e4*j z%Y#E>zdo89{A!_CF5jG<9+NPWOJy>7_DjKR*za6lmB2v{#PUEc5bRmEd` zMDb#0=Y|+13>uO+@{^a!Q^iG|hPGzQeDxe?^zYPvGSjcTrC-JkrAXMMhiv2kH|wYM z4z~;l*tP*($#3piWp`(0&fU5-?YH19EZd+0+Y>UmTr|@!ek40+VbueCje!i?C$4u} zMKgU}OmNc;-QR2sy~5rJY&86J^Dq$%WsILxI&WW!U;v<~zLwJ&{Hg%CVIU_8xJ8Dy zpt=DrW)ry!@B{4XeXTC(K9&9;yEpT<&Y!e|m9x`lqUu(rXiA zBcfaFLv`9##K}#_N66$J!+;z%P#O}*lU>y|%&vKj1`ncyqWp8VP>M+iDf=8e{Mf?} zyC)xiRNZh@d_i((t!nk0^QH*ZXfQ(vo(3PPN1)N@i|iwx)<#*mdg;n_JN%ROXal37 zkFx9pAAV;9Ke(XXQ{MAS%cb#&iGQ(oCi7cor>FY^0CxfX0f0U}R^Xg~3l}a_FI>NU z?YURK_g|bmcHo~aEG#W8uPlwp7PN#=bskHbrN)5|7S)zpi7?=_a&kG8HA$mj% ztIck}PA;W`L8w3|@%z2R*5n*f&L6lWK}n2~tpT(1i+18IGt2DtALdK~!p6Vc+Wt*r z`l0iK8G9z|p8`BRo`HvML+>N{TJ8d(^t92x1K7dfJncSRT@e?G1)n!t2l*H3g3ot_ zr?OxLz^&Uej;~H2XkuEq45B&`>_iux83J=n0`=(VuzUK6#}%&ZZ3_TGv3CmSSnbjL z5p6u|7A%g$yJqJZz3b$r`4rul;Eun@T^Imh*5$2t-qSnPVRiDB3ZyGlV+O=bP*y!< zU<3aMHnu9pNT|C<9(uqX*uU3iQYjjA8#y$3@Mn37RYVAR#H~HGemY`JntG*k3rL1_ zUt%2+LtOw{OV4)mpqqbB*V;0SZUQ>c98Xgm-afpeE~;MRJqjZDvp9Jf!P6jq>P2yH zR4)-=v)P>Z@Sy512lu6Hb=FXR)TOd0w+!s2-R(Q`cF^DNy!mbS4Vib|{lHz3!ZI_n z;Fec7Zzkn3dAN&11`*dAcrv;0+!Ny`7T?)ev9aFq%(ptKq4 zxxWT@KJVL--;e9lRI_sfq)12c)zl6FCyeviF}9r*mzUkwzWP=7*Z=xocR%wpKjYr| z&Ual!N;CfU?3pz8C;pcpjdN=5|Av;a)$@ zdyMbr23YoMVWQFbK>^Z=d!FZ}Idqv5w&TNfx8!V2M0 zH|T>n$6>ipbXTw5G+BxP00!M`(1-fa4A|GD5EES#Xi}FXfVfmI&>~qilFnwo*~sku z`bH{^2|2Q_=9i4^;B*X z+YX?G7M+;(bhZ$8{$-13~>XU>eA&k6379) zvpQ*nWk%!k`HXw!sV5`==#}b*d=o?y>duXJs$9IhlCUg^(AIGZ&AQk`>wPn4qKlu& zS6wlZ{R|s*vs7ugx88bJ^-ZtT$zzXT&mm$&$5%CM06_k%F3B&#jO9h6=1!kH<_;g) zXZ6)@MM2n70WXFxK)l658kcb&}U(ald( z&do5B&kuP;KE^9*kvXxtg?|KLXoc@_l|BAUI`+m#;e9gjiqF9Bu=me;uQp$* zsx46W)y6s5nnAE)vEpvry5lZgy5|1nzxt}RkM};f=x*Jbm9kQj0!kcdDV!rVfPgT} ztUC&+#XE&7?>H_cSIYkn>_-08c&jqIm895zCm_4w}kpjIxPJ%yt6bk>w5%CYYU#o5eAY2u8>eL zH8(btbDw(Yd6&;Jp~awJS$wAvO-A{AGxjL>c4c?=8}cy;+FGE6Gff5uv$j&>!sV;3 zMEg-084r!Z>59bbHSJ9VP&be}r2jANKXBxq)Ka;(`vU-X2mJwnK0fwf)c1pnH|8FE z4qv${ozjcRDaRn3iYcO&CXI87E%+ z2(Lo0850HraLbB-a*0_T@k=pgTOpu$;DOlTe|cru&CSfa>6uykL}4~Nk4+Fxpo}O7^t7t`9}VzHypH8mNN70@4RC|5~rSLj~rGz@LL@$i*&_}7j!H-+532{4%;=Lb+;Zun&U!5Go2q-ted=6UV!!L zML=)|Ux@oj`d>f1ZttUVUN5{Z;RjplA>gyFIK_Xswl&>2q8VdO@0W^Ub#HYwr8-LO zlX9W=DDb??<(TasvSs@>Z{BflojvEi@y*|LZ+`PT?z``tlTccAbBoJTnANtkc_|XZ z=C>g}Zl5Y6e6<%Fs72s5{!WZuk@n|=$W@fj?4?KHHdh%)a@~f}-0RYQ4 zwWA=hM+ohQ*?$mb#cS2pzI*oT52^21nwxiD`PE-_KlM{T<$mdxe#u?Ea>d+c)&CGY zdCF&SSsf6*+R@BsHG1d|W_Wnm!nW-Uq)-02w=^m}wgoN%b|92-aAVKWHECdP3`o?) zOY~z`f>|}58Kqh9^%NQ@LwFMDZrC|G4303c?)UyPpzj9-*p49r-TeH59m>mK$=LX~ z8yz7)7P*6_k#oV2lnsVXLT9*uUIU)jQUGIh{gb;dQBNiM{EFq0V}?$V`+%; zWzAKvEre3&2P0m>AUpYi@}H_#-K$dm_wAjuPxMwQCHsVD^HaPbxF~;u97rfehyHxN zc7`tlUDc+R%T;&r>UHr-pAP-_caeWfUo0$Z8$H4{m=jjwtV$LxEFC;__~$1N9siJ( zypfAOb`ic8>7$QN02l~3fBp92<63WD%$_S_#CapovzCP2pHv2%vgKfP|@{sN&vt z88JlmMpT42^WG?IUu_6$n`jS%drTYEYa#l#6SprvT`4%qLJw@|V1#>iZqd!mFY4ZR zcH}qNW$BIl1L^_(=yYo}_TLfSs(bpW$K7x~t3qcM%?|+J*W6nW{hbK?n>s6N@&Wq0%Xk_mB=U;Fyz4(Hy8le4WU_zV1|4OALQZ;_ z31^EzE|+toBcpC*amjt-9z`~&U7~Bvt{E~qY3s%p*$Fl6vm0b3Q zKl!$(p~)NGD32`6C|On}DyOJ_BCgxFZ@SUZ5w~}8()w~c43N5Gz6mcXI|7do?n9kT zBJQV?>4xw=^v_AG=YOLJ;p|j+-OxFAe7+Gcph8c0Z2|Y7 z8@(IFR{V59=lIv=TM}EMI|hUiuZa8n@p%JHYhq+8 zwC=WoHRW&*5HFXFmeGdMA-H(??sRnPA(=j}7WEWcQ*>Nkq~u+20wTR$_uX2r@{PL< zcWcA+z^%EDuB~vRXO*+XZ?+IenEYS^UG4F=$Kv^!QYGWlK*?BO_$Pc;0}!n8mK*l| zkByDGe3rU~JN2Ig!7c7BUXSqHEo~s~ek5jrSb@T5J`I z>M>v2xpn&vJ)~Uez3MIXp4{>DQ%2O27D9XDf}4;|-9^s|%i?Are}3uYgQtG_AAI>& zFPWpQW8e$F|8vK#-Mao)?%baGv4i{fOr)9VSDfLH+!i|LNT}&8dV@Rv9NybSZ5NrM zQLDIoF5_zDk{l>6Xfx_>A3Jl(J@U{AH=GlHs#RUB!l8dr*sA9~4j(?``R6G72!W2y z)OuJO6d#^vrN;Fs8vqzg=WH;;1|@qT_BzBBhpmQEIBemm)@n1k{P@pYxPJ3a^tz8- zhSw?k1}G4aLXY&%*HUY%U}XRBo46S&uB2dn_#|y8OMZzP7HcIbWfSb zdP0YFOkB_R`im)!aRatOcN|_AAr^!N(xjY|QZc`_igskwFPg33r{b# zRdp$qb8o+WR&}jl15uuL#Iyqk$j7yHPB)7*gd}R z@9Dz|rOxgmw;P40C1xV~`w7ssV@L$Gwml`E+p#_^8>2PkcN{#kl-+`mf!o>Ab$iy2 zOg6^}`l?U5hf;qkw>R8pGyae_(#34EA6!*Cli+LTt0*up%%dC-CT-B0hD?P41QcC` z!70_8xeZTce?H6gE42Z4YkJmw_w94;Yrp+1_w}!T%e`~$70YL#l{i_RsF*sb1Jtvu~e!=euvapZ@8e zc7Nk<{0&>`zjx0bms6f{I3VBoH^rBJi_BLZhx*g3NA?1ueLjc#mT5<_4p^baK)BwG z(2N}%wXgHbWfP!ojl?dgAD=su)LkWmCMloDWlCTv$L{WUS4oR z`Mle|Z?8xqo@fO`6bRR~ZEP1oe7Yn}H~XXsGrQf)-2$|9LZ}bnz1_>s?2)AgGVbcN zn{Ik`US-DC8tNcQp?uKiT0N4#L<}}iAX`=jam85uCC&El2LLLP&$2_Kvtwfuf9>4G zD>L}r3SNKx_0$um4!`u_`)7YSfWM?IjjfGG2R@Uj}~p zl1D0&pWeTB-~aL64iCMn~1xiXn<&F+;=N!(yQz;g(LyBQQeTt;-kz3Z*&*z6QW20O_>&5�A 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ⓈeT-7dh=UuVtkJc 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%0D$K$^Zo)_2p-F6$*sG7eD4et39X&R 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 literal 0 HcmV?d00001 diff --git a/src/content.config.ts b/src/content.config.ts index 50cb18c..5a2f650 100644 --- a/src/content.config.ts +++ b/src/content.config.ts @@ -1,7 +1,9 @@ import { defineCollection } from 'astro:content'; import { docsLoader } from '@astrojs/starlight/loaders'; import { docsSchema } from '@astrojs/starlight/schema'; +import { docsVersionsLoader } from 'starlight-versions/loader'; export const collections = { - docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }) + docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }), + versions: defineCollection({ loader: docsVersionsLoader() }) }; diff --git a/src/content/docs/v0.6/basic/configuration/01-ntp-server.mdx b/src/content/docs/v0.6/basic/configuration/01-ntp-server.mdx new file mode 100644 index 0000000..bd5806a --- /dev/null +++ b/src/content/docs/v0.6/basic/configuration/01-ntp-server.mdx @@ -0,0 +1,47 @@ +--- +title: NTP Server +description: Configure NTP server for OtterScale. +slug: v0.6/basicconfiguration/01-ntp-server +--- + +import { Steps } from '@astrojs/starlight/components'; + +This page allows you to configure the Network Time Protocol (NTP) servers used by the OtterScale system for time synchronization. Accurate timekeeping is crucial for distributed systems and log consistency. + +## Introduction + +The NTP Server configuration page allows you to manage the time synchronization sources for your OtterScale infrastructure. Here you can view and modify the list of NTP servers that will be used across all scopes. + +**Key Points:** + +* **Scope:** These settings apply to all scopes. Any changes made here will affect time synchronization for MAAS itself, all deployed machines, and devices using MAAS's DHCP services. +* **Default Configuration:** By default, OtterScale uses `ntp.ubuntu.com` as the NTP server. +* **Address Format:** You can specify NTP servers using either IP addresses (e.g., `192.168.1.1`) or hostnames (e.g., `pool.ntp.org`, `time.google.com`). +* **Multiple Servers:** It's recommended to configure multiple NTP servers for redundancy. If one server becomes unavailable, the system will automatically fall back to alternative servers. +* **Display:** Each configured server is displayed with a clock icon in the configuration list. + +## Why is NTP Important? + +NTP (Network Time Protocol) is used to synchronize the clocks of computers over a network. In a cluster environment like OtterScale, it serves several critical functions: + +* **Log Analysis**: Synchronized time is essential for correlating logs across different servers to debug issues effectively. +* **Distributed Consistency**: Distributed systems (e.g., databases, consensus algorithms) rely on accurate time to maintain data integrity and order of operations. +* **Security**: Many security protocols (like TLS/SSL certificates and Kerberos) rely on time validation. Significant time drift can cause authentication failures. +* **Scheduled Tasks**: Ensures that automated tasks and backups run at the correct coordinated times. + +## Edit NTP Servers + +To modify the NTP server list, follow these steps: + + + 1. Click the **Edit** button (pencil icon) located at the top right of the configuration section. + + 2. A modal window titled "Edit NTP Server" will appear. + + 3. In the **Address** field, you can manage the list of NTP servers: + + * **Add a server:** Type the NTP server address (e.g., `pool.ntp.org`) in the input field and click the **+** button to add it to the list (or press Enter). + * **Remove a server:** Click the **×** icon next to an existing address to delete it from the list. + + 4. Click **Confirm** to save your changes. The system will update the configuration and the new list will be displayed. + diff --git a/src/content/docs/v0.6/basic/configuration/02-boot-image.mdx b/src/content/docs/v0.6/basic/configuration/02-boot-image.mdx new file mode 100644 index 0000000..5cccdef --- /dev/null +++ b/src/content/docs/v0.6/basic/configuration/02-boot-image.mdx @@ -0,0 +1,51 @@ +--- +title: Boot Image +description: Configure boot image for OtterScale. +slug: v0.6/basicconfiguration/02-boot-image +--- + +import { Steps } from '@astrojs/starlight/components'; + +This page allows you to manage the operating system images (Boot Images) available for provisioning machines in the OtterScale cluster. These images are typically Ubuntu LTS releases. + +## Introduction + +The Boot Image settings page displays a list of configured boot images. The table includes the following information: + +* **Name**: The display name of the operating system (e.g., Ubuntu 22.04 LTS). +* **Source**: The URL of the image repository. +* **Distro Series**: The codename of the distribution release (e.g., `jammy`, `noble`). +* **Default**: Indicates if this is the default image used when no specific image is requested. +* **Architecture**: The CPU architectures supported by this image (e.g., `amd64`, `arm64`). +* **Status**: Shows the sync status of the image architectures. + +## Manage Boot Images + +You can perform the following actions to manage boot images: + +### Create a New Boot Image + +To add a new boot image configuration: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Boot Image" will appear. + + 3. **Select Distro Series**: Choose the desired Ubuntu release from the dropdown menu. + + 4. **Select Architecture**: Choose one or more CPU architectures to support for this release. + + 5. Click **Confirm** to save. The system will begin tracking this image configuration. + + +### Import Images + +To synchronize the local image cache with the upstream source: + +1. Click the **Import** button (refresh icon). +2. The system will trigger a background process to download and update the images. The button will show an "Importing..." state with a spinner while the process is running. + +### Set Default Image + +The image marked with a circle icon in the **Default** column is the current default. To change the default image, use the actions menu (three dots) on the desired image row and select **Set Default**. diff --git a/src/content/docs/v0.6/basic/configuration/03-machine-tag.mdx b/src/content/docs/v0.6/basic/configuration/03-machine-tag.mdx new file mode 100644 index 0000000..f050b17 --- /dev/null +++ b/src/content/docs/v0.6/basic/configuration/03-machine-tag.mdx @@ -0,0 +1,62 @@ +--- +title: Machine Tag +description: Configure machine tags for OtterScale. +slug: v0.6/basicconfiguration/03-machine-tag +--- + +import { Steps } from '@astrojs/starlight/components'; + +This page allows you to manage tags that can be assigned to machines in the OtterScale cluster for filtering and group management. These tags help in organizing and managing machines based on their characteristics or purposes. + +## Introduction + +The Machine Tag settings page displays a list of all existing tags in a table format. Tags are identifiable labels that can be assigned to machines for various purposes such as: + +* **Role Identification**: Marking machines by their function (e.g., `kubernetes-worker`, `kubernetes-control-plane`, `ceph-osd`) +* **Hardware Features**: Identifying specific capabilities (e.g., `virtual` for VMs) +* **Grouping**: Organizing machines for bulk operations or filtering + +### Table Columns + +* **TAG**: The unique name of the tag (e.g., `virtual`, `kubernetes`, `ceph`). +* **COMMENT**: A description or note associated with the tag. Tags with "built-in" comment are system-managed tags that cannot be deleted. + +## Manage Machine Tags + +You can create new tags or delete existing ones. + +### Create a New Tag + +To create a custom tag: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Machine Tag" will appear. + + 3. **Name**: Enter a unique name for the tag. + + 4. **Comment**: (Optional) Enter a description for the tag. + + 5. Click **Confirm** to save. The new tag will appear in the list. + + +### Delete a Tag + +To remove a tag: + + + 1. Locate the tag you want to remove in the list. + + 2. Click the **Delete** button (trash icon) in the actions column. + + * **Note**: Built-in system tags (those with "built-in" in the comment field) cannot be deleted. The Delete link will be grayed out and disabled for these tags. + + 3. A confirmation modal will appear. You must type the name of the tag to confirm deletion. + + 4. Click **Confirm** to permanently delete the tag. + + +:::caution +Deleting a tag will remove it from all machines that currently have this tag assigned. This action cannot be undone. +::: diff --git a/src/content/docs/v0.6/basic/configuration/04-package-repository.mdx b/src/content/docs/v0.6/basic/configuration/04-package-repository.mdx new file mode 100644 index 0000000..1a4cd70 --- /dev/null +++ b/src/content/docs/v0.6/basic/configuration/04-package-repository.mdx @@ -0,0 +1,42 @@ +--- +title: Package Repository +description: Configure package repositories for OtterScale. +slug: v0.6/basicconfiguration/04-package-repository +--- + +import { Steps } from '@astrojs/starlight/components'; + +Package repositories contain software packages that can be installed on machines. These repositories can be configured with custom URLs and enabled/disabled as needed to control software sources and updates for your infrastructure. + +## Introduction + +The Package Repository settings page displays a list of configured repositories in a table format. By default, OtterScale includes standard Ubuntu repositories such as: + +* **Ubuntu extra architectures**: Provides packages for additional CPU architectures +* **Ubuntu archive**: The main Ubuntu package repository + +### Table Columns + +* **NAME**: The display name of the repository (e.g., `Ubuntu extra architectures`, `Ubuntu archive`). +* **URL**: The base URL of the repository (e.g., `http://ports.ubuntu.com/ubuntu-ports`, `http://tw.archive.ubuntu.com/ubuntu`). +* **ENABLED**: A toggle indicator showing whether the repository is currently active. + +## Manage Package Repositories + +You can modify the URL of existing package repositories. This is useful if you want to point to a local mirror or a different upstream source to improve download speeds or manage bandwidth. + +### Edit Repository URL + +To change the URL of a package repository: + + + 1. Locate the repository you want to modify in the list. + + 2. Click the **Edit** button (displayed with a pencil icon) on the right side of the row. + + 3. A modal window titled "Edit Package Repository" will appear. + + 4. **URL**: Enter the new URL for the repository. + + 5. Click **Confirm** to save your changes. + diff --git a/src/content/docs/v0.6/basic/machines.mdx b/src/content/docs/v0.6/basic/machines.mdx new file mode 100644 index 0000000..17bad17 --- /dev/null +++ b/src/content/docs/v0.6/basic/machines.mdx @@ -0,0 +1,166 @@ +--- +title: Machines +description: Manage machines in OtterScale. +slug: v0.6/basic/machines +--- + +import { Card, CardGrid, Steps, Aside, Icon } from '@astrojs/starlight/components'; + +The Machines section allows you to manage the **physical machines** (bare metal) in your infrastructure. The list of machines is retrieved directly from MAAS. + + + +## Introduction + +The Machines page displays a comprehensive list of all machines in your scope, along with real-time statistics and management tools. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of your infrastructure based on the current filters: + + + + Total number of machines currently listed. + + + + The percentage and count of machines that are currently powered on. + + + + The percentage and count of machines that are successfully deployed. + + + + The total number of physical disks and the aggregate storage capacity across all listed + machines. + + + +### Data Table + +The table provides detailed information for each machine. You can toggle column visibility using the **Columns** button. + +| Column | Description | +| :---------------------- | :------------------------------------------------------------------------------------------------------------ | +| **FQDN / IP** | The Fully Qualified Domain Name and IP addresses. Click the FQDN to view [machine details](#machine-details). | +| **Power** | Current power state (On/Off) and the power control type (e.g., IPMI, Manual). | +| **Status** | The current deployment status (e.g., Deployed, Ready, Commissioning). | +| **Core / Architecture** | Number of CPU cores and the system architecture (e.g., amd64). | +| **RAM** | Total available RAM. | +| **Disk** | Number of physical disk drives detected. | +| **Storage** | Total storage capacity. | +| **GPU** | Details of installed GPUs, if any. | +| **Scope** | The scope to which the machine is assigned. | +| **Tags** | Tags assigned to the machine for organization. | +| **Memory** | A real-time bar chart indicating memory usage. | +| **Storage** | A real-time bar chart indicating storage usage. | +| **Actions** | Quick actions available for the machine, such as **Power Off** or **Remove**. | + +## Manage Machine + +You can perform management actions on individual machines using the action menu or specific buttons. + +### Power Off + +Turns off the machine. +This action is only available when the machine is currently powered on. + + + +### Remove + +Permanently removes the machine from the system. + + + +* **Options**: + * **Force**: Force removal even if the machine is not in a valid state. + * **Purge Disk**: Securely erase the disk contents during removal. + +### Adding to Scope + +To add a machine to a specific scope: + + + 1. Navigate to `https:///scope//setup`. + 2. Click the **Add Node** button. + 3. Select the machine that has not yet been registered to a scope to add it. + + +## Machine Details + +Clicking the FQDN of a machine takes you to the machine details page (`https:///machines/metal/`), which provides a comprehensive view of the machine's hardware and status. + +### Header Information + +The top of the page displays the machine's **ID**, **FQDN**, and assigned **Tags**. If the machine is not in a 'Deployed' state, an alert will be displayed. + +### Statistics Cards + +The page features several cards providing a quick overview of the machine's resources: + + + + Displays the power type (e.g., IPMI), current power state (On/Off), deployment status, and OS + details (System, Kernel, Distro). + + + + Shows the CPU architecture, total core count, and the specific CPU model. + + + + Indicates the total available RAM. + + + + Displays the total storage capacity and the number of physical disks. + + + + Provides details on the system product, vendor, and mainboard firmware (vendor and version). + Hovering over the info icon reveals more detailed hardware specifications. + + + +### Hardware Details + +Detailed hardware configurations are listed in expandable tables: + +#### Block Devices + +Lists all storage devices attached to the machine with the following details: + +| Field | Description | +| :------------------- | :---------------------------------------- | +| **Name** | Device identifier (e.g., sda). | +| **Model & Serial** | Manufacturer model and serial number. | +| **Boot Disk** | Indicates if it is the boot device. | +| **Firmware Version** | Current firmware version of the drive. | +| **Type** | Drive type (e.g., SSD, HDD). | +| **Used For** | Current usage status. | +| **Tags** | Any tags assigned to the specific device. | + +#### Network + +Lists all network interfaces with the following details: + +| Field | Description | +| :------------------------- | :--------------------------------------------------- | +| **Name / MAC** | Interface name and MAC address. | +| **IP / Subnet** | Assigned IP address and subnet. | +| **Link Speed / Connected** | Current link speed and connection status. | +| **Fabric / VLAN** | Network fabric and VLAN configuration. | +| **Type** | Interface type (e.g., physical, bond). | +| **DHCP** | Whether DHCP is enabled. | +| **Boot Interface** | Indicates if this is the interface used for booting. | +| **Interface Speed** | The capability speed of the interface. | diff --git a/src/content/docs/v0.6/basic/networking.mdx b/src/content/docs/v0.6/basic/networking.mdx new file mode 100644 index 0000000..cedc89f --- /dev/null +++ b/src/content/docs/v0.6/basic/networking.mdx @@ -0,0 +1,102 @@ +--- +title: Networking +description: Manage networking in OtterScale. +slug: v0.6/basic/networking +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +This page allows you to manage the network infrastructure for the OtterScale cluster. You can manage network fabrics, VLANs, and subnets for machine provisioning and service connectivity. + +### Statistics Overview + +At the top of the page, a set of summary cards provides a quick overview of the configured networking resources.: + + + + Total number of Fabrics available for network segmentation. + + + + Overall utilization of IP address space across all subnets. + + + +## Introduction + +The Networking page displays a list of configured networks. The table includes the following information: + +| Column | Description | +| :------------- | :----------------------------------------------------------------------------------- | +| **Fabric** | The physical network fabric associated with the network. | +| **VLAN** | The Virtual LAN (VLAN) ID and name. | +| **DHCP On** | Indicates whether DHCP is enabled for this network. | +| **Subnet** | The CIDR notation of the subnet (e.g., `192.168.1.0/24`) and the Gateway IP address. | +| **IP Address** | The number of IP addresses currently in use or reserved. | +| **IP Range** | The configured IP ranges for dynamic allocation. | +| **Statistics** | Visual representation of IP address usage (Available vs. Total). | + +## Manage Networks + +A Fabric represents a physical or logical L2 broadcast domain. Within each Fabric, you can define VLANs. Each VLAN containes one Subnet, which represent routable IP networks used for DHCP, PXE booting, and machine allocation. +You can create new networks or manage existing ones using the **Actions** menu (three dots icon) in each row. + +### Create a New Network + +To add a new network configuration: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Network" will appear. + + 3. Configure **VLAN Settings**: + * **Name**: Enter a name for the VLAN. + :::note + The prefix `fabric-*` is reserved for system use and cannot be used for custom network names. + ::: + * **DHCP On**: Toggle this switch to enable or disable DHCP service for this network. + + 4. Configure **Subnet Settings**: + + * **CIDR**: Enter the Classless Inter-Domain Routing (CIDR) notation for the subnet (e.g., `10.0.0.0/24`). + * **Gateway**: Enter the IP address of the network gateway. + * **DNS**: Add one or more DNS server IP addresses. + + 5. Click **Confirm** to create the network. + + +### Network Actions + +The **Actions** menu provides granular control over the different components of a network row: + +#### Edit Fabric + +Allows you to rename the physical fabric associated with the network. + +#### Edit VLAN + +Allows you to modify VLAN properties: + +* **Name**: Rename the VLAN. +* **MTU**: Set the Maximum Transmission Unit size. +* **Description**: Add or update the description. +* **DHCP On**: Enable or disable DHCP for this VLAN. + +#### Edit Subnet + +Allows you to modify subnet properties: + +* **Name**: Rename the subnet. +* **Description**: Add or update the description. +* **CIDR**: Update the subnet mask/range. +* **Gateway**: Change the gateway IP address. +* **DNS**: Manage DNS servers and toggle DNS resolution. + +#### Delete Fabric + +Permanently removes the fabric and its associated network configuration. + + diff --git a/src/content/docs/v0.6/create-scope.md b/src/content/docs/v0.6/create-scope.md new file mode 100644 index 0000000..61aa434 --- /dev/null +++ b/src/content/docs/v0.6/create-scope.md @@ -0,0 +1,24 @@ +--- +title: Scope +description: Manage scopes in OtterScale. +slug: v0.6/create-scope +--- + +Scopes allow you to organize your resources and control access. + +## Selecting a Scope + +You can select a scope from the dropdown menu in the navigation bar. This will filter the resources you see to only those within the selected scope. + +## Creating a Scope + +To create a new scope: + +1. Navigate to the Scope management area. +2. Click on "Create Scope". +3. Enter the necessary details. +4. Confirm the creation. + +## Managing Scopes + +You can manage existing scopes, including updating settings and managing access. diff --git a/src/content/docs/v0.6/demos/01-virtual-machine.mdx b/src/content/docs/v0.6/demos/01-virtual-machine.mdx new file mode 100644 index 0000000..55cc5be --- /dev/null +++ b/src/content/docs/v0.6/demos/01-virtual-machine.mdx @@ -0,0 +1,185 @@ +--- +title: Virtual Machine +description: Create and provision a Virtual Machine within the OtterScale cluster. +slug: v0.6/demos/01-virtual-machine +--- + +import { Steps, Aside, LinkCard } from '@astrojs/starlight/components'; + +This guide demonstrates how to create and provision a Virtual Machine (VM) within the OtterScale cluster for running workloads. + +## Prepare Data Volume (Boot Image) + +Before creating a Virtual Machine, you need to create a Data Volume (Persistent Volume Claim) that will serve as the bootable OS disk for the VM. + + + 1. Navigate to the Data Volume section: + + * Open your browser and go to: + + ``` + /scope//service/data-volume + ``` + + 2. Create a new Data Volume for the VM boot disk: + + * Click the **Create** button (plus icon) at the top of the Data Volume page + * A modal window titled "Create Data Volume" will appear + + 3. Configure the boot image Data Volume (PVC): + + * **Name**: Enter a unique name for the boot disk (e.g., `ubuntu-20.04-vm-boot`) + * **Namespace**: Specify the Kubernetes namespace (defaults to `kubevirt`) + * **Size**: Set the capacity of the volume (e.g., 20 GB for a typical VM) + * **Boot Image**: Toggle this option to enable the boot image mode (this will display the source input field) + * **Source**: Enter the URL of the bootable OS image: + * Example: `https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img` + * You can use the "Cloud Image" button to browse common Ubuntu cloud images + + 4. Click **Confirm** to create the boot image Data Volume: + + * The PVC will begin importing the OS image from the specified source + * Monitor the progress in the Data Volume list + * Wait until the **Phase** changes to **Succeeded** before proceeding to create the VM + + + + +## Create a Virtual Machine + + + + + 1. Navigate to the Compute section: + + Open your browser and go to: + + ``` + /scope//compute + ``` + + 2. Create a new Virtual Machine: + + * Click the **Create** button (plus icon) at the top of the Compute page + * A modal window titled "Create Virtual Machine" will appear + + 3. Configure Basic Settings: + + * **Name**: Enter a unique name for the VM (e.g., `my-demo-vm`) + * **Namespace**: Specify the Kubernetes namespace (defaults to `kubevirt`) + * **Instance Type**: Select a hardware profile from the dropdown list (displays CPU cores and Memory size) + * **Data Volume**: Select the bootable Data Volume (PVC) to use as the OS disk + + 4. Configure Advanced Settings (Optional): + + * Expand the "Advanced" section to configure a **Startup Script** (Cloud-Init user data) + * This allows you to bootstrap the instance with custom initialization commands + * Example configuration for user setup and SSH access: + + ``` + #cloud-config + users: + - name: phison + sudo: ['ALL=(ALL) NOPASSWD:ALL'] + groups: sudo + shell: /bin/bash + chpasswd: + list: | + phison:phison_8299 + expire: false + ssh_pwauth: true + ``` + + 5. Review and Confirm: + + * Review all the configuration settings + * Click **Confirm** to launch the Virtual Machine + + 6. Wait for VM Initialization: + + * The VM will begin provisioning and cloning a Data Volume for its use + * Monitor the **Status** column to track the initialization progress + * Wait until the status changes to **Running** + + +## Monitor the Virtual Machine + +Once the VM is created, you can monitor its status in the Compute page: + + + 1. View the VM in the Compute list: + + * Locate your newly created VM by name in the table + * Check the **Status** column to see the current state (e.g., Running, Stopped) + + 2. Access VM resources: + + * **Machine**: Click to view which physical node is hosting your VM + * **Disk**: Expand to view and manage attached storage volumes + * **Ports**: Expand to view and manage network port configurations + * **Metrics**: Monitor real-time CPU, Memory, and Storage usage + * **VNC**: Access the VM console directly through VNC + + +## Configure Service for VM Access + +To enable external access to your Virtual Machine, configure a service to expose its ports: + + + 1. Add a service port for SSH access: + + * In the Compute page, locate your VM in the table + * Click on the **Ports** column to expand the port management section + * Click **Add Port** to create a new service port + * Configure the port settings: + * **Protocol**: `tcp` + * **Port**: `22` (SSH service port on the VM) + * **NodePort**: (leave empty for automatic assignment or specify a fixed port) + * The system will automatically assign a NodePort (e.g., `30022`) for external access + + 2. Note the NodePort: + + * Record the assigned NodePort from the Ports section + * This is the port you'll use to connect to the VM from outside the cluster + + +## Access Your Virtual Machine + +Once the VM is running, fully initialized, and the service port is configured: + + + 1. Wait for cloud-init initialization: + + * The VM will automatically execute the cloud-init configuration + * The system user `phison` will be created with sudo privileges + * The password will be set as configured in the cloud-config + + 2. Connect to the VM: + + * Use SSH to connect to your VM from external hosts + * Connection example: + ``` + ssh -p phison@ + ``` + * Or use VNC to connect directly through the web interface + * Login credentials: + * **Username**: `phison` + * **Password**: `phison_8299` + + 3. Start using your VM: + + * You now have full access to configure and use the Virtual Machine + * The user has sudo privileges for system administration tasks + + +## Next Steps + +Explore other demo applications and services to enhance your infrastructure: + + + + diff --git a/src/content/docs/v0.6/demos/02-coder.mdx b/src/content/docs/v0.6/demos/02-coder.mdx new file mode 100644 index 0000000..93be354 --- /dev/null +++ b/src/content/docs/v0.6/demos/02-coder.mdx @@ -0,0 +1,72 @@ +--- +title: Coder +description: Deploy Coder for cloud-based VS Code IDE environments with support + for both Go and Python backends. +slug: v0.6/demos/02-coder +--- + +import { Steps, Aside, LinkCard } from '@astrojs/starlight/components'; + +This guide demonstrates how to deploy Coder to provide cloud-based VS Code IDE environments for development and coding. + +## Deploy Coder + + + + + 1. Navigate to the Applications Store: + + Open your browser and go to: + + ``` + /scope//applications/store + ``` + + 2. Search and install Coder: + + * Search for `code-server` (available versions: `code-server-go` or `code-server-python`) + * Choose your preferred version (Go for better performance, Python for flexibility) + * Click on the Coder card + * Click the **Install** button and follow the installation wizard + * Review and confirm the Helm Chart configuration + + 3. Verify the deployment: + + Go to the Workloads page: + + ``` + /scope//applications/workloads + ``` + + * Use the **Namespace** filter to find the deployment + * Search for `coder` or `code-server` to locate the deployed Coder workload + * Verify that the workload status shows as running + + 4. Access Coder VS Code IDE: + + * In the Workloads list, locate the Coder workload + * Click on the **NodePort** link to open VS Code in your browser + + + + +## Initial Setup + +Once Coder is deployed and running: + +1. Access the VS Code IDE through the NodePort link in your browser +2. You'll see the VS Code interface with a file explorer and terminal +3. Start creating or editing files directly in the browser-based editor +4. Use the integrated terminal for running commands and development tasks + +## Next Steps + +Explore other demo applications to enhance your infrastructure: + + + + diff --git a/src/content/docs/v0.6/demos/03-jupyterhub.mdx b/src/content/docs/v0.6/demos/03-jupyterhub.mdx new file mode 100644 index 0000000..d4189be --- /dev/null +++ b/src/content/docs/v0.6/demos/03-jupyterhub.mdx @@ -0,0 +1,75 @@ +--- +title: JupyterHub +description: Deploy JupyterHub for multi-user Jupyter notebook environments. +slug: v0.6/demos/03-jupyterhub +--- + +import { Steps, Aside, LinkCard } from '@astrojs/starlight/components'; + +This guide demonstrates how to deploy JupyterHub to provide collaborative Jupyter notebook environments for multiple users. + +## Deploy JupyterHub + + + + + 1. Navigate to the Applications Store: + + Open your browser and go to: + + ``` + /scope//applications/store + ``` + + 2. Search and install JupyterHub: + + * Search for `jupyterhub` + * Click on the JupyterHub card + * Click the **Install** button and follow the installation wizard + * Review and confirm the Helm Chart configuration + + 3. Verify the deployment: + + Go to the Workloads page: + + ``` + /scope//applications/workloads + ``` + + * Use the **Namespace** filter to find the deployment + * Search for `jupyterhub` to locate the deployed JupyterHub workload + * Verify that the workload status shows as running + + 4. Access JupyterHub: + + * In the same Workloads list, locate the workload named **proxy** + * Click on the **NodePort** link to open JupyterHub in your browser + + + + +## Initial Setup + +Once JupyterHub is deployed and running: + +1. Access the JupyterHub login page +2. Create or log in with your credentials +3. Start a new notebook server +4. Begin using Jupyter notebooks for data analysis and development + +## Next Steps + +Explore other demo applications to enhance your infrastructure: + + + + diff --git a/src/content/docs/v0.6/demos/04-llm-model.mdx b/src/content/docs/v0.6/demos/04-llm-model.mdx new file mode 100644 index 0000000..8d79a5b --- /dev/null +++ b/src/content/docs/v0.6/demos/04-llm-model.mdx @@ -0,0 +1,103 @@ +--- +title: LLM Model +description: Deploy and test LLM models integrated with OpenAI API. +slug: v0.6/demos/04-llm-model +--- + +import { Steps, Aside, Tabs, TabItem } from '@astrojs/starlight/components'; + +This guide demonstrates how to deploy a Large Language Model (LLM) in your OtterScale cluster and test it using Python with OpenAI API integration. + +## Deploy LLM Model + + + + + 1. Navigate to the **Models** page in your OtterScale cluster. + + 2. Click the **Create** button to create a new model. + + 3. Select a model from your model artifacts: + * Search for available models using the cloud icon in the search box + * Or click the archive icon to browse model artifacts + * Select your desired LLM (e.g., `meta-llama/Llama-2-7b-chat`) + + 4. Configure the model deployment: + * **Name**: Choose a descriptive name (e.g., `llm-demo`) + * **Namespace**: Select your target namespace + * **Prefill Configuration**: Set vGPU memory %, replica count, and tensor configuration (if needed) + * **Decode Configuration**: Set decoding parameters similarly + * **Description**: Add any relevant notes about the deployment + + 5. Review the configuration and click **Create** to deploy the model. + + 6. Monitor the deployment status on the Models page. The status will change from `Pending` → `Running` → `Ready`. + + 7. Once the status shows **Ready**, click the **Test** button to verify the model API is working. + + + + +## Test with Python + +Once your LLM model is deployed and ready, you can test it using Python with OpenAI API integration. + + + +### Connection Information + +Before running the test scripts, you'll need to find the following information from the `/scope//models/llm` page: + +* **Service URL**: The URL information from the Service card +* **Name**: The `name` field in the model table +* **Model Name**: The `Model Name` field in the model table + +```python +import requests +import json + +# Configuration +SERVICE_URL = "" # e.g., http://localhost:8000 +NAME = "" # e.g., llm-demo +MODEL_NAME = "" + +def ask_question(question): + """Send a simple question to the LLM and get a response.""" + headers = { + "OtterScale-Model-Name": NAME, + "Content-Type": "application/json" + } + + payload = { + "model": MODEL_NAME, + "prompt": question + } + + try: + response = requests.post( + f"{SERVICE_URL}/v1/completions", + headers=headers, + json=payload + ) + response.raise_for_status() + result = response.json() + return result.get("response", result) + except Exception as e: + return f"✗ Error: {str(e)}" + +# Test +question = "Are you alive? Please respond if you can process this message." +answer = ask_question(question) +print(f"Q: {question}") +print(f"A: {answer}") +``` diff --git a/src/content/docs/v0.6/demos/05-postgres.mdx b/src/content/docs/v0.6/demos/05-postgres.mdx new file mode 100644 index 0000000..d76dfc1 --- /dev/null +++ b/src/content/docs/v0.6/demos/05-postgres.mdx @@ -0,0 +1,279 @@ +--- +title: PostgreSQL +description: Deploy PostgreSQL database using Helm charts from the registry. +slug: v0.6/demos/05-postgres +--- + +import { Steps, Aside, Tabs, TabItem } from '@astrojs/starlight/components'; + +This guide demonstrates how to deploy PostgreSQL to your applications using a Helm chart from Artifact Hub. + +## Prerequisites + +Ensure you have the following tools installed: + +* **Helm**: [Installation Guide](https://helm.sh/docs/intro/install) +* **Access to Registry URL**: Obtain this from the Commands button on the Repositories page or Applications Services page + +## Deploy PostgreSQL + + + + + 1. Download the PostgreSQL Helm chart from Artifact Hub: + + ```bash + helm pull oci://registry-1.docker.io/bitnamicharts/postgresql --version 18.2.0 + ``` + + This command downloads `postgresql-18.2.0.tgz` to your local directory. + + 2. Upload the chart to your private registry: + + ```bash + helm push postgresql-18.2.0.tgz oci:///postgres --plain-http + ``` + + Replace `` with your actual registry URL (e.g., `192.168.196.42:5736`). + + **Example:** + + ```bash + helm push postgresql-18.2.0.tgz oci://192.168.196.42:5736/postgres --plain-http + ``` + + 3. After uploading, navigate to the `Applications Store` to deploy the Helm chart. + + **To allow external connections and configure storage**, adjust the deployment settings: + + ```yaml + service: + type: NodePort + port: 5432 + nodePort: 30432 # Port range: 30000-32767 + primary: + persistence: + size: 10Gi # PVC Storage Request for PostgreSQL volume (e.g., 10Gi, 20Gi, 100Gi) + ``` + + **Configuration Details**: + + * **service.type**: Set to `NodePort` to allow external connections + * **service.port**: PostgreSQL service port (default: 5432) + * **service.nodePort**: External port accessible from outside the cluster + * **primary.persistence.size**: Storage size for the PostgreSQL data volume (adjust based on your needs) + + After deployment, you can connect externally using `:`. + + 4. Retrieve the PostgreSQL password from `Applications Secrets`: + * Navigate to the **Applications Secrets** page + * Adjust the **namespace filter** in the top-right corner to select your namespace + * Click on the postgres-related secret entry + * Copy the password and decode it using base64: + ```bash + echo "" | base64 --decode + ``` + Or use this online tool: [base64decode.org](https://www.base64decode.org/) + * Use the decoded password for your PostgreSQL connections + + +## Test with Python + +You can verify your PostgreSQL deployment by using Python to perform read and write operations. + + + +### Connection Information + +Before running the test scripts, you'll need: + +* **Host**: PostgreSQL service endpoint +* **Port**: Database port (default: 5432) +* **Database**: Database name (default: postgres) +* **User**: Username (default: postgres) +* **Password**: Database password + + + + ```python + import psycopg2 + + try: + connection = psycopg2.connect( + host="", + port=5432, + database="postgres", + user="postgres", + password="" + ) + cursor = connection.cursor() + cursor.execute("SELECT version();") + version = cursor.fetchone() + print("PostgreSQL version:", version) + cursor.close() + connection.close() + print("✓ Connection successful!") + except Exception as e: + print("✗ Connection failed:", str(e)) + ``` + + + + ```python + import psycopg2 + + connection = psycopg2.connect( + host="", + port=5432, + database="postgres", + user="postgres", + password="" + ) + cursor = connection.cursor() + + # Create a test table + cursor.execute(""" + CREATE TABLE IF NOT EXISTS demo_users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100), + email VARCHAR(100), + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP + ) + """) + + # Insert sample data + cursor.execute(""" + INSERT INTO demo_users (name, email) + VALUES (%s, %s) + """, ("John Doe", "john@example.com")) + + cursor.execute(""" + INSERT INTO demo_users (name, email) + VALUES (%s, %s) + """, ("Jane Smith", "jane@example.com")) + + connection.commit() + print("✓ Data inserted successfully!") + + cursor.close() + connection.close() + ``` + + + + ```python + import psycopg2 + + connection = psycopg2.connect( + host="", + port=5432, + database="postgres", + user="postgres", + password="" + ) + cursor = connection.cursor() + + # Read all data from the table + cursor.execute("SELECT id, name, email, created_at FROM demo_users") + rows = cursor.fetchall() + + print("Records in demo_users table:") + for row in rows: + print(f"ID: {row[0]}, Name: {row[1]}, Email: {row[2]}, Created: {row[3]}") + + cursor.close() + connection.close() + ``` + + + + ```python + import psycopg2 + from datetime import datetime + + class PostgreSQLDemo: + def __init__(self, host, port, database, user, password): + self.connection = psycopg2.connect( + host=host, + port=port, + database=database, + user=user, + password=password + ) + self.cursor = self.connection.cursor() + + def test_connection(self): + try: + self.cursor.execute("SELECT version();") + version = self.cursor.fetchone() + print("✓ PostgreSQL version:", version[0]) + return True + except Exception as e: + print("✗ Connection test failed:", str(e)) + return False + + def write_data(self, name, email): + try: + self.cursor.execute(""" + CREATE TABLE IF NOT EXISTS demo_users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100), + email VARCHAR(100), + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP + ) + """) + self.cursor.execute(""" + INSERT INTO demo_users (name, email) VALUES (%s, %s) + """, (name, email)) + self.connection.commit() + print(f"✓ Data written: {name} ({email})") + except Exception as e: + print("✗ Write failed:", str(e)) + self.connection.rollback() + + def read_data(self): + try: + self.cursor.execute("SELECT id, name, email, created_at FROM demo_users ORDER BY id") + rows = self.cursor.fetchall() + print(f"✓ Retrieved {len(rows)} records:") + for row in rows: + print(f" ID: {row[0]}, Name: {row[1]}, Email: {row[2]}") + return rows + except Exception as e: + print("✗ Read failed:", str(e)) + return None + + def close(self): + self.cursor.close() + self.connection.close() + + # Usage + if __name__ == "__main__": + db = PostgreSQLDemo( + host="", + port=5432, + database="postgres", + user="postgres", + password="" + ) + + db.test_connection() + db.write_data("Alice Johnson", "alice@example.com") + db.write_data("Bob Wilson", "bob@example.com") + db.read_data() + db.close() + ``` + + + + diff --git a/src/content/docs/v0.6/demos/06-create-helm-chart.mdx b/src/content/docs/v0.6/demos/06-create-helm-chart.mdx new file mode 100644 index 0000000..0f3c882 --- /dev/null +++ b/src/content/docs/v0.6/demos/06-create-helm-chart.mdx @@ -0,0 +1,219 @@ +--- +title: Create Helm Chart +description: Packaging OpenBB into a Helm Chart and deploying it. +slug: v0.6/demos/06-create-helm-chart +--- + +import { Steps, Aside, Tabs, TabItem } from '@astrojs/starlight/components'; + +## About OpenBB + +The [**OpenBB Platform**](https://openbb.co/products/odp) is a unified financial data interface that simplifies API management for developers and analysts. + +**Key Benefits:** + +* **Single API Access** — Connect to multiple data providers without managing separate integrations +* **High-Quality Data** — Access reliable market data across stocks, crypto, forex, and more +* **Easy Integration** — Deploy as a containerized service for consistent environments + +## Overview + +This guide demonstrates how to containerize the OpenBB API Server using Helm charts, enabling you to deploy it consistently across Kubernetes clusters with standard deployment tools. + + + +## Prerequisites + +Before proceeding, ensure you have the following tools installed: + +* **Helm** 3.x or later — [Installation Guide](https://helm.sh/docs/intro/install) +* **Docker** — For building custom OpenBB images + +## Build Custom Docker Image + +Since the official image might be outdated, we recommend building your own Docker image from the latest source code. + + + 1. **Clone the OpenBB repository** + + Start by cloning the repository and checking out a stable version: + + ```bash + git clone https://github.com/OpenBB-finance/OpenBB.git + cd OpenBB + + # Switch to a specific version (e.g., v4.6.0) + git checkout v4.6.0 + ``` + + 2. **Build and push the Docker image** + + The OpenBB repository includes a pre-configured Dockerfile at `build/docker/platform.dockerfile`. Use this directly: + + ```bash + # Build the image with the version tag + docker build -f build/docker/platform.dockerfile -t /openbb:v4.6.0 . + ``` + + After building, push the image to your registry: + + ```bash + docker push /openbb:v4.6.0 + ``` + + + + +## Create and Package Helm Chart + + + 1. **Create a new Helm chart** + + ```bash + helm create openbb + ``` + + This generates a directory named `openbb` with the standard Helm chart structure, including templates for Deployment, Service, and ConfigMaps. + + 2. **Configure the Helm** + + Edit `openbb/Chart.yaml` to match your release metadata. You can add additional details like `icon`, `home`, and `maintainers` for better discoverability: + + ```yaml title="openbb/Chart.yaml" + apiVersion: v2 + name: openbb + description: A Helm chart for deploying the OpenBB Platform API + type: application + version: 0.1.0 + appVersion: "v4.6.0" + icon: https://raw.githubusercontent.com/OpenBB-finance/OpenBBTerminal/main/images/openbb_logo.png + home: https://openbb.co + sources: + - https://github.com/OpenBB-finance/OpenBB + maintainers: + - name: Your Name + email: your.email@example.com + ``` + + Edit `openbb/values.yaml` to configure the image and health check settings. Point the image to your custom registry image and configure probes to use `/docs` (since the root path `/` might return 404): + + ```yaml title="openbb/values.yaml" + image: + repository: /openbb + pullPolicy: IfNotPresent + tag: "v4.6.0" + + service: + type: NodePort + port: 8000 + targetPort: 8000 + nodePort: 30080 # Optional: Fixed NodePort for easier testing + + livenessProbe: + httpGet: + path: /docs # Use /docs instead of root path + port: http + + readinessProbe: + httpGet: + path: /docs # Use /docs instead of root path + port: http + ``` + + + + 3. **Package the Helm chart** + + ```bash + helm package openbb + ``` + + This creates a compressed archive: `openbb-0.1.0.tgz`. + + 4. **Push the chart to your registry** + + ```bash + helm push openbb-0.1.0.tgz oci:///charts --plain-http + ``` + + Replace `` with your actual registry address. + + Once uploaded, navigate to the [Applications Store](/v0.6/service/applications/04-store/) to deploy the chart with your custom image. + + +## Test with Python + +Once your OpenBB API Server is deployed and running, you can interact with it programmatically using Python. + +### Setup + + + +### API Interaction + +Use the following Python script to fetch data from your OpenBB API: + + + + ```python title="test_openbb_api.py" + import requests + + # Configuration + # Replace with your actual Node IP and the NodePort from values.yaml + BASE_URL = "http://:30080" + + def check_health(): + """Check if the OpenBB API server is reachable.""" + try: + response = requests.get(f"{BASE_URL}/docs") + if response.status_code == 200: + print("✓ API is online!") + return True + else: + print(f"✗ API returned status: {response.status_code}") + return False + except requests.exceptions.RequestException as e: + print(f"✗ Failed to connect: {e}") + return False + + def get_market_data(ticker="AAPL", provider="yfinance"): + """Fetch market data for a given ticker.""" + endpoint = f"{BASE_URL}/api/v1/equity/price/quote" + params = {"symbol": ticker, "provider": provider} + + try: + print(f"\nFetching {ticker} data from {provider}...") + response = requests.get(endpoint, params=params) + + if response.status_code == 200: + data = response.json() + print("✓ Data received:") + print(data) + else: + print(f"✗ Error {response.status_code}: {response.text}") + except Exception as e: + print(f"✗ Error: {e}") + + if __name__ == "__main__": + if check_health(): + get_market_data("AAPL") + # get_market_data("MSFT") + ``` + + + + diff --git a/src/content/docs/v0.6/demos/07-aidaptivcache-operator.mdx b/src/content/docs/v0.6/demos/07-aidaptivcache-operator.mdx new file mode 100644 index 0000000..dbba61e --- /dev/null +++ b/src/content/docs/v0.6/demos/07-aidaptivcache-operator.mdx @@ -0,0 +1,97 @@ +--- +title: aiDAPTIVCache Operator +description: Learn how to install the aiDAPTIVCache Operator for Phison + aiDAPTIVCache device support in Kubernetes +slug: v0.6/demos/07-aidaptivcache-operator +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +This guide demonstrates how to install the **aiDAPTIVCache Operator**, which is required for Kubernetes to recognize and utilize Phison aiDAPTIVCache devices (`phison.com/ai100`). + +## Prerequisites + +Before installing the operator, ensure you have: + +* Access to OtterScale platform with Application management permissions +* A Kubernetes cluster with Phison aiDAPTIVCache hardware installed +* Sufficient cluster resources for the operator deployment + + + +## Installation Steps + + + 1. **Navigate to Application Store** + + In the OtterScale web interface: + + * Go to **Application** → **Store** + * This opens the Helm chart repository + + 2. **Add the aiDAPTIVCache Operator Chart** + + Click **Import** button and provide the following information: + + * **Chart URL**: + ``` + https://github.com/otterscale/charts/releases/download/aidaptivcache-operator-0.4.3/aidaptivcache-operator-0.4.3.tgz + ``` + + Click **Confirm** to import the chart into your store. + + 3. **Install the Operator** + + * Find `aidaptivcache-inference` in the Store list + * Click the **Install** button + * In the Install Release dialog: + * Enter a **Name** for your deployment (e.g., `aidaptivcache-operator`) + * Enter a **Namespace** (e.g., `aidaptivcache-operator`) + * Click **View/Edit** button to open the configuration editor + + + + +## What the Operator Does + +The aiDAPTIVCache Operator performs the following functions: + +* **Resource Manager**: Manage aiDAPTIVCache devices +* **Device Discovery**: Automatically detects Phison aiDAPTIVCache devices on cluster nodes +* **Device Plugin**: Registers aiDAPTIVCache devices as Kubernetes resources, enabling targeted workload scheduling +* **Exporter**: Exposes metrics and cache information via an NVMe exporter + + + +## Troubleshooting + +### Operator Pod Not Starting + +If the operator pod fails to start: + +1. **Check pod logs via OtterScale UI**: + * Navigate to **Application** → **Workloads** + * Find the `aidaptivcache-operator` workload + * Click on the pod name to view details + * Click the **Logs** tab to view container logs + +2. Verify node labels and taints allow the operator to schedule + +3. Check that the cluster has sufficient resources + +## Next Steps + +After successfully installing the aiDAPTIVCache Operator, you can: + +* Deploy fine-tuning jobs that utilize aiDAPTIVCache devices (see [Deploy aiDAPTIVCache Finetune](/v0.6/demos/08-aidaptivcache-finetune)) +* Deploy inference services with aiDAPTIVCache acceleration (see [Deploy aiDAPTIVCache Inference](/v0.6/demos/09-aidaptivcache-inference)) + + diff --git a/src/content/docs/v0.6/demos/08-aidaptivcache-finetune.mdx b/src/content/docs/v0.6/demos/08-aidaptivcache-finetune.mdx new file mode 100644 index 0000000..e3ef0e5 --- /dev/null +++ b/src/content/docs/v0.6/demos/08-aidaptivcache-finetune.mdx @@ -0,0 +1,527 @@ +--- +title: aiDAPTIVCache Finetune +description: Fine-tune LLM models using aiDAPTIVCache in OtterScale cluster. +slug: v0.6/demos/08-aidaptivcache-finetune +--- + +import { Steps, Aside, LinkCard } from '@astrojs/starlight/components'; + +This guide demonstrates how to fine-tune Large Language Models (LLMs) using aiDAPTIVCache within the OtterScale cluster. + +## Overview + +aiDAPTIVCache finetune provides efficient model fine-tuning capabilities with support for LoRA, full parameter training, and other training modes. Key features: + +* Distributed training support (Multi-GPU) +* LoRA fine-tuning support +* Customizable training datasets +* Flexible resource allocation (vGPU, memory) + +## Prerequisites + + + +## Prepare Model and Data + +You need to make your model files accessible to the fine-tuning job. There are two methods to achieve this, both configured via the `prescript` field in the Helm chart values. + +### Method 1: Using NFS Storage (Recommended) + +This method uses OtterScale's NFS File System to store and access model files. + + + 1. **Create NFS File System in OtterScale**: + + Navigate to the Storage section: + + * Go to **Storage** → **File System** + * Create a new NFS File System or use an existing one + * Record the NFS server address (format: `10.102.197.0:/volumes/_nogroup/xxx`) + + 2. **Upload your model files to NFS**: + + Mount the NFS on a machine that has access and copy your model files: + + ```bash + # Mount NFS on a node with access + mkdir -p /mnt/nfs + mount -t nfs4 10.102.197.0:/volumes/_nogroup/xxx /mnt/nfs + + # Copy your model files to NFS + cp -r /path/to/your-model /mnt/nfs/models/ + + # Verify files + ls /mnt/nfs/models/ + ``` + + 3. **Configure prescript to mount NFS**: + + In the Helm chart values, you'll configure the `prescript` to mount this NFS (see NFS Mount Configuration section below). + + + + +### Method 2: Using SCP to Copy Models + +This method copies model files directly into the pod using SCP during initialization. + + + 1. **Prepare a remote server with model files**: + + Ensure you have a remote server (accessible from the cluster) that contains your model files. + + 2. **Configure prescript with SCP**: + + Use the following prescript template in your Helm chart values: + + ```yaml + prescript: | + # Install required tools + apt-get update && apt-get install -y sshpass + + # Create model directory + mkdir -p /mnt/data/models + + # Copy model from remote server using SCP + echo "Copying model from remote server..." + sshpass -p 'your-password' scp -o StrictHostKeyChecking=no -r \ + user@remote-host:/path/to/your-model /mnt/data/models/ + + if [ $? -eq 0 ]; then + echo "Model copied successfully!" + ls -lh /mnt/data/models/ + else + echo "Failed to copy model. Exiting..." + exit 1 + fi + ``` + + You still need an NFS mount for storing training outputs. Add NFS mount commands after the SCP section: + + ```yaml + postscript: | + # Install tools + apt-get update && apt-get install -y sshpass nfs-common + + # Copy model via SCP + mkdir -p /mnt/data/models + echo "Copying model from remote server..." + sshpass -p 'your-password' scp -o StrictHostKeyChecking=no -r \ + user@remote-host:/path/to/model /mnt/data/models/ + + # Mount NFS for output storage + mkdir -p /mnt/data/output + echo "Mounting NFS for output storage..." + mount -t nfs4 -o nfsvers=4.1 10.102.197.0:/volumes/_nogroup/output-path /mnt/data/output + + echo "Setup complete!" + ``` + + +## Install Helm Chart + + + 1. **Navigate to Application Store**: + + In the OtterScale web interface: + + * Go to **Application** → **Store** + * This opens the Helm chart repository + + 2. **Import Helm Chart**: + + * Click the **Import** button at the top of the page + * Enter the Helm Chart URL in the dialog: + ``` + https://github.com/otterscale/charts/releases/download/aidaptivcache-finetune-0.1.3/aidaptivcache-finetune-0.1.3.tgz + ``` + * Click **Confirm** to import + + 3. **Install Chart**: + + * Find `aidaptivcache-finetune` in the Store list + * Click the **Install** button + * In the Install Release dialog: + * Enter a **Name** for your deployment (e.g., `ft1`) + * Enter a **Namespace** (e.g., `ft1`) + * Click **View/Edit** button to open the configuration editor + * Edit the `values.yaml` to configure your fine-tuning job (see Configuration Guide below) + * Click **Confirm** to start the installation + + + + +## Configuration Guide + +Now that you've opened the configuration editor via **View/Edit**, you need to configure the following fields in the `values.yaml`. + +### Basic Configuration + +#### Image Settings + +```yaml +image: + repository: docker.io/library/aidaptiv + tag: vNXUN_2_05BA0 + pullPolicy: IfNotPresent +``` + +* `repository`: Container image address +* `tag`: Image version tag +* `pullPolicy`: Image pull policy (IfNotPresent/Always/Never) + +#### Job Configuration + +```yaml +job: + name: finetune-job + backoffLimit: 1 + restartPolicy: Never + ttlSecondsAfterFinished: 60 +``` + +* `name`: Kubernetes Job name +* `backoffLimit`: Number of retry attempts on failure +* `restartPolicy`: Restart policy (Never/OnFailure) +* `ttlSecondsAfterFinished`: Time to retain Job after completion (seconds) + +### Training Configuration + +The training configuration is divided into three main sections: **expConfig**, **envConfig**, and **trainDataConfig**. + +#### 1. Experiment Configuration (expConfig) + +The `expConfig` section controls GPU resources, distributed training settings, and training hyperparameters. + +**Process Settings**: + +```yaml +expConfig: + processSettings: + numGpus: 1 # Number of GPUs to use + specifyGpus: null # Specific GPU IDs (e.g., "0,1,2,3") + masterPort: 8299 # Master port for distributed training + multiNodeSettings: + enable: false # Enable multi-node training + masterAddr: "127.0.0.1" # Master node address +``` + +**Run Settings**: + +```yaml +expConfig: + runSettings: + taskType: "text-generation" # Task type + taskMode: "train" # Mode: train/eval/inference + perDeviceTrainBatchSize: 4 # Batch size per device + perUpdateTotalBatchSize: 16 # Total batch size (gradient accumulation) + numTrainEpochs: 1 # Number of training epochs + maxIter: 12 # Maximum iterations + maxSeqLen: 2048 # Maximum sequence length + triton: true # Enable Triton optimization + precisionMode: 1 # Precision mode (0: FP32, 1: Mixed) +``` + +**LoRA Settings**: + +```yaml +expConfig: + runSettings: + lora: + enableLora: false # Enable LoRA fine-tuning + loraRank: 8 # LoRA rank + loraAlpha: 16 # LoRA alpha parameter + loraTaskType: "CAUSAL_LM" # Task type for LoRA + loraTargetModules: null # Target modules (null for auto) +``` + +**Learning Rate and Optimizer**: + +```yaml +expConfig: + runSettings: + lrScheduler: + mode: 1 # LR scheduler mode + learningRate: 0.000007 # Learning rate + + optimizer: + beta1: 0.9 # Adam beta1 + beta2: 0.95 # Adam beta2 + eps: 0.00000001 # Epsilon + weightDecay: 0.01 # Weight decay +``` + +#### 2. Environment Configuration (envConfig) + +The `envConfig` section defines all file paths used during training. + +```yaml +envConfig: + pathSettings: + modelNameOrPath: "/mnt/data/models/TinyLlama-1.1B-Chat-v1.0" # Model input path + nvmePath: "/mnt/nvme0" # NVMe cache path + outputDir: "/mnt/data/output" # Training output path + trainDataPath: # Training data config + - /config/train_data/QA_dataset_config.yaml + logName: "output.log" # Log file name +``` + +**Key Path Explanations**: + +* **`modelNameOrPath`** (Required): + * Path to the pre-trained model + * Must point to where NFS mounts the model via prescript + * Example: `/mnt/data/models/TinyLlama-1.1B-Chat-v1.0` + +* **`outputDir`** (Required): + * Where fine-tuned model weights will be saved + * Must be on NFS mount for persistence: `/mnt/data/output` + +* **`nvmePath`** (Required): + * NVMe device path for temporary storage and cache + * Typically uses node's NVMe: `/mnt/nvme0` + +* **`trainDataPath`**: + * Path to training data configuration file(s) + * Supports multiple datasets (array format) + + + +#### 3. Training Data Configuration (trainDataConfig) + +The `trainDataConfig` section defines the dataset format and prompts. + +```yaml +trainDataConfig: | + instruction-dataset: + data_path: "HuggingFaceH4/instruction-dataset" # HuggingFace dataset or local path + strategy: "QA" # Data strategy (QA/Chat) + system_prompt: "A chat between a curious user and an artificial intelligence assistant." + user_prompt: "{question}" # User prompt template + question_key: "prompt" # Column name for questions + answer_key: "completion" # Column name for answers + exp_type: train # Experiment type: train/eval/inference + label_key: "completion" # Label column (same as answer_key) +``` + +**Configuration Fields**: + +* **`data_path`**: HuggingFace dataset name or local file path +* **`strategy`**: Data processing strategy (QA/Chat/Custom) +* **`system_prompt`**: System instruction for the model +* **`user_prompt`**: Template for user questions (use `{question}` placeholder) +* **`question_key`**: Dataset column containing questions +* **`answer_key`**: Dataset column containing answers +* **`exp_type`**: Must be `train` for training +* **`label_key`**: Column used as training labels (typically same as `answer_key`) + + + +### Resource Configuration + +```yaml +resources: + limits: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 + requests: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 +``` + +* `otterscale.com/vgpu`: vGPU count +* `otterscale.com/vgpumem-percentage`: vGPU memory percentage (0-100) +* `phison.com/ai100`: Phison aiDAPTIVCache accelerator count + +### NFS Mount Configuration (Required) + +To access your model files and save training outputs, you need to configure the `prescript` to mount your NFS storage. + +```yaml +prescript: | + apt install -y nfs-common + echo "Starting NFS mount process..." + mkdir -p /mnt/data + TIMEOUT=300 + ELAPSED=0 + while [ $ELAPSED -lt $TIMEOUT ]; do + echo "Attempting to mount NFS to /mnt/data" + mount -t nfs4 -o nfsvers=4.1 -v 10.102.197.0:/volumes/_nogroup/your-nfs-path /mnt/data + if mountpoint -q /mnt/data; then + echo "NFS mount successful!" + break + else + echo "Mount failed, retrying in 5 seconds... (${ELAPSED}s/${TIMEOUT}s)" + sleep 5 + ELAPSED=$((ELAPSED + 5)) + fi + done + if [ $ELAPSED -ge $TIMEOUT ]; then + echo "NFS mount timeout after ${TIMEOUT} seconds. Exiting..." + exit 1 + fi +``` + +**Configuration Details**: + +* Replace `10.102.197.0:/volumes/_nogroup/your-nfs-path` with your actual NFS server address from the File System page +* The script installs `nfs-common` package (required for NFS mounting) +* Implements retry logic with a 5-minute timeout +* Mounts NFS to `/mnt/data` which is used in the path configuration + +**Optional Post-execution Script**: + +```yaml +postscript: | + echo "Training job completed" + echo "Model saved to: $outputDir" +``` + + + +## Complete Configuration Example + +```yaml +image: + repository: docker.io/library/aidaptiv + tag: vNXUN_2_05BA0 + pullPolicy: IfNotPresent + +job: + name: finetune-llama-job + backoffLimit: 1 + restartPolicy: Never + ttlSecondsAfterFinished: 60 + +securityContext: + privileged: true + +# NFS Mount Script (Required) +prescript: | + apt install -y nfs-common + echo "Starting NFS mount process..." + mkdir -p /mnt/data + TIMEOUT=300 + ELAPSED=0 + while [ $ELAPSED -lt $TIMEOUT ]; do + echo "Attempting to mount NFS to /mnt/data" + mount -t nfs4 -o nfsvers=4.1 -v 10.102.197.0:/volumes/_nogroup/my-nfs-path /mnt/data + if mountpoint -q /mnt/data; then + echo "NFS mount successful!" + break + else + echo "Mount failed, retrying in 5 seconds... (${ELAPSED}s/${TIMEOUT}s)" + sleep 5 + ELAPSED=$((ELAPSED + 5)) + fi + done + if [ $ELAPSED -ge $TIMEOUT ]; then + echo "NFS mount timeout after ${TIMEOUT} seconds. Exiting..." + exit 1 + fi + +envConfig: + pathSettings: + modelNameOrPath: "/mnt/data/models/TinyLlama-1.1B-Chat-v1.0" + nvmePath: "/mnt/nvme0" + outputDir: "/mnt/data/output" + trainDataPath: + - /config/train_data/QA_dataset_config.yaml + logName: "finetune_output.log" + +expConfig: + processSettings: + numGpus: 1 + masterPort: 8299 + multiNodeSettings: + enable: false + + runSettings: + taskType: "text-generation" + taskMode: "train" + perDeviceTrainBatchSize: 4 + perUpdateTotalBatchSize: 16 + numTrainEpochs: 1 + maxIter: 100 + maxSeqLen: 2048 + triton: true + + lrScheduler: + mode: 1 + learningRate: 0.000007 + + lora: + enableLora: true + loraRank: 8 + loraAlpha: 16 + loraTaskType: "CAUSAL_LM" + +trainDataConfig: | + instruction-dataset: + data_path: "HuggingFaceH4/instruction-dataset" + strategy: "QA" + system_prompt: "A chat between a curious user and an artificial intelligence assistant." + user_prompt: "{question}" + question_key: "prompt" + answer_key: "completion" + exp_type: train + label_key: "completion" + +resources: + limits: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 + requests: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 +``` + +## Monitor Training Progress + + + 1. **Check Job Status**: + + Navigate to the Jobs page: + + * Go to **Applications** → **Jobs** + * Find your fine-tune job under your namespace and check its status. + + 2. **Retrieve Output Model**: + + After training completes, the fine-tuned model will be saved in the path specified by `outputDir`: + + ```bash + # Access via the same NFS mount used during training + # Mount the NFS on your local machine or a node + mount -t nfs4 10.102.197.0:/volumes/_nogroup/your-nfs-path /mnt/nfs + ls /mnt/nfs/output/ + ``` + + +## Related Resources + + + + diff --git a/src/content/docs/v0.6/demos/09-aidaptivcache-inference.mdx b/src/content/docs/v0.6/demos/09-aidaptivcache-inference.mdx new file mode 100644 index 0000000..f6f90f7 --- /dev/null +++ b/src/content/docs/v0.6/demos/09-aidaptivcache-inference.mdx @@ -0,0 +1,596 @@ +--- +title: aiDAPTIVCache Inference +description: Deploy high-performance LLM inference service using aiDAPTIV Cache. +slug: v0.6/demos/09-aidaptivcache-inference +--- + +import { Steps, Aside, LinkCard } from '@astrojs/starlight/components'; + +This guide demonstrates how to deploy a high-performance LLM inference service using aiDAPTIV Cache within the OtterScale cluster. + +## Overview + +aiDAPTIVCache Inference provides high-performance LLM inference service based on vLLM, supporting: + +* High-throughput serving +* Tensor parallelism (Multi-GPU) +* KV Cache offloading +* Dynamic LoRA loading +* OpenAI-compatible API + +## Prerequisites + + + +## Prepare Model + +You need to make your model files accessible to the inference service. There are two methods to achieve this, both configured via the `prescript` field in the Helm chart values. + +### Method 1: Using NFS Storage (Recommended) + +This method uses OtterScale's NFS File System to store and access model files. + + + 1. **Create NFS File System in OtterScale**: + + Navigate to the Storage section: + + * Go to **Storage** → **File System** + * Create a new NFS File System or use an existing one + * Record the NFS server address (format: `10.102.197.0:/volumes/_nogroup/xxx`) + + 2. **Upload your model files to NFS**: + + Mount the NFS on a machine that has access and copy your model files: + + ```bash + # Mount NFS on a node with access + mkdir -p /mnt/nfs + mount -t nfs4 10.102.197.0:/volumes/_nogroup/xxx /mnt/nfs + + # Copy your model files to NFS + cp -r /path/to/your-model /mnt/nfs/models/ + + # Verify files + ls /mnt/nfs/models/ + ``` + + 3. **Configure prescript to mount NFS**: + + In the Helm chart values, you'll configure the `prescript` to mount this NFS (see NFS Mount Configuration section below). + + + + +### Method 2: Using SCP to Copy Models + +This method copies model files directly into the pod using SCP during initialization. + + + 1. **Prepare a remote server with model files**: + + Ensure you have a remote server (accessible from the cluster) that contains your model files. + + 2. **Configure prescript with SCP**: + + Use the following prescript template in your Helm chart values: + + ```yaml + prescript: | + # Install required tools + apt-get update && apt-get install -y sshpass + + # Create model directory + mkdir -p /mnt/data/models + + # Copy model from remote server using SCP + echo "Copying model from remote server..." + sshpass -p 'your-password' scp -o StrictHostKeyChecking=no -r \ + user@remote-host:/path/to/your-model /mnt/data/models/ + + if [ $? -eq 0 ]; then + echo "Model copied successfully!" + ls -lh /mnt/data/models/ + else + echo "Failed to copy model. Exiting..." + exit 1 + fi + ``` + + +## Install Helm Chart + + + 1. **Navigate to Application Store**: + + In the OtterScale web interface: + + * Go to **Application** → **Store** + * This opens the Helm chart repository + + 2. **Import Helm Chart**: + + * Click the **Import** button at the top of the page + * Enter the Helm Chart URL in the dialog: + ``` + https://github.com/otterscale/charts/releases/download/aidaptivcache-inference-0.1.3/aidaptivcache-inference-0.1.3.tgz + ``` + * Click **Confirm** to import + + 3. **Install Chart**: + + * Find `aidaptivcache-inference` in the Store list + * Click the **Install** button + * In the Install Release dialog: + * Enter a **Name** for your deployment (e.g., `llama-inference`) + * Enter a **Namespace** (e.g., `inference`) + * Click **View/Edit** button to open the configuration editor + * Edit the `values.yaml` to configure your inference service (see Configuration Guide below) + * Click **Confirm** to start the installation + + + + +## Configuration Guide + +Now that you've opened the configuration editor via **View/Edit**, you need to configure the following fields in the `values.yaml`. + +### Basic Configuration + +#### Image Settings + +```yaml +image: + repository: docker.io/library/aidaptiv + tag: vNXUN_3_03AA + pullPolicy: IfNotPresent +``` + +* `repository`: Container image address +* `tag`: Image version tag +* `pullPolicy`: Image pull policy (IfNotPresent/Always/Never) + +#### Deployment Configuration + +```yaml +deployment: + name: vllm-api + replicas: 1 +``` + +* `name`: Kubernetes Deployment name +* `replicas`: Number of Pod replicas (typically 1 due to limited GPU resources) + +### vLLM Configuration + +#### Environment Variables + +```yaml +vllm: + env: + vllmUseV1: "1" + vllmWorkerMultiprocMethod: "spawn" + tiktokenEncodingsBase: "" +``` + +* `vllmUseV1`: Use vLLM v1 API +* `vllmWorkerMultiprocMethod`: Multi-process startup method (spawn/fork) + +#### Command Line Arguments (Important) + +```yaml +vllm: + args: + model: /mnt/data/model/Meta-Llama-3.1-8B-Instruct/ + nvmePath: /mnt/nvme0 + port: 8000 + gpuMemoryUtilization: 0.9 + maxModelLen: 32768 + tensorParallelSize: 4 + dramKvOffloadGb: 0 + ssdKvOffloadGb: 500 + noResumeKvCache: true + disableGpuReuse: false + enableChunkedPrefill: true +``` + +**Key Parameter Explanations**: + +* **`model`** (required): + * Model input path + * Must correspond to the container mount path + * Example: `/mnt/data/model/Meta-Llama-3.1-8B-Instruct/` + * **Note**: This is the container path, not the NFS server path! + +* **`nvmePath`** (required): + * NVMe cache path + * Used for KV Cache offloading + * Typically uses node NVMe: `/mnt/nvme0` + +* **`port`**: + * vLLM API service port + * Default 8000 + +* **`gpuMemoryUtilization`**: + * GPU memory utilization ratio (0.0-1.0) + * Recommended 0.8-0.9 to reserve some memory buffer + +* **`maxModelLen`**: + * Maximum sequence length + * Adjust based on model and GPU memory + +* **`tensorParallelSize`**: + * Number of GPUs for tensor parallelism + * Must match the `otterscale.com/vgpu` value in resource configuration + * Example: If `tensorParallelSize: 4`, you must set `otterscale.com/vgpu: 4` + +* **`dramKvOffloadGb`**: + * KV Cache offload to DRAM capacity (GB) + * Set to 0 to disable DRAM offload + +* **`ssdKvOffloadGb`**: + * KV Cache offload to SSD capacity (GB) + * Used with `nvmePath` + +* **`enableChunkedPrefill`**: + * Enable chunked prefill for better long-text performance + +**Optional Parameters** (commented by default): + +```yaml +# disableLongToken: true # Disable long token support +# resumeKvCache: true # Resume KV Cache +# cleanObsoleteKvCache: true # Clean obsolete KV Cache +# enablePrefixCaching: true # Enable prefix caching +# enforceEager: true # Force eager mode +``` + +#### LoRA Configuration + +```yaml +vllm: + lora: + enable: false + modules: "" + maxRank: 32 +``` + +**Enable LoRA Example**: + +```yaml +vllm: + lora: + enable: true + modules: "lora=/mnt/data/lora-adapters/llama3.1-8B-lora/" + maxRank: 32 +``` + +* `enable`: Set to `true` to enable LoRA +* `modules`: LoRA adapter path, format: `lora=/path/to/adapter/` +* `maxRank`: Maximum LoRA rank + +**Note**: All three parameters must be configured together to enable LoRA. + +### NFS Mount Configuration (For Method 1) + +If you're using NFS storage to access your model files, configure the `prescript` to mount your NFS storage. + +```yaml +prescript: | + apt install -y nfs-common + echo "Starting NFS mount process..." + mkdir -p /mnt/data + TIMEOUT=300 + ELAPSED=0 + while [ $ELAPSED -lt $TIMEOUT ]; do + echo "Attempting to mount NFS to /mnt/data" + mount -t nfs4 -o nfsvers=4.1 -v 10.102.197.0:/volumes/_nogroup/your-nfs-path /mnt/data + if mountpoint -q /mnt/data; then + echo "NFS mount successful!" + break + else + echo "Mount failed, retrying in 5 seconds... (${ELAPSED}s/${TIMEOUT}s)" + sleep 5 + ELAPSED=$((ELAPSED + 5)) + fi + done + if [ $ELAPSED -ge $TIMEOUT ]; then + echo "NFS mount timeout after ${TIMEOUT} seconds. Exiting..." + exit 1 + fi +``` + +**Configuration Details**: + +* Replace `10.102.197.0:/volumes/_nogroup/your-nfs-path` with your actual NFS server address from the File System page +* The script installs `nfs-common` package (required for NFS mounting) +* Implements retry logic with a 5-minute timeout +* Mounts NFS to `/mnt/data` which is used in the model path configuration + + + +### Service Configuration + +```yaml +service: + type: NodePort + port: 8000 + targetPort: 8000 + # nodePort: 30299 +``` + +* `type`: Service type (NodePort/ClusterIP/LoadBalancer) +* `port`: Service external port +* `targetPort`: Container internal port +* `nodePort`: (Optional) Specify a fixed NodePort + +### Volume Configuration + +```yaml +volumes: + dshm: + enabled: true + sizeLimit: 30Gi +``` + +* **`dshm`**: + * `enabled`: Enable /dev/shm (shared memory) + * `sizeLimit`: Shared memory size (required for vLLM) + + + +### Resource Configuration + +```yaml +resources: + requests: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 + limits: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 60 + phison.com/ai100: 1 +``` + +* **`otterscale.com/vgpu`**: vGPU count + * Must match `vllm.args.tensorParallelSize` for multi-GPU deployment + * Example: For 4-GPU tensor parallelism, set both `tensorParallelSize: 4` and `otterscale.com/vgpu: 4` +* **`otterscale.com/vgpumem-percentage`**: vGPU memory percentage (0-100) +* **`otterscale.com/vgpumem`**: Alternative to percentage, directly specify memory amount (MB) +* **`phison.com/ai100`**: Phison aiDAPTIVCache accelerator count + + + +## Complete Configuration Examples + +### Example: Basic Inference Service + +```yaml +image: + repository: docker.io/library/aidaptiv + tag: vNXUN_3_03AA + pullPolicy: IfNotPresent + +deployment: + name: llama3-inference + replicas: 1 + +vllm: + env: + vllmUseV1: "1" + vllmWorkerMultiprocMethod: "spawn" + + args: + model: /mnt/data/model/Meta-Llama-3.1-8B-Instruct/ + nvmePath: /mnt/nvme0 + port: 8000 + gpuMemoryUtilization: 0.9 + maxModelLen: 32768 + tensorParallelSize: 1 + ssdKvOffloadGb: 500 + enableChunkedPrefill: true + + lora: + enable: false + +service: + type: NodePort + port: 8000 + targetPort: 8000 + +securityContext: + privileged: true + +# NFS Mount Script +prescript: | + apt install -y nfs-common + echo "Starting NFS mount process..." + mkdir -p /mnt/data + TIMEOUT=300 + ELAPSED=0 + while [ $ELAPSED -lt $TIMEOUT ]; do + echo "Attempting to mount NFS to /mnt/data" + mount -t nfs4 -o nfsvers=4.1 -v 10.102.197.0:/volumes/_nogroup/models /mnt/data + if mountpoint -q /mnt/data; then + echo "NFS mount successful!" + break + else + echo "Mount failed, retrying in 5 seconds... (${ELAPSED}s/${TIMEOUT}s)" + sleep 5 + ELAPSED=$((ELAPSED + 5)) + fi + done + if [ $ELAPSED -ge $TIMEOUT ]; then + echo "NFS mount timeout after ${TIMEOUT} seconds. Exiting..." + exit 1 + fi + +volumes: + dshm: + enabled: true + sizeLimit: 30Gi + +resources: + requests: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 80 + phison.com/ai100: 1 + limits: + otterscale.com/vgpu: 1 + otterscale.com/vgpumem-percentage: 80 + phison.com/ai100: 1 +``` + +## Using the Inference Service + + + 1. **Get Service Address**: + + * Go to **Application** → **Services** + * Find your inference service and note the NodePort. + + 2. **Test API Connection**: + + ```bash + # Get Node IP + NODE_IP="your-node-ip" + NODE_PORT="your-node-port" + + # Test health check + curl http://${NODE_IP}:${NODE_PORT}/health + ``` + + 3. **Use OpenAI-Compatible API**: + + ```bash + curl http://${NODE_IP}:${NODE_PORT}/v1/completions \ + -H "Content-Type: application/json" \ + -d '{ + "model": "Meta-Llama-3.1-8B-Instruct", + "prompt": "What is the capital of France?", + "max_tokens": 100, + "temperature": 0.7 + }' + ``` + + 4. **Use Chat Completions API**: + + ```bash + curl http://${NODE_IP}:${NODE_PORT}/v1/chat/completions \ + -H "Content-Type: application/json" \ + -d '{ + "model": "Meta-Llama-3.1-8B-Instruct", + "messages": [ + {"role": "system", "content": "You are a helpful assistant."}, + {"role": "user", "content": "What is machine learning?"} + ], + "max_tokens": 200 + }' + ``` + + 5. **Python Client Example**: + + ```python + from openai import OpenAI + + # Connect to vLLM service + client = OpenAI( + base_url=f"http://{NODE_IP}:{NODE_PORT}/v1", + api_key="dummy" # vLLM doesn't require a real API key + ) + + # Perform inference + response = client.chat.completions.create( + model="Meta-Llama-3.1-8B-Instruct", + messages=[ + {"role": "user", "content": "Explain quantum computing in simple terms"} + ], + max_tokens=150, + temperature=0.8 + ) + + print(response.choices[0].message.content) + ``` + + +## Monitoring and Debugging + + + 1. **Check Deployment Status**: + + Navigate to the Workloads page: + + * Go to **Application** → **Workloads** + * Find your deployment + + 2. **View Pod Logs**: + + * Click on the Pod corresponding to the Deployment + * View the **Logs** tab + * Monitor model loading, inference requests, etc. + + 3. **Check Resource Usage**: + + * View GPU and memory usage in the Pod details page + * Check for OOM (Out of Memory) errors + + +## Performance Tuning Recommendations + +### Memory Optimization + +* **Small models** (\< 7B): + * `gpuMemoryUtilization: 0.9` + * `ssdKvOffloadGb: 0` (no offload needed) + +* **Medium models** (7B-13B): + * `gpuMemoryUtilization: 0.85` + * `ssdKvOffloadGb: 200-500` + +* **Large models** (> 13B): + * `gpuMemoryUtilization: 0.8` + * `ssdKvOffloadGb: 500-1000` + * Consider multi-GPU: `tensorParallelSize: 2-4` with `otterscale.com/vgpu: 2-4` + +### Latency vs Throughput Trade-off + +* **Low latency priority**: + ```yaml + maxModelLen: 8192 # Shorter sequences + enableChunkedPrefill: false + dramKvOffloadGb: 0 + ssdKvOffloadGb: 0 + ``` + +* **High throughput priority**: + ```yaml + maxModelLen: 32768 # Longer sequences + enableChunkedPrefill: true + enablePrefixCaching: true + ssdKvOffloadGb: 500 + ``` + +## Related Resources + + + + + + diff --git a/src/content/docs/v0.6/getting-started/01-prerequisites.mdx b/src/content/docs/v0.6/getting-started/01-prerequisites.mdx new file mode 100644 index 0000000..1840d04 --- /dev/null +++ b/src/content/docs/v0.6/getting-started/01-prerequisites.mdx @@ -0,0 +1,222 @@ +--- +title: Prerequisites +description: Hardware and network requirements for running OtterScale. +slug: v0.6/getting-started/01-prerequisites +--- + +import { Card, CardGrid, Aside, Badge } from '@astrojs/starlight/components'; + + + +## OtterScale Control Node + +The Control Node serves as the central management hub for your OtterScale deployment. Before proceeding with installation, verify that your designated control node machine meets the following requirements. + +### Operating System + +Install Ubuntu 24.04 LTS on your control node. If your machine runs a different OS, perform a clean installation of Ubuntu 24.04 LTS first. + +| Component | Requirement | +| :-------- | :------------------------------ | +| **OS** | **Ubuntu 24.04 LTS** (Required) | + +### Hardware Requirements + +Ensure your control node hardware meets or exceeds these minimum specifications. Higher resources will improve performance and stability. + +| Resource | Minimum Requirement | +| :------------- | :----------------------- | +| **CPU** | 8 Cores | +| **Memory** | 16 GB RAM | +| **Disk Space** | 100 GB available storage | + +### Network Configuration + +The OtterScale installer will automatically configure networking, but confirm the following prerequisites: + +* **Connectivity:** Ensure at least one network interface has external internet access. +* **Bridge Configuration:** The installer checks for a network bridge named `br-otters`. + * If it exists, the installer will use it. + * If not, you will be prompted to select an existing bridge or allow the installer to create one automatically. + +*** + + + +## K8S Nodes (Server Nodes) + +K8S nodes are the servers that will form your Kubernetes cluster. These nodes must be commissioned via the OtterScale web interface after creating a Scope, and then provisioned. Ensure each server host is configured as follows before commissioning. + +### BIOS Configuration + +Access your server's BIOS settings (typically by pressing F2, F10, or Del during boot) and configure the following settings: + +1. **BMC Settings:** + * **BMC Static IP:** Assign a static IP address to the BMC for reliable remote management access. + * **Boot Order:** Enable network boot via BMC and set it as the highest priority in the boot order. +2. **Boot Options:** + * **Boot Mode:** Set to **UEFI** (recommended for modern deployments). + * Avoid Legacy mode, as it limits drive size to 2TB, lacks security features, and does not support GPT partitioning. + * **Fast Boot:** Disable Fast Boot to allow complete hardware initialization. +3. **CPU Virtualization:** + * **Intel CPUs:** Enable `VMX`, `VT-d`, or `VT-x`. + * **AMD CPUs:** Enable `SVM` or `AMD-V`. + +### Hardware Requirements + +Verify that each K8S node meets these storage requirements for optimal performance. + +| Resource | Minimum Requirement | +| :---------- | :-------------------------------------------------- | +| **Storage** | At least **2 Block disks** or **2 Physical drives** | + +*** + +## Network IP Requirement + +Plan your network IP allocation carefully to prevent conflicts. Ensure your subnet has sufficient available IP addresses for the OtterScale deployment. + +| Usage | Quantity | Description | +| :---------------------- | :------- | :----------------------------------------------------------------------------- | +| **OS System** | 1 | Reserved for the ingress controller. | +| **OtterScale** | 1 | Required from user. A second IP in the same subnet for OtterScale services. | +| **Juju Controller** | 1 | Used by the Canonical Juju controller. | +| **MAAS (DHCP)** | 2 | Used for MAAS dynamic IP allocation. | +| **Kubernetes and Ceph** | 9 + N | Used for Kubernetes and Ceph services (N = number of K8S nodes). | + +**Total Estimated IPs:** 14 + N (where N is the number of K8S nodes) + +*** + + + +## Firewall Configuration + +The OtterScale installation process requires outbound internet access to various external services. Configure your firewall to allow outbound connections to the following domains and ports on all nodes (Control Node and K8S nodes). + +
+ Canonical + + | Domains | Port(s) | + | :------------------------------ | :-------------- | + | `api.charmhub.io` | TCP 443 (HTTPS) | + | `api.jujucharms.com` | TCP 443 (HTTPS) | + | `changelogs.ubuntu.com` | TCP 443 (HTTPS) | + | `charmhub.io` | TCP 443 (HTTPS) | + | `cloud-images.ubuntu.com` | TCP 443 (HTTPS) | + | `maas.ubuntu.com` | TCP 443 (HTTPS) | + | `images.maas.io` | TCP 443 (HTTPS) | + | `juju.is` | TCP 443 (HTTPS) | + | `jaas.ai` | TCP 443 (HTTPS) | + | `streams.canonical.com` | TCP 443 (HTTPS) | + | `objects.githubusercontent.com` | TCP 443 (HTTPS) | + | `contracts.canonical.com` | TCP 443 (HTTPS) | + | `images.maas.io` | TCP 80 (HTTP) | +
+ +
+ Snap Package + + | Domains | Port(s) | + | :----------------------------------------- | :-------------- | + | `snapcraft.io` | TCP 443 (HTTPS) | + | `api.snapcraft.io` | TCP 443 (HTTPS) | + | `storage.snapcraftcontent.com` | TCP 443 (HTTPS) | + | `canonical-lgw01.cdn.snapcraftcontent.com` | TCP 443 (HTTPS) | + | `canonical-lcy01.cdn.snapcraftcontent.com` | TCP 443 (HTTPS) | + | `canonical-lcy02.cdn.snapcraftcontent.com` | TCP 443 (HTTPS) | + | `canonical-bos01.cdn.snapcraftcontent.com` | TCP 443 (HTTPS) | +
+ +
+ Ubuntu Repositories + + | Domains | Port(s) | + | :---------------------- | :-------------------------------- | + | `tw.archive.ubuntu.com` | TCP 443 (HTTPS)
TCP 80 (HTTP) | + | `archive.ubuntu.com` | TCP 443 (HTTPS)
TCP 80 (HTTP) | + | `ports.ubuntu.com` | TCP 443 (HTTPS)
TCP 80 (HTTP) | + | `security.ubuntu.com` | TCP 443 (HTTPS)
TCP 80 (HTTP) | + | `esm.ubuntu.com` | TCP 443 (HTTPS)
TCP 80 (HTTP) | +
+ +
+ GitHub + + | Domains | Port(s) | + | :------------------------------------- | :-------------- | + | `github.com` | TCP 443 (HTTPS) | + | `raw.githubusercontent.com` | TCP 443 (HTTPS) | + | `release-assets.githubusercontent.com` | TCP 443 (HTTPS) | +
+ +
+ Kubernetes + + | Domains | Port(s) | + | :----------------------------------------------------------------------------- | :-------------- | + | `registry.k8s.io` | TCP 443 (HTTPS) | + | `k8s.gcr.io` | TCP 443 (HTTPS) | + | `ghcr.io` | TCP 443 (HTTPS) | + | `coredns` | TCP 443 (HTTPS) | + | `d39mqg4b1dx9z1.cloudfront.net` | TCP 443 (HTTPS) | + | `storage.googleapis.com` | TCP 443 (HTTPS) | + | `nvcr.io` | TCP 443 (HTTPS) | + | `auth.docker.io` | TCP 443 (HTTPS) | + | `auth.docker.com` | TCP 443 (HTTPS) | + | `login.docker.com` | TCP 443 (HTTPS) | + | `cdn.auth0.com` | TCP 443 (HTTPS) | + | `docker.io` | TCP 443 (HTTPS) | + | `hub.docker.com` | TCP 443 (HTTPS) | + | `registry-1.docker.io` | TCP 443 (HTTPS) | + | `index.docker.io` | TCP 443 (HTTPS) | + | `production.cloudflare.docker.com` | TCP 443 (HTTPS) | + | `docker-images-prod.6aa30f8b08e16409b46e0173d6de2f56.r2.cloudflarestorage.com` | TCP 443 (HTTPS) | + | `registry.cn-hangzhou.aliyuncs.com` | TCP 443 (HTTPS) | +
+ +
+ HuggingFace + + | Domains | Port(s) | + | :----------------------- | :-------------- | + | `huggingface.co` | TCP 443 (HTTPS) | + | `cdn-lfs.huggingface.co` | TCP 443 (HTTPS) | + | `cdn.huggingface.co` | TCP 443 (HTTPS) | +
+ +
+ RedHat Models + + | Domains | Port(s) | + | :--------------------------- | :-------------- | + | `registry.redhat.io` | TCP 443 (HTTPS) | + | `quay.io` | TCP 443 (HTTPS) | + | `registry.access.redhat.com` | TCP 443 (HTTPS) | +
+ +
+ HELM Charts + + | Domains | Port(s) | Description | + | :------------------------------------- | :-------------- | :------------ | + | `otterscale.github.io` | TCP 443 (HTTPS) | #OtterScale | + | `charts.jetstack.io` | TCP 443 (HTTPS) | #Cert-manager | + | `open-feature.github.io` | TCP 443 (HTTPS) | #Open-feature | + | `istio-release.storage.googleapis.com` | TCP 443 (HTTPS) | #Istio | + | `prometheus-community.github.io` | TCP 443 (HTTPS) | #prometheus | + | `project-hami.github.io` | TCP 443 (HTTPS) | #HAMi | + | `helm.ngc.nvidia.com` | TCP 443 (HTTPS) | #Nvidia | + | `cloudnative-pg.github.io/charts` | TCP 443 (HTTPS) | #CloudNative | + | `llm-d.ai` | TCP 443 (HTTPS) | #llm-d | + | `codecentric.github.io` | TCP 443 (HTTPS) | #KeyCloak | + | `charts.bitnami.com` | TCP 443 (HTTPS) | #Bitnami | +
diff --git a/src/content/docs/v0.6/getting-started/02-installation.mdx b/src/content/docs/v0.6/getting-started/02-installation.mdx new file mode 100644 index 0000000..4039d38 --- /dev/null +++ b/src/content/docs/v0.6/getting-started/02-installation.mdx @@ -0,0 +1,81 @@ +--- +title: Installation +description: Step-by-step guide to installing OtterScale. +slug: v0.6/getting-started/02-installation +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +This guide provides a detailed, step-by-step process for installing OtterScale on your Control Node. Ensure you have completed all prerequisites outlined in the Prerequisites section before proceeding. The installation involves setting up dependencies, configuring the environment, and deploying the system. + + + + + 1. ### **Install Required Packages and Docker** + + Install essential tools and Docker, which are needed for cloning the repository and running containerized services. + + ```bash + sudo apt update + sudo apt install -y git curl + sudo snap install docker + ``` + + 2. ### **Clone the OtterScale Repository** + + Download the OtterScale source code from GitHub. + + ```bash + git clone https://github.com/otterscale/otterscale.git + ``` + + 3. ### **Configure the Environment File** + + Navigate to the cloned directory and set up the environment configuration. + + ```bash + cd otterscale + cp .env.example .env + ``` + + Edit the `.env` file to update the following variables: + + * `APP_VERSION`: Set to the desired version (e.g., `0.6.0`). + * `PUBLIC_API_URL`: Set to your Control Node's IP address and port (e.g., `http://192.168.1.100:8299`). Replace `xx.xx.xx.xx` with your actual IP. + + You can edit the file using a text editor like `nano`: + + ```bash + nano .env + ``` + + 4. ### **Start OtterScale Services** + + Launch the necessary services in the background using Docker Compose. + + ```bash + sudo docker-compose up -d + ``` + + Verify that the services are running: + + ```bash + sudo docker-compose ps + ``` + + 5. ### **Execute the Installation Script** + + Complete the installation via the web interface. + + 1. Open your web browser and access the OtterScale UI at the `PUBLIC_API_URL` you configured (e.g., `http://192.168.1.100:8299`). + 2. In the UI, locate and copy the installation CLI command. + 3. Paste and run the command in your terminal with sudo privileges. + + If you encounter any issues during execution, first verify your Firewall Configuration as outlined in the Prerequisites section. Additionally, check the `setup.log` file in the current directory for detailed error information. + + + diff --git a/src/content/docs/v0.6/getting-started/03-scope.mdx b/src/content/docs/v0.6/getting-started/03-scope.mdx new file mode 100644 index 0000000..be860bf --- /dev/null +++ b/src/content/docs/v0.6/getting-started/03-scope.mdx @@ -0,0 +1,107 @@ +--- +title: Scope +description: Manage scopes in OtterScale. +slug: v0.6/getting-started/03-scope +--- + +import { Steps } from '@astrojs/starlight/components'; +import { Aside } from '@astrojs/starlight/components'; +import { Icon } from '@astrojs/starlight/components'; + +Scopes allow you to organize your resources and control access. + +## Selecting a Scope + +You can select a scope from the dropdown menu in the navigation bar. This will filter the resources you see to only those within the selected scope. + +## Creating a Scope + +To create a new scope, navigate to the Scope management area and click on "Create Scope". A side panel will appear with the creation form. + + + 1. **Select a Plan** + + At the top of the form, you will see the details of the plan associated with the scope you are creating. Different plans support different features: + + | Feature | Standard | Advanced | Enterprise | + | :--------- | :---------------------------- | :---------------------------- | :---------------------------- | + | Ceph | | | | + | Kubernetes | | | | + | Cluster | | | | + | Node | Single-Node | Multi-Node | Multi-Node | + + 2. **Configure Scope Details** + + Fill in the following information to configure your new scope: + + * **Scope Name**: Enter a unique name for your scope. + * **Machine**: Select the physical machine to assign to this scope. + + * **Storage Devices**: Select the block devices to be used. (Appears after selecting a machine). + + * **Network Configuration** (Optional): + * **Calico CIDR**: The CIDR block for Calico networking (e.g., `192.168.0.0/16`). + * **Virtual IP**: The virtual IP address for the scope (e.g., `192.168.1.1`). + + 3. **Create Scope** + + Once you have filled in the details, click the **Create** button to initiate the creation process. + + +## Automated Provisioning + +After you initiate the creation, the system automatically performs the following steps: + + + 1. **Create Scope**: Initializes the scope record. + + This step maps to the Juju `CreateModel` operation. It establishes a new isolated workspace (Model) within the Juju controller. Key actions include: + + * **Namespace Isolation**: Creates a logical boundary for resources, ensuring that applications and machines in this scope do not interfere with others. + * **Environment Configuration**: Sets up model-level configurations, such as APT mirrors for faster package downloads. + * **Access Control**: Automatically injects SSH keys to grant authorized users access to the machines within this scope. + + 2. **Add Machine Tags**: Tags the selected machine. + + This step applies specific tags to the machine in MAAS. Tags are used to: + + * **Mark Ownership**: Associates the machine with the specific scope being created. + * **Reserve Resources**: Prevents other processes from accidentally using this machine while it is being set up. + * **Define Capabilities**: Can be used to indicate specific hardware capabilities or roles (e.g., `compute`, `storage`) required for the node. + + 3. **Commission Machine**: Configures the machine (SSH, networking, storage). + + Commissioning is a critical step to verify hardware and prepare it for deployment. It involves: + + * **Hardware Inventory**: Boots an ephemeral OS to scan and record detailed specs (CPU, Memory, Disks, NICs). + * **Health Checks**: Runs scripts to test hardware functionality (Disk I/O, Memory, IPMI/BMC). + * **Configuration**: Sets up out-of-band management (BMC/IPMI) and registers network/storage interfaces. + * **Status Change**: On success, the machine becomes `Ready` for deployment. On failure, it is marked as `Failed commissioning` for troubleshooting. + + 4. **Create Machine**: Associates the machine with the scope. + + This step executes the Juju `AddMachines` operation. It registers the specific physical machine (from MAAS) into the Juju controller. This action triggers: + + * **Provisioning**: Juju instructs MAAS to deploy the operating system (e.g., Ubuntu) onto the machine. + * **Agent Installation**: Once the OS is running, the Juju Agent is installed, allowing Juju to manage the machine as a node. + + 5. **Create Node**: Finalizes the node creation with network and storage settings. + + This is the final orchestration step where the actual software stack is deployed. It performs the following actions: + + * **Network Reservation**: Reserves necessary IP addresses for internal services (e.g., Ceph NFS, Kubernetes Load Balancer). + * **Software Deployment**: Deploys and configures the core components: + * **Ceph**: For distributed storage (using the selected OSD devices). + * **Kubernetes**: For container orchestration (configuring Calico networking and Load Balancers). + * **Addons**: Additional system utilities. + * **Observability (COS)**: Monitoring and logging stack. + * **Relation Establishment**: Connects these components together to ensure they work as a cohesive system. + + + diff --git a/src/content/docs/v0.6/guides/example.md b/src/content/docs/v0.6/guides/example.md new file mode 100644 index 0000000..457f4fd --- /dev/null +++ b/src/content/docs/v0.6/guides/example.md @@ -0,0 +1,12 @@ +--- +title: Example Guide +description: A guide in my new Starlight docs site. +slug: v0.6/guides/example +--- + +Guides lead a user through a specific task they want to accomplish, often with a sequence of steps. +Writing a good guide requires thinking about what your users are trying to do. + +## Further reading + +* Read [about how-to guides](https://diataxis.fr/how-to-guides/) in the Diátaxis framework diff --git a/src/content/docs/v0.6/index.mdx b/src/content/docs/v0.6/index.mdx new file mode 100644 index 0000000..434ad47 --- /dev/null +++ b/src/content/docs/v0.6/index.mdx @@ -0,0 +1,71 @@ +--- +title: A unified platform for simplified compute, storage, and networking. +description: Get started building your docs site with Starlight. +template: splash +hero: + title: | + OtterScale: + + One Platform, infinite possibilities. + + tagline: A unified platform for simplified compute, storage, and networking. + image: + file: ../../../assets/v0.6/otter-2.png + actions: + - text: Get Started + link: /v0.6/introduction/ + icon: right-arrow + - text: View on Github + link: https://github.com/otterscale/otterscale + icon: external + variant: minimal +slug: v0.6 +--- + +import { Card, CardGrid } from '@astrojs/starlight/components'; +import { Icon } from '@astrojs/starlight/components'; + +## Key Features + + + + KVM/QEMU VMs with live migration and GPU management + + + + Native Kubernetes and Juju charm deployment + + + + Built-in Ceph clusters with automated backup + + + + Integrated Prometheus and Grafana stack + + + + RBAC with LDAP/AD integration and SSO + + + + Curated catalog of ready-to-deploy apps + + + + Multi-node deployment with automatic failover + + + +## Explore Application Store + +import IntegrationGrid from '@components/ApplicationsGrid.astro'; + +**Vast Application Ecosystem** — Deploy complex applications easily from our curated store. Tap into a vast ecosystem of integrations to power any stack, anywhere. [Explore the Application Store](/v0.6/service/applications/04-store/). + + diff --git a/src/content/docs/v0.6/introduction.mdx b/src/content/docs/v0.6/introduction.mdx new file mode 100644 index 0000000..6c306a1 --- /dev/null +++ b/src/content/docs/v0.6/introduction.mdx @@ -0,0 +1,84 @@ +--- +title: Introduction +description: Overview of OtterScale. +slug: v0.6/introduction +--- + +import { Card, CardGrid, LinkCard, Steps, Aside } from '@astrojs/starlight/components'; +import { Image } from 'astro:assets'; +import logo2 from '../../../assets/v0.6/otter-2.png'; + +
+
+ OtterScale is a{' '} + Hyper-Converged Infrastructure (HCI) + platform that unifies compute, storage, networking, and virtualization into a scalable solution. + Seamlessly manage VMs, containers, GPUs, and applications through a single control plane with + enterprise-grade performance. +
+ + OtterScale Logo +
+ +## System Architecture + +OtterScale is built on a layered architecture that provides complete control from the hardware up to the application layer. + +### Core Layers + + + 1. **Hardware Layer**: Manages physical resources including Compute nodes, Storage nodes, and GPU accelerators. + 2. **Provisioning Layer (MAAS)**: Handles bare metal provisioning, OS deployment, and network configuration. + 3. **Orchestration Layer (Juju & Kubernetes)**: Manages application lifecycles and container orchestration. + 4. **Storage Layer (Ceph)**: Provides scalable, distributed storage for the cluster. + + +### Node Provisioning & Management + +OtterScale automates the lifecycle of physical nodes. Through the integration with MAAS, it handles power management (IPMI/Redfish), PXE booting, and OS installation. + +### Storage Topology + +The platform utilizes Ceph to provide a robust, self-healing storage fabric. Storage nodes are dedicated to managing data replication and distribution, ensuring high availability and performance for data-intensive workloads like AI model training. + +## Key Features + + + + KVM/QEMU VMs with live migration and GPU management + + + + Native Kubernetes and Juju charm deployment + + + + Built-in Ceph clusters with automated backup + + + + Integrated Prometheus and Grafana stack + + + + RBAC with LDAP/AD integration and SSO + + + + Curated catalog of ready-to-deploy apps + + + + Multi-node deployment with automatic failover + + + +## Next Steps + + + + + + + + diff --git a/src/content/docs/v0.6/reference/example.md b/src/content/docs/v0.6/reference/example.md new file mode 100644 index 0000000..c44d6c8 --- /dev/null +++ b/src/content/docs/v0.6/reference/example.md @@ -0,0 +1,12 @@ +--- +title: Example Reference +description: A reference page in my new Starlight docs site. +slug: v0.6/reference/example +--- + +Reference pages are ideal for outlining how things work in terse and clear terms. +Less concerned with telling a story or addressing a specific use case, they should give a comprehensive outline of what you're documenting. + +## Further reading + +* Read [about reference](https://diataxis.fr/reference/) in the Diátaxis framework diff --git a/src/content/docs/v0.6/service/applications/01-workloads.mdx b/src/content/docs/v0.6/service/applications/01-workloads.mdx new file mode 100644 index 0000000..9720744 --- /dev/null +++ b/src/content/docs/v0.6/service/applications/01-workloads.mdx @@ -0,0 +1,93 @@ +--- +title: Workloads +description: Manage Kubernetes applications and workloads. +slug: v0.6/serviceapplications/01-workloads +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Workloads page provides a unified view of the applications running in your OtterScale cluster. It aggregates information about Deployments, StatefulSets, and DaemonSets, allowing you to monitor their health and perform basic management tasks. + +## Introduction + +The Workloads page displays a list of all applications. The table includes the following information: + +| Column | Description | +| :------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| **Name** | The name of the application.
**Clickable**: Navigates to the **[Workload Details](#workload-details)** page, where you can view in-depth information about the application's resources and status. | +| **Type** | The Kubernetes workload type (e.g., `Deployment`, `StatefulSet`, `DaemonSet`). | +| **Namespace** | The Kubernetes namespace where the application is deployed. | +| **Health** | The health status of the application, shown as a ratio of healthy pods to total pods. | +| **Service** | The number of Kubernetes Services associated with the application. | +| **Pod** | The total number of Pods managed by the application. | +| **Replica** | The desired number of replicas (instances) for the application. | +| **Container** | The number of containers defined in the application's pod spec. | +| **Volume** | The number of Persistent Volume Claims (PVCs) attached to the application. | +| **NodePort** | Displays any exposed NodePorts.
**Clickable**: Click the external link icon next to the port number to open the service in a new tab, using the node's IP address and the assigned NodePort. | + +## Workload Details + +Clicking on a workload's name takes you to the details page, which provides a comprehensive view of the application: + +* **Header**: Displays the application name, namespace, type, and associated labels. +* **Statistics Cards**: + * **Containers**: Lists the containers within the pods and their images. + * **Persistent Volume Claims**: Shows the storage volumes attached to the workload. + * **Storage Classes**: Indicates the storage classes used by the volumes. + +### Pods Table + +The **Pods Table** lists all individual pods managed by this workload. + +| Column | Description | +| :----------------- | :--------------------------------------------------------------------------------------------------------------------- | +| **Name** | The unique name of the pod. | +| **Phase** | The current lifecycle phase of the pod (e.g., `Running`, `Pending`). | +| **Ready** | The number of ready containers relative to the total number of containers in the pod. | +| **Restarts** | The number of times the pod's containers have been restarted. | +| **Last Condition** | The most recent condition or error status. If an issue exists, it displays the reason and message (hover for details). | +| **Terminal** | **Clickable**: Opens a web-based terminal session connected to the pod in a new window. | +| **Actions** | Provides options to manage the individual pod. | + +### Services Table + +The **Services Table** lists the Kubernetes Services associated with the workload, providing network access details. + +| Column | Description | +| :------------- | :------------------------------------------------------------------------------------------------------------------------------------------ | +| **Name** | The name of the Kubernetes Service. | +| **Type** | The type of service (e.g., `ClusterIP`, `NodePort`, `LoadBalancer`). | +| **Cluster IP** | The internal IP address assigned to the service within the cluster. | +| **Ports** | Lists the port configurations, including the protocol (e.g., TCP/UDP), the exposed port, the NodePort (if applicable), and the target port. | + +## Manage Workloads + +You can manage the lifecycle of your applications using the **Actions** menu. + +### Workload Actions + +The **Actions** menu (three dots icon) for each application provides the following options: + +#### Restart + +Triggers a rolling restart of the application. This is useful for reloading configurations or clearing transient issues. + + + 1. Select **Restart** from the actions menu. + 2. Confirm the action to initiate the restart process. + + +#### Scale + +Allows you to adjust the number of replicas for the application. + + + + + 1. Select **Scale** from the actions menu. + 2. Enter the desired number of replicas. + 3. Click **Confirm** to update the application scale. + diff --git a/src/content/docs/v0.6/service/applications/02-services.mdx b/src/content/docs/v0.6/service/applications/02-services.mdx new file mode 100644 index 0000000..dbdd8e2 --- /dev/null +++ b/src/content/docs/v0.6/service/applications/02-services.mdx @@ -0,0 +1,25 @@ +--- +title: Services +description: Monitor Kubernetes Services and network access. +slug: v0.6/serviceapplications/02-services +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Services page provides a list of Kubernetes Services within your OtterScale cluster. Services define a logical set of Pods and a policy by which to access them, enabling network connectivity for your applications. + +## Introduction + +The Services page displays a list of all services. The table includes the following information: + +| Column | Description | +| :------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the Kubernetes Service. | +| **Type** | The type of service (e.g., `ClusterIP`, `NodePort`, `LoadBalancer`), which determines how the service is exposed. | +| **Cluster IP** | The internal IP address assigned to the service, used for communication within the cluster. | +| **Ports** | The number of ports exposed by the service. Hovering over the count reveals a detailed table with the following fields: **Protocol**, **Port**, **NodePort**, **TargetPort**, and **Name**. | +| **Endpoints** | For services of type `NodePort`, this column displays the accessible endpoints. Hovering over the endpoint name reveals the full URL (e.g., `http://:`), and a copy button allows you to quickly copy it to the clipboard. | + +## Manage Services + +Currently, the Services page is read-only and provides monitoring capabilities. You can view the configuration and access points for your services, but creation and modification are typically handled through the application deployment process (e.g., via the **Workloads** page or Helm charts). diff --git a/src/content/docs/v0.6/service/applications/03-secrets.mdx b/src/content/docs/v0.6/service/applications/03-secrets.mdx new file mode 100644 index 0000000..f713e86 --- /dev/null +++ b/src/content/docs/v0.6/service/applications/03-secrets.mdx @@ -0,0 +1,37 @@ +--- +title: Secrets +description: Manage sensitive information such as passwords, OAuth tokens, and ssh keys. +slug: v0.6/serviceapplications/03-secrets +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Secrets page allows you to view and manage Kubernetes Secrets within your OtterScale cluster. Secrets are used to store and manage sensitive information, such as passwords, OAuth tokens, and SSH keys, keeping them separate from your application code. + +## Introduction + +The Secrets page displays a list of all secrets in the selected namespace. The table includes the following information: + +| Column | Description | +| :------------- | :------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the secret. **Clickable**: Clicking the name opens a dialog where you can view the decoded key-value pairs stored in the secret. | +| **Namespace** | The Kubernetes namespace where the secret is stored. | +| **Type** | The type of the secret (e.g., `Opaque`, `kubernetes.io/service-account-token`), which defines how the data is used. | +| **Immutable** | Indicates whether the secret's data can be changed. A checkmark means it is immutable (read-only), while a cross means it can be modified. | +| **Labels** | Key-value pairs attached to the secret for organization and selection. | +| **Created At** | The time elapsed since the secret was created. Hovering over the time displays the exact creation timestamp. | + +## View Secret Details + +To view the sensitive data stored within a secret: + + + 1. Click on the **Name** of the secret in the table. + 2. A dialog window will appear, listing all keys contained in the secret. + 3. The values are automatically decoded (from Base64) and displayed. + 4. Use the **Copy** button next to a value to copy it to your clipboard. + + +## Manage Secrets + +Currently, the Secrets page provides a secure way to view and audit existing secrets. Creation and management of secrets are typically handled through your deployment workflows, CLI tools, or external secret management systems. diff --git a/src/content/docs/v0.6/service/applications/04-store.mdx b/src/content/docs/v0.6/service/applications/04-store.mdx new file mode 100644 index 0000000..4d95b9a --- /dev/null +++ b/src/content/docs/v0.6/service/applications/04-store.mdx @@ -0,0 +1,120 @@ +--- +title: Store +description: Discover and deploy applications using Helm charts. +slug: v0.6/serviceapplications/04-store +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Store page serves as a marketplace for discovering and deploying applications to your OtterScale cluster. It leverages Helm charts to package and manage applications, providing a user-friendly interface to browse, install, and manage releases. + +## Introduction + +The Store page displays a catalog of available applications (Helm charts). You can browse the catalog using filters for name, keyword, maintainer, and deprecation status. + +Each application card displays: + +* **Icon**: The application's logo. +* **Name**: The name of the application. +* **Version**: The current version of the chart. +* **Description**: A brief description of the application. +* **Repository**: The source repository of the chart (e.g., `otterscale/`). Official OtterScale charts are marked with a "Official" badge. + +## Managing the Catalog + +The Store provides tools to keep your application catalog up-to-date and flexible. You can find the **Import** and **Sync** buttons at the top right of the page. + +### Synchronize with ArtifactHub + +To populate the store with popular community applications, use the **Sync** feature. + +* Clicking the **Sync** button initiates a synchronization process with [ArtifactHub](https://artifacthub.io/). +* The system automatically fetches the **top 60 most popular Helm charts** based on ArtifactHub rankings. +* This ensures your cluster has quick access to widely used tools (such as Argo CD, Prometheus, or Airflow) without manual configuration. + +### Import Custom Charts + +If you need to deploy a specific chart that is not included in the standard catalog or the ArtifactHub sync list, you can import it manually. + + + 1. Click the **Import** button. + 2. In the **Import Chart** dialog, paste the direct link to the chart's `.tgz` file. + * *Example:* `https://charts.bitnami.com/bitnami/nginx-15.0.0.tgz` + 3. Click **Confirm**. + + + + +## Application Details + +Clicking on an application card opens a details panel with two main tabs: + +### Information + +Provides comprehensive details about the chart: + +* **Description**: Full description of the application. +* **Keywords**: Tags associated with the chart. +* **Dependencies**: Lists other charts required by this application. +* **Home**: Link to the application's homepage. +* **Sources**: Links to the source code. +* **Maintainers**: List of the chart's maintainers. + +### Releases + +Lists the installed instances (releases) of this chart in your cluster. The table includes: + +* **Name**: The name of the release. +* **Namespace**: The namespace where it is deployed. +* **Chart**: The chart version and application version. +* **Revision**: The revision number of the release. +* **Actions**: Options to manage the release (Edit, Rollback, Delete). + +## Manage Applications + +You can install new applications or manage existing releases directly from the Store. + +### Install an Application + +To deploy a new application: + + + 1. Click on the application card to open the details panel. + + 2. Click the **Install** button. + + 3. **Configuration**: + + * **Name**: Enter a name for the release. + * **Namespace**: Specify the target namespace. + * **Version**: Select the chart version to install. + * **Dry Run**: Toggle to simulate the installation without making changes. + * **Configuration**: Customize the `values.yaml` configuration for the chart. You can modify the parameters to override the chart's defaults, such as replica counts, resource limits, or service settings. The editor supports YAML syntax highlighting and validation. + + ```yaml + # Example Configuration + replicaCount: 1 + image: + repository: nginx + tag: stable + service: + type: ClusterIP + port: 80 + resources: + limits: + cpu: 100m + memory: 128Mi + ``` + + 4. Click **Confirm** to start the installation. Once installed, the application will appear in the **Releases** tab. + + +### Manage Releases + +For existing releases listed in the **Releases** tab, you can perform the following actions: + +* **Edit**: Update the release configuration (e.g., change values or upgrade version). +* **Rollback**: Revert the release to a previous revision. +* **Delete**: Uninstall the release from the cluster. diff --git a/src/content/docs/v0.6/service/compute.mdx b/src/content/docs/v0.6/service/compute.mdx new file mode 100644 index 0000000..47be3fd --- /dev/null +++ b/src/content/docs/v0.6/service/compute.mdx @@ -0,0 +1,95 @@ +--- +title: Compute +description: Manage Virtual Machines. +slug: v0.6/service/compute +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Compute section allows you to create and manage Virtual Machines (VMs) within the OtterScale cluster. You can provision new instances, monitor their resource usage, and perform lifecycle management operations. + +## Introduction + +The Compute page displays a list of all Virtual Machines. The table includes the following information: + +| Column | Description | +| :---------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the Virtual Machine. | +| **Status** | The current state of the VM (e.g., Running, Stopped). | +| **Namespace** | The Kubernetes namespace where the VM resides. | +| **Machine** | The physical node (machine) hosting the VM instance.
**Expandable**: Click to view machine details.See [Machine Details](/v0.6/basic/machines/#machine-details). | +| **Instance Type** | The hardware profile (CPU/RAM) assigned to the VM. | +| **Disk** | The storage volumes attached to the VM.
**Expandable**: Click to view and manage individual disks. See [Disk Management](#disk-management). | +| **Ports** | The network ports exposed by the VM.
**Expandable**: Click to view and manage port configurations. See [Port Management](#port-management). | +| **Created** | The timestamp when the VM was created. | +| **Metrics** | Real-time resource usage for CPU, Memory, and Storage. | +| **VNC** | Provides a direct VNC console connection to the VM. | + +## Manage Virtual Machines + +You can create new Virtual Machines or manage existing ones using the **Actions** menu. + +### Create a New Virtual Machine + +To provision a new VM: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Virtual Machine" will appear. + + 3. **Basic Configuration**: + + * **Name**: Enter a unique name for the VM. + * **Namespace**: Specify the namespace (defaults to `default`). + * **Instance Type**: Select a hardware profile from the dropdown list (displays CPU cores and Memory size). + * **Data Volume**: Select the bootable Data Volume (PVC) to use for the OS disk. + + 4. **Advanced Configuration** (Optional): + + * Expand the "Advanced" section to configure a **Startup Script** (Cloud-Init user data) for bootstrapping the instance. + + 5. Click **Confirm** to launch the Virtual Machine. + + +### Virtual Machine Actions + +The **Actions** menu (three dots icon) for each VM provides the following options: + +#### Lifecycle Management + +* **Pause/Resume**: Temporarily pause the VM execution or resume it. +* **Start/Stop**: Power on or power off the VM. +* **Restart**: Reboot the VM. + +#### Data Management + +* **Snapshot**: Create a point-in-time snapshot of the VM's state and data. +* **Restore**: Revert the VM to a previous snapshot. + +#### Operations + +* **Clone**: Create a duplicate of the VM. +* **Migrate**: Move the VM to a different physical node in the cluster. +* **Delete**: Permanently remove the Virtual Machine and its associated resources. + + + +## Disk Management + +The **Disk** column allows you to expand the row to view and manage the storage volumes attached to the Virtual Machine. + +* **View Disks**: See a list of all attached disks, including their name, size, and type. +* **Attach Disk**: Add a new Data Volume (PVC) to the VM. +* **Detach Disk**: Remove an existing disk from the VM. + +## Port Management + +The **Ports** column allows you to expand the row to view and manage the network ports exposed by the Virtual Machine. + +* **View Ports**: See a list of configured ports, including the port number, protocol (TCP/UDP), and target port. +* **Add Port**: Expose a new port on the VM service. +* **Remove Port**: Close an existing port. diff --git a/src/content/docs/v0.6/service/models.mdx b/src/content/docs/v0.6/service/models.mdx new file mode 100644 index 0000000..62646fd --- /dev/null +++ b/src/content/docs/v0.6/service/models.mdx @@ -0,0 +1,83 @@ +--- +title: Models +description: Manage and monitor AI/ML models and artifacts. +slug: v0.6/service/models +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Models page provides a unified view of all AI/ML models deployed in your OtterScale cluster. It aggregates information about model deployments and their artifacts, allowing you to monitor status, manage resources, and perform lifecycle operations. + +## Introduction + +The Models page displays a list of all models. The table includes the following columns (as shown in the UI): + +| Column | Description | +| :----------------- | :------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the model. | +| **Model Name** | The unique identifier of the model (modelName/id). | +| **Namespace** | The Kubernetes namespace where the model is deployed. | +| **Status** | The current status of the model (e.g., Running, Pending). | +| **Description** | The description of the model. | +| **Prefill** | Prefill configuration: vGPU memory %, replica, tensor (if available). | +| **Decode** | Decode configuration: vGPU memory %, replica, tensor (if available). | +| **First Deployed** | Timestamp of first deployment. | +| **Last Deployed** | Timestamp of last deployment. | +| **GPU Relation** | GPU resource relation (shown only if status is 'deployed'). | +| **Test** | Test button for model API (only available when the model is in the "ready" state; opens a dialog to test the model). | +| **Actions** | Management actions (update, delete, etc.). | + +### Pods Table + +The **Pods Table** (in the details view) lists all pods managed by this model, if available.\ +Click the expand icon at the beginning of a row to view detailed pod information. + +| Column | Description | +| :---------------------- | :--------------------------------------------------------------------------------------- | +| **Pod** | The unique name of the pod. | +| **Phase** | The current lifecycle phase of the pod (e.g., Running, Pending). | +| **Ready** | Number of ready containers vs total containers. | +| **Restarts** | Number of times containers in the pod have restarted. | +| **Conditions** | The most recent condition or error status for the pod. | +| **Time to First Token** | The sum of time (in seconds) taken to generate the first token for requests to this pod. | +| **Request Latency** | The 95th percentile end-to-end request latency (in seconds) for this pod. | +| **Log** | **Clickable**: Opens the log view for the pod. | +| **Create Time** | The timestamp when the pod was created. | + +## Manage Models + +You can manage the lifecycle of your models using the **Actions** menu. + +### Model Actions + +The **Actions** menu (three dots icon) for each model provides: + +#### Create + +Create a new model. + + + 1. Select **Create** from the actions menu or click the **Create** button. + 2. You can search for models using the cloud icon next to the input box, or select a model from your [model artifacts](/v0.6/service/settings/05-model-artifact/) by clicking the archive icon. + 3. Fill in the model configuration (name, namespace, prefill/decode, description, etc.). + 4. Confirm to deploy the model. + + +#### Update + +Modify the configuration of an existing model (such as prefill/decode, description, etc.). + + + 1. Select **Update** from the actions menu. + 2. Edit the desired fields. + 3. Confirm to apply the changes. + + +#### Delete + +Delete a model. + + + 1. Select **Delete** from the actions menu. + 2. Confirm deletion. + diff --git a/src/content/docs/v0.6/service/repositories.mdx b/src/content/docs/v0.6/service/repositories.mdx new file mode 100644 index 0000000..2f95540 --- /dev/null +++ b/src/content/docs/v0.6/service/repositories.mdx @@ -0,0 +1,120 @@ +--- +title: Repositories +description: Manage container images and Helm charts in the registry. +slug: v0.6/service/repositories +--- + +import { Steps, Aside, Tabs, TabItem } from '@astrojs/starlight/components'; + +The Repositories page allows you to view and manage the container images and Helm charts stored in your private registry. + +## Introduction + +The Repositories table displays a list of all repositories. The table includes the following information: + +| Column | Description | +| :------------- | :----------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the repository. | +| **Latest Tag** | The most recent tag associated with the repository. | +| **Size** | The total size of the repository. | +| **Manifests** | The number of manifests (versions/tags) in the repository. Clicking the external link icon opens a detailed list of manifests. | + +## Upload Instructions + +You can upload Docker images and Helm charts to the repository via your local terminal. + + + + + + + + + 1. Tag the image: + + ```bash + docker tag : /: + ``` + + 2. Push the image: + + ```bash + docker push /: + ``` + + 3. After uploading, navigate to the [Applications Store](/v0.6/service/applications/04-store/) to update the Helm chart configuration to use your custom image: + + ```yaml + # Docker image + image: + # -- Docker image registry + repository: / + # -- Docker pull policy + pullPolicy: IfNotPresent + # -- Docker image tag, overrides the image tag whose default is the chart appVersion. + tag: + ``` + + + + + + 1. Download a chart package from [Artifact Hub](https://artifacthub.io/). + + 2. Upload the downloaded chart: + + ```bash + helm push oci:/// --plain-http + ``` + + 3. After uploading, navigate to the [Applications Store](/v0.6/service/applications/04-store/) to deploy the Helm chart. + + + + +## Manage Repositories + + + +### View Manifests + +To view the specific versions or tags within a repository: + + + 1. Locate the repository in the list. + 2. Click the external link icon in the **Manifests** column. + 3. A side panel will open displaying all manifests (tags) for that repository. + + +### View Manifest Details + +You can inspect the details of a specific image or chart version. + + + 1. Open the **Manifests** list for a repository. + 2. Click on any manifest item. + 3. A dialog will appear showing detailed information: + * **Charts**: Displays version, description, dependencies, maintainers, and source links. + * **Images**: Displays author, creation time, architecture, and container configuration (ports, entrypoint, commands, etc.). + + +### Delete Manifest + +You can delete specific versions (manifests) from a repository. + + + 1. Open the **Manifests** list for a repository. + 2. Locate the specific tag/version you want to remove. + 3. Click the **Delete** button (trash icon). + 4. Confirm the deletion to permanently remove the manifest. + diff --git a/src/content/docs/v0.6/service/settings/01-extensions.mdx b/src/content/docs/v0.6/service/settings/01-extensions.mdx new file mode 100644 index 0000000..8083acc --- /dev/null +++ b/src/content/docs/v0.6/service/settings/01-extensions.mdx @@ -0,0 +1,63 @@ +--- +title: Extensions +description: Manage system extensions and add-ons. +slug: v0.6/servicesettings/01-extensions +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Extensions page allows you to manage the add-ons and system components that extend the functionality of your OtterScale cluster. Extensions are grouped into bundles based on their purpose, such as General, Model, Registry, Virtual Machine, and Storage. + +## Introduction + +Extensions are essential components that enable specific features within the platform. The Extensions page organizes these components into expandable bundles. Each bundle displays a progress bar indicating the installation status of the extensions within it. + +### Extension Bundles + +The available extension bundles include: + +| Bundle | Description | +| :--------------------- | :----------------------------------------------------------------------- | +| **General** | Core system extensions required for basic platform functionality. | +| **Container Registry** | Extensions for managing container images and registries. | +| **Model** | Extensions related to Large Language Model (LLM) serving and management. | +| **Virtual Machine** | Extensions enabling Virtual Machine (VM) virtualization and management. | +| **Storage** | Extensions for persistent storage management and volume provisioning. | + +## Manage Extensions + +You can install or upgrade extensions directly from the bundle card. + +### Install Extensions + +If a bundle has missing extensions (indicated by a progress bar that is not full and a red or yellow color), you can install them: + + + 1. Locate the bundle you want to install (e.g., "Model"). + 2. Click the **Install** button on the right side of the bundle card. + 3. The system will begin installing the missing extensions. A toast notification will appear to track the progress. + 4. Once completed, the progress bar will turn green, indicating all extensions are installed. + + +### Upgrade Extensions + +If all extensions in a bundle are installed but updates are available, you can upgrade them: + + + 1. Locate the bundle with available updates. + 2. Click the **Upgrade** button on the right side of the bundle card. + 3. The system will update the extensions to their latest versions. + + +### View Extension Details + +You can expand any bundle to view the individual extensions contained within it. + +1. Click on the bundle card to expand the accordion. +2. You will see a list of individual extensions. +3. Each extension card displays: + * **Icon**: Visual identifier for the extension. + * **Name**: The display name of the extension. + * **Version**: The currently installed version (or the latest available version). + * **Status**: A green checkmark indicates the extension is installed and active; a red minus circle indicates it is not installed. + * **Description**: A brief explanation of what the extension does. diff --git a/src/content/docs/v0.6/service/settings/02-built-in-test.mdx b/src/content/docs/v0.6/service/settings/02-built-in-test.mdx new file mode 100644 index 0000000..0378df1 --- /dev/null +++ b/src/content/docs/v0.6/service/settings/02-built-in-test.mdx @@ -0,0 +1,72 @@ +--- +title: Built-in Test +description: Run performance benchmarks for storage subsystems. +slug: v0.6/servicesettings/02-built-in-test +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Built-in Test page allows you to run performance benchmarks on your storage infrastructure. It provides tools to validate the performance of block storage (using FIO) and object storage (using Warp). + +## Introduction + +The page is divided into two main sections: + +* **IO Test**: Benchmarks disk I/O performance using the Flexible I/O tester (FIO). This is useful for testing Ceph block devices or NFS shares. +* **Object Storage Test**: Benchmarks S3-compatible object storage performance using MinIO Warp. This supports testing internal (Ceph, MinIO) and external S3 endpoints. + +## IO Test (FIO) + +FIO (Flexible I/O tester) is a standard tool for benchmarking disk I/O. You can use it to simulate specific workload patterns and measure the performance of your storage backend. + +### Run an IO Test + +To start a new IO benchmark: + + + 1. Navigate to the **IO Test** tab. + 2. Click the **Create** button. + 3. Configure the test parameters: + * **Target**: Select the storage target (e.g., Ceph Block Pool or NFS). + * **Access Mode**: Choose the I/O pattern (Read, Write, Random Read, Random Write, etc.). + * **Block Size**: Set the size of I/O units (e.g., 4k, 64k). + * **IO Depth**: Define the queue depth for asynchronous I/O. + * **Run Time**: Set the duration of the test. + 4. Click **Confirm** to start the test. + + +### Understanding Results + +Once the test completes, the results table displays key metrics: + +* **IOPS**: Input/Output Operations Per Second. Higher is better for transactional workloads. +* **Bandwidth**: Data transfer rate (MB/s). Higher is better for streaming workloads. +* **Latency**: The time taken to complete an I/O request (Min, Max, Mean). Lower is better. + +## Object Storage Test (Warp) + +Warp is a high-performance S3 benchmarking tool. It is designed to measure the throughput and latency of object storage services. + +### Run an Object Storage Test + +To start a new Object Storage benchmark: + + + 1. Navigate to the **Object Storage Test** tab. + 2. Click the **Create** button. + 3. Configure the test parameters: + * **Target**: Select an internal service (Ceph, MinIO) or configure an external S3 endpoint (Host, Access Key, Secret Key). + * **Operation**: Choose the operation to test (PUT, GET, DELETE, etc.). + * **Object Size**: Set the size of the objects used in the test. + * **Duration**: Set the duration of the benchmark. + * **Concurrency**: (Optional) Adjust the number of concurrent operations. + 4. Click **Confirm** to start the test. + + +### Understanding Results + +The results table provides insights into the object storage performance: + +* **Throughput**: The speed of data transfer (Fastest, Median, Slowest). +* **Operations**: The rate of object operations (OPS). +* **Total Transferred**: The total amount of data and number of objects processed during the test. diff --git a/src/content/docs/v0.6/service/settings/03-data-volume.mdx b/src/content/docs/v0.6/service/settings/03-data-volume.mdx new file mode 100644 index 0000000..3746b1b --- /dev/null +++ b/src/content/docs/v0.6/service/settings/03-data-volume.mdx @@ -0,0 +1,68 @@ +--- +title: Data Volume +description: Manage persistent storage volumes for Virtual Machines. +slug: v0.6/servicesettings/03-data-volume +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Data Volume page allows you to manage persistent storage volumes (DataVolumes) used by Virtual Machines in the OtterScale cluster. DataVolumes provide a way to automate the importing, cloning, and uploading of data into Persistent Volume Claims (PVCs). + +## Introduction + +The Data Volume page displays a list of configured DataVolumes. The table includes the following information: + +| Column | Description | +| :------------ | :---------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the DataVolume. | +| **Namespace** | The Kubernetes namespace where the DataVolume resides. | +| **Phase** | The current status of the DataVolume (e.g., Succeeded, ImportInProgress). | +| **Source** | The source of the data (e.g., HTTP URL, Blank Image, PVC). Hovering over the badge reveals detailed source information. | +| **Progress** | The progress of the data import or clone operation. | +| **Size** | The capacity of the volume. | + +## Manage Data Volumes + +You can create new DataVolumes or manage existing ones using the **Actions** menu. + +### Create a New Data Volume + +To create a new DataVolume: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Data Volume" will appear. + + 3. **Configuration**: + + * **Name**: Enter a unique name for the DataVolume. + * **Namespace**: Specify the namespace (defaults to `default`). + * **Size**: Set the capacity of the volume (e.g., 10 GB). + * **Source**: Enter the URL of the source image (e.g., a cloud image URL). You can use the "Cloud Image" button to find common Ubuntu cloud images. + + 4. Click **Confirm** to create the DataVolume. + + +### Data Volume Actions + +The **Actions** menu (three dots icon) for each DataVolume provides the following options: + +#### Extend + +Allows you to increase the size of an existing DataVolume. + + + 1. Select **Extend** from the actions menu. + 2. Enter the new, larger size for the volume. + 3. Click **Confirm** to apply the changes. + + +#### Delete + +Permanently removes the DataVolume and its associated data. + + diff --git a/src/content/docs/v0.6/service/settings/04-instance-type.mdx b/src/content/docs/v0.6/service/settings/04-instance-type.mdx new file mode 100644 index 0000000..b16d684 --- /dev/null +++ b/src/content/docs/v0.6/service/settings/04-instance-type.mdx @@ -0,0 +1,57 @@ +--- +title: Instance Type +description: Manage hardware profiles for Virtual Machines. +slug: v0.6/servicesettings/04-instance-type +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Instance Type page allows you to define and manage hardware profiles (InstanceTypes) for Virtual Machines. An InstanceType specifies the CPU and Memory resources allocated to a VM. + +## Introduction + +The Instance Type page displays a list of available hardware profiles. The table includes the following information: + +| Column | Description | +| :-------------- | :---------------------------------------------------------------- | +| **Name** | The name of the Instance Type (e.g., `small`, `medium`, `large`). | +| **Namespace** | The Kubernetes namespace where the Instance Type is defined. | +| **CPU Cores** | The number of virtual CPU cores allocated. | +| **Memory** | The amount of RAM allocated. | +| **Create Time** | The timestamp when the Instance Type was created. | + +## Manage Instance Types + +You can create new Instance Types or manage existing ones using the **Actions** menu. + +### Create a New Instance Type + +To define a new hardware profile: + + + 1. Click the **Create** button (plus icon) at the top of the page. + + 2. A modal window titled "Create Instance Type" will appear. + + 3. **Configuration**: + + * **Name**: Enter a unique name for the Instance Type. + * **Namespace**: Specify the namespace (defaults to `default`). + * **CPU Cores**: Enter the number of CPU cores. + * **Memory**: Set the amount of memory (e.g., 4 GB). + + 4. Click **Confirm** to create the Instance Type. + + +### Instance Type Actions + +The **Actions** menu (three dots icon) for each Instance Type provides the following options: + +#### Delete + +Permanently removes the Instance Type. + + diff --git a/src/content/docs/v0.6/service/settings/05-model-artifact.mdx b/src/content/docs/v0.6/service/settings/05-model-artifact.mdx new file mode 100644 index 0000000..3df3d1b --- /dev/null +++ b/src/content/docs/v0.6/service/settings/05-model-artifact.mdx @@ -0,0 +1,56 @@ +--- +title: Model Artifact +description: Manage model files and weights for AI/ML models. +slug: v0.6/servicesettings/05-model-artifact +--- + +import { Steps, Aside } from '@astrojs/starlight/components'; + +The Model Artifact page allows you to manage model artifacts for your AI/ML models. You can upload, view, and delete model artifacts associated with different models and namespaces. + +## Introduction + +The Model Artifact page displays a list of all model artifacts. The table includes the following columns: + +| Column | Description | +| :-------------- | :----------------------------------------------------------------- | +| **Name** | The name of the model artifact. | +| **Namespace** | The Kubernetes namespace where the artifact is stored. | +| **Model Name** | The name of the associated model. | +| **Status** | The current job status for downloading or processing the artifact. | +| **Phase** | The current phase/status of the artifact. | +| **Size** | The size of the artifact (GB/TB). | +| **Volume** | The volume name where the artifact is stored. | +| **Create Time** | The timestamp when the artifact was created. | +| **Actions** | Management actions (delete). | + +## Manage Model Artifacts + +You can create new model artifacts or manage existing ones using the **Actions** menu. + +### Create a New Model Artifact + +To upload a new model artifact: + + + 1. Click the **Create** button (plus icon) at the top of the page. + 2. A modal window titled "Create Model Artifact" will appear. + 3. **Configuration**: + * **Name**: Enter a unique name for the artifact. + * **Namespace**: Select the namespace (usually `llm-d`). + * **Model Name**: Select the model name (supports Hugging Face models). + * **Size**: Set the artifact size (GB/TB). + 4. Click **Confirm** to create the model artifact. + + +### Model Artifact Actions + +The **Actions** menu (trash icon) for each model artifact provides the following option: + +#### Delete + +Permanently removes the model artifact. + + diff --git a/src/content/docs/v0.6/service/storage/01-osd.mdx b/src/content/docs/v0.6/service/storage/01-osd.mdx new file mode 100644 index 0000000..5e7bf6c --- /dev/null +++ b/src/content/docs/v0.6/service/storage/01-osd.mdx @@ -0,0 +1,56 @@ +--- +title: OSD +description: Monitor and manage Object Storage Daemons (OSDs). +slug: v0.6/servicestorage/01-osd +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +The OSD (Object Storage Daemon) page provides a detailed overview of the storage daemons in your Ceph cluster.\ +Each OSD represents a logical disk that maps to an underlying physical device such as NVMe, SSD, or HDD. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of OSD capacity and availability across the cluster: + + + + The total number of OSDs detected by the cluster. + + + + The percentage of overall raw storage usage across all OSDs. + + + +## Introduction + +The OSD page lists all Object Storage Daemons currently available in the cluster. +Each row represents one OSD instance and includes the following information: + +| Column | Description | +| :------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------ | +| **Name** | The unique identifier of the OSD (e.g., `osd.0`). | +| **State** | Indicates the operational status. **Up** means the daemon is running. **In** means the OSD is included in the CRUSH map and is storing data. | +| **Exists** | Shows whether the OSD physically exists and is recognized by the cluster. | +| **Device Class** | The storage device type assigned to the OSD, such as `hdd`, `ssd`, or `nvme`. This information helps determine data placement and CRUSH behavior. | +| **Machine** | The hostname of the node hosting the OSD. Selecting the hostname opens the machine detail page. | +| **Placement Group** | The number of Placement Groups (PGs) currently assigned to the OSD. | +| **Usage** | A visual indicator showing the used and total storage capacity of the OSD (Used Space / Total Space). | +| **IOPS** | A real-time chart showing input and output operations per second (Input vs. Output). | +| **Throughput** | A real-time chart showing read and write data throughput (Read vs. Write). | + +## Manage OSDs + +Each OSD provides an Actions menu for administrative operations. + +#### View SMART + +Retrieves S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) information from the physical disk associated with the OSD.\ +This data helps assess hardware health and identify potential failures. + + + 1. Open the Actions menu for the selected OSD. + 2. Click **Do S.M.A.R.T.** + 3. A dialog will appear showing the full S.M.A.R.T. report for the device. + diff --git a/src/content/docs/v0.6/service/storage/02-pool.mdx b/src/content/docs/v0.6/service/storage/02-pool.mdx new file mode 100644 index 0000000..25b1c08 --- /dev/null +++ b/src/content/docs/v0.6/service/storage/02-pool.mdx @@ -0,0 +1,80 @@ +--- +title: Pool +description: Manage Ceph storage pools. +slug: v0.6/servicestorage/02-pool +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +The Pool page allows you to manage Ceph storage pools, which are logical partitions for storing objects. Pools provide a layer of abstraction between clients and the underlying OSDs, allowing you to configure data durability, availability, and performance policies. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of pool configuration within the cluster: + + + + The total number of storage pools currently defined in the system. + + + +## Introduction + +The Pool page displays a list of all storage pools. The table includes the following information: + +| Column | Description | +| :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the pool. A spinner icon indicates if the pool is currently updating. | +| **Type** | The type of the pool, either `Replicated` (copies data) or `Erasure` (uses erasure coding for efficiency). It also displays configuration details like replica count or erasure coding profile (k+m). | +| **Applications** | The applications enabled for this pool (e.g., `rbd`, `cephfs`, `rgw`). | +| **PG State** | The state of the Placement Groups (PGs) within the pool (e.g., `active`, `clean`, `degraded`). | +| **Usage** | A progress bar indicating the amount of data stored in the pool relative to its total logical capacity. | + +## Create Pool + +You can create new storage pools to meet specific application requirements. +The create dialog includes configuration fields for pool type, replica size or erasure coding settings, application assignment, and optional quotas. + + + 1. Click the **Create** button. + 2. **Name**: Enter a unique name for the pool. + 3. **Type**: Select the pool type: + * **Replicated**: Stores multiple copies of data. Ideal for high performance and fast recovery. + * **Replicated Size**: Specify the number of replicas (e.g., 3). + * **Erasure**: Uses erasure coding to save space. Ideal for cold storage or large datasets. + * **EC Overwrite**: Enable if you need to support overwrites (required for RBD/CephFS on EC pools). + 4. **Quota**: Optionally set limits on the pool's usage: + * **Max Bytes**: The maximum amount of data (in GB or TB) the pool can store. + 5. **Advanced Settings (Optional)**: + * **Max Objects**: The maximum number of objects the pool can store. + 6. Click **Confirm** to create the pool. + + +## Manage Pools + +You can modify or delete existing pools using the **Actions** menu. + +### Edit Pool + +Allows you to modify the pool's configuration, such as quotas. + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Quota Size**, or **Quota Objects** as needed. + 3. Click **Confirm** to save changes. + + +### Delete Pool + +Permanently removes a storage pool and all its data. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the name of the pool to confirm deletion. + 3. Click **Confirm** to permanently delete the pool. + + + diff --git a/src/content/docs/v0.6/service/storage/03-block-device.mdx b/src/content/docs/v0.6/service/storage/03-block-device.mdx new file mode 100644 index 0000000..aebe8d7 --- /dev/null +++ b/src/content/docs/v0.6/service/storage/03-block-device.mdx @@ -0,0 +1,105 @@ +--- +title: Block Device +description: Manage Ceph RADOS Block Devices (RBD). +slug: v0.6/servicestorage/03-block-device +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +The Block Device page allows you to manage Ceph RADOS Block Devices (RBD). RBDs are block-based storage devices that are striped across the cluster, providing high-performance and reliable storage for virtual machines, containers, and other applications. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of RBD images stored in the cluster: + + + + The total number of RADOS Block Device (RBD) images currently stored across all pools. + + + + Displays the aggregated storage usage of all block device images, including total used capacity and total provisioned quota. + + + +## Introduction + +The Block Device page displays a list of all RBD images. The table includes the following information: + +| Column | Description | +| :------------ | :----------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | The name of the block device image. | +| **Pool Name** | The storage pool where the image is stored. | +| **Usage** | A progress bar showing the storage capacity usage (Used Space / Quota Size). | +| **Snapshots** | The number of snapshots taken of this block device. Clicking the external link icon opens a detailed view of the [snapshots](#manage-snapshots). | + +## Create Block Device + +You can create new block devices to provide storage for your applications. + + + 1. Click the **Create** button. + 2. **Image Name**: Enter a unique name for the block device. + 3. **Pool Name**: Select the storage pool to host the image. + 4. **Quota Size**: Specify the size of the block device (e.g., 100 GB). + 5. **Advanced Settings** (Optional): + * **Striping**: Configure **Object Size**, **Stripe Unit**, and **Stripe Count** to optimize performance for specific workloads. + * **Features**: Enable or disable RBD features like **Layering**, **Exclusive Lock**, **Object Map**, **Fast Diff**, and **Deep Flatten**. + 6. Click **Confirm** to create the block device. + + +## Manage Block Devices + +You can modify or delete existing block devices using the **Actions** menu. + +### Edit Block Device + +Allows you to expand or shrink the block device. + + + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Quota Size** to increase the device size. + 3. Click **Confirm** to save changes. + + +### Delete Block Device + +Permanently removes a block device and all its data. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the name of the image to confirm deletion. + 3. Click **Confirm** to permanently delete the block device. + + + + +## Manage Snapshots + +Snapshots provide a read-only copy of the block device state at a specific point in time. You can view and manage snapshots by clicking the external link icon in the **Snapshots** column. + +### Snapshot List + +The snapshot list displays the following information: + +| Column | Description | +| :---------- | :------------------------------------------------------------------------------ | +| **Name** | The name of the snapshot. | +| **Protect** | Indicates whether the snapshot is protected from deletion. | +| **Usage** | A progress bar showing the storage usage of the snapshot. | + +### Snapshot Actions + +The **Actions** menu for each snapshot provides the following options: + +* **Rollback**: Reverts the block device to the state captured in the snapshot. **Note**: This will discard any changes made since the snapshot was taken. +* **Protect**: Prevents the snapshot from being deleted. Useful for critical backups. +* **Unprotect**: Removes the protection, allowing the snapshot to be deleted. +* **Delete**: Permanently removes the snapshot. diff --git a/src/content/docs/v0.6/service/storage/04-file-system.mdx b/src/content/docs/v0.6/service/storage/04-file-system.mdx new file mode 100644 index 0000000..e0d16ba --- /dev/null +++ b/src/content/docs/v0.6/service/storage/04-file-system.mdx @@ -0,0 +1,220 @@ +--- +title: File System +description: Manage Ceph File Systems (CephFS) and NFS exports. +slug: v0.6/servicestorage/04-file-system +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +The File System page allows you to manage Ceph File Systems (CephFS) and Network File System (NFS) exports. CephFS provides a POSIX-compliant file system on top of the Ceph cluster, while NFS exports allow you to share these file systems with standard NFS clients. + +The page is divided into two main sections: **NFS** and **Group**. + +## NFS + +The NFS section allows you to manage subvolumes and export them via NFS. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of NFS exports configured in the system: + + + + The total number of NFS exports created from CephFS subvolumes. + + + +### Introduction + +The NFS table displays a list of subvolumes. The table includes the following information: + +| Column | Description | +| :--------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **Name** | The name of the subvolume. | +| **Pool Name** | The data pool where the subvolume is stored. | +| **Export** | Displays the NFS export host. Click the information icon in the Export column to view the export IP, path, allowed clients, and the mount command. Use the copy icon to copy the mount command directly. | +| **Usage** | A progress bar showing the storage capacity usage (Used Space / Quota Size). | +| **Created Time** | Displays how long ago the NFS export was created, relative to the current time. | +| **Snapshots** | The number of snapshots taken of this subvolume. Clicking the external link icon opens a detailed view of the [snapshots](#snapshot-list). | + +### Create NFS Export + +You can create new subvolumes and export them via NFS. + + + 1. Click the **Create** button. + 2. **Name**: Enter a unique name for the subvolume. + 3. **Group**: Displays the current subvolume group (default is `default`). + 4. **Quota Size**: Specify the size limit for the subvolume (e.g., 10 GB). + 5. Click **Confirm** to create the subvolume. + + +### Mount NFS Export + +After an NFS export is created and access is granted, clients can mount the export using standard NFS commands. + +#### Prerequisites + +* An NFS export has been created. +* The client IP address (or CIDR range) has been granted access to the export. +* The client has NFS utilities installed. + + + 1. Open the information icon in the Export column of the NFS table. + 2. Copy the mount command using the copy icon. + 3. Log in to the target client machine. + 4. Create a mount directory if it does not already exist: + ```bash + sudo mkdir -p /mnt/nfs + ``` + 5. Run the copied mount command: + ```bash + sudo mount -t nfs4 -o nfsvers=4.1 -v : /mnt/nfs + ``` + 6. Verify that the file system is mounted successfully: + ```bash + mount | grep nfs + ``` + + +### Manage NFS Exports + +You can manage access, modify quotas, or delete NFS exports using the **Actions** menu. + +#### Grant/Revoke Access + +Control which clients can access the NFS export. + +* **Grant Access**: Adds a client IP address to the allowed list. For example, You can specify a single IP address 192.168.10.151 or a CIDR range 192.168.10.0/24. +* **Revoke Access**: Removes a client IP address from the allowed list. + +#### Edit NFS Export + +Allows you to resize the subvolume quota. + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Quota Size**. + 3. Click **Confirm** to save changes. + + +#### Delete NFS Export + +Permanently removes the subvolume and its export. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the name of the subvolume to confirm deletion. + 3. Click **Confirm** to permanently delete the subvolume. + + + + +### Manage Snapshots + +Snapshots provide a read-only copy of the subvolume at a specific point in time. You can view and manage snapshots by clicking the external link icon in the **Snapshots** column. + +#### Snapshot List + +The snapshot list displays the following information: + +| Column | Description | +| :----------------- | :---------------------------------------------------------------------------- | +| **Name** | The name of the snapshot. | +| **Pending Clones** | Indicates if there are any pending clones based on this snapshot. | +| **Created Time** | Displays how long ago the snapshot was created, relative to the current time. | + +#### Snapshot Actions + +#### Create Snapshot + +Create Snapshot allows you to capture a read-only point-in-time copy of the subvolume. + + + 1. Click the external link icon in the Snapshots column to open the snapshot list. + 2. Click the Create button. + 3. Name: Enter a unique name for the snapshot. + 4. Click Confirm to create the snapshot. + + +#### Delete Snapshot + +Delete Snapshot permanently removes an existing snapshot. + + + 1. Click the external link icon in the Snapshots column to open the snapshot list. + 2. Open the Actions menu for the target snapshot. + 3. Select Delete. + 4. Type the name of the snapshot to confirm deletion. + 5. Click Confirm to permanently delete the snapshot. + + + + +## Group + +The Group section allows you to manage subvolume groups, which are used to organize subvolumes. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of subvolume groups configured in the file system: + + + + The total number of subvolume groups defined in the file system. + + + +### Introduction + +The Group table displays a list of subvolume groups. The table includes the following information: + +| Column | Description | +| :--------------- | :----------------------------------------------------------------------------------- | +| **Name** | The name of the subvolume group. | +| **Pool Name** | The data pool associated with the group. | +| **Usage** | A progress bar showing the cumulative usage of all subvolumes in the group. | +| **Created Time** | Displays how long ago the subvolume group was created, relative to the current time. | + +### Create Group + +You can create new subvolume groups to organize your file systems. + + + 1. Click the **Create** button. + 2. **Name**: Enter a unique name for the group. + 3. **Quota Size**: Optionally set a quota for the group. + 4. Click **Confirm** to create the group. + + +### Manage Groups + +#### Edit Group + +Allows you to resize the group quota. + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Quota Size**. + 3. Click **Confirm** to save changes. + + +#### Delete Group + +Permanently removes a subvolume group. + + + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the name of the group to confirm deletion. + 3. Click **Confirm** to permanently delete the group. + + + diff --git a/src/content/docs/v0.6/service/storage/05-smb.mdx b/src/content/docs/v0.6/service/storage/05-smb.mdx new file mode 100644 index 0000000..697fa1a --- /dev/null +++ b/src/content/docs/v0.6/service/storage/05-smb.mdx @@ -0,0 +1,74 @@ +--- +title: SMB +description: Manage Samba (SMB) shares. +slug: v0.6/servicestorage/05-smb +--- + +import { Steps, Card, CardGrid } from '@astrojs/starlight/components'; + +The SMB page allows you to manage Samba (SMB) shares, enabling file sharing across your network with Windows and other SMB-compatible clients. You can configure security modes, user access, and share properties. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of SMB shares configured in the system: + + + + The total number of SMB shares currently defined in the system. + + + +## Introduction + +The SMB table displays a list of all SMB shares. The table includes the following information: + +| Column | Description | +| :--------------- | :------------------------------------------------------------------------------------------------------------- | +| **URI** | The connection URI for the share (e.g., `smb:///`). | +| **Health** | The health status of the share. | +| **Size** | The allocated storage size for the share. | +| **Browsable** | Indicates if the share is visible in network browsing lists. | +| **Read Only** | Indicates if the share is read-only. | +| **Guest OK** | Indicates if guest access (no password) is allowed. | +| **Map To Guest** | Specifies how login requests with invalid credentials are handled (e.g., `Never`, `Bad User`, `Bad Password`). | +| **Mode** | The security mode of the share (`User` or `Active Directory`). | +| **Valid Users** | A list of users or groups allowed to access the share. | + +## Create SMB Share + +You can create new SMB shares to expose storage to your network. + + + 1. Click the **Create** button. + 2. **Name**: Enter a unique name for the share. + 3. **Port**: Optionally specify a custom port (use 445 port for Windows client). + 4. **Size**: Specify the storage size for the share (e.g., 100 GB). + 5. **Common Configuration**: + * **Map To Guest**: Configure how to handle guest access. + 6. **Security Configuration**: + * **Mode**: Select **User** (local users) or **Active Directory**. + * **Local Users** (User Mode): Manage local username and password credentials. + * **Realm** (AD Mode): Enter the Active Directory realm. + * **Join Source** (AD Mode): Provide credentials to join the domain. + * **Valid Users**: Specify which users or groups are allowed to access the share. + 7. **Share Settings**: + * **Browsable**: Toggle to make the share visible. + * **Read Only**: Toggle to prevent write access. + * **Guest Accessible**: Toggle to allow access without authentication. + 8. Click **Confirm** to create the SMB share. + + +## Manage SMB Shares + +You can modify existing SMB shares using the **Actions** menu. + +### Edit SMB Share + +Allows you to update the share's configuration, including size, security settings, and access controls. + + + 1. Select **Update** from the actions menu (pencil icon). + 2. Update the desired settings. + 3. Click **Confirm** to save changes. + 4. Wait a few minutes for the settings to take effect. + diff --git a/src/content/docs/v0.6/service/storage/06-object.mdx b/src/content/docs/v0.6/service/storage/06-object.mdx new file mode 100644 index 0000000..221edd6 --- /dev/null +++ b/src/content/docs/v0.6/service/storage/06-object.mdx @@ -0,0 +1,205 @@ +--- +title: Object +description: Manage Ceph Object Gateway (RGW) buckets and users. +slug: v0.6/servicestorage/06-object +--- + +import { Steps, Aside, Card, CardGrid } from '@astrojs/starlight/components'; + +The Object page allows you to manage the Ceph Object Gateway (RGW), which provides an S3-compatible object storage interface. You can manage buckets for storing objects and users for controlling access. + +The page is divided into two main sections: **Bucket** and **User**. + +## Bucket + +The Bucket section allows you to manage S3 buckets. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of S3 storage: + + + + The total number of S3 buckets currently defined in the system. + + The RGW endpoint IP that clients use to access the bucket via S3-compatible APIs. + + + + The combined storage consumption across all buckets, including object data and metadata overhead. + + + +### Introduction + +The Bucket table displays a list of all buckets. The table includes the following information: + +| Column | Description | +| :--------------- | :-------------------------------------------------------------------------- | +| **Name** | The name of the bucket. | +| **Owner** | The user ID of the bucket owner. | +| **Usage** | The total size of objects stored in the bucket. | +| **Created Time** | Displays how long ago the bucket was created, relative to the current time. | + +### Create Bucket + +You can create new buckets to store your data. + + + 1. Click the **Create** button. + 2. **Name**: Enter a unique name for the bucket. + 3. **Owner**: Select the owner of the bucket from the list of users. + 4. **Policy** (Optional): Enter a JSON policy to define access permissions. You can use the provided links to generate or reference AWS policies. + 5. **Access Control List** (Optional): Select a canned ACL (e.g., `private`, `public-read`) to define basic access permissions. + 6. Click **Confirm** to create the bucket. + + +### Access Bucket with S3 Browser + +This section demonstrates how to access a Ceph Object Gateway (RGW) bucket using S3 Browser, a graphical S3 client. +This approach is useful for manual verification, browsing objects, and basic upload/download operations without writing code. + +#### Prerequisites + +* S3 Browser installed on the client machine (Windows). + + + 1. Create a user in User section. + 2. Create an access key for the user and copy the secret key. + 3. Create a bucket and assign the user as the owner. The bucket owner always has full control of the bucket regardless of the selected ACL. + 4. Open S3 Browser. + 5. Fill in the account settings: + * Account type: S3 compatible storage + * API endpoint: RGW endpoint + * Access Key ID: User’s access key. + * Secret Access Key: The copied secret key. + * Use secure transfer: Disable SSL + 6. Add new account + + +### Manage Buckets + +You can modify or delete existing buckets using the **Actions** menu. + +#### Edit Bucket + +Allows you to update the bucket's owner, policy, or ACL. + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Owner**, **Policy**, or **Access Control List** as needed. + 3. Click **Confirm** to save changes. + + +#### Delete Bucket + +Permanently removes a bucket and all its objects. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the name of the bucket to confirm deletion. + 3. Click **Confirm** to permanently delete the bucket. + + + + +## User + +The User section allows you to manage RGW users and their access keys. + +### Statistics Overview + +At the top of the page, you will find a dashboard summarizing the state of S3 user management: + + + + The total number of S3 users registered in the system. + + + +### Introduction + +The User table displays a list of all users. The table includes the following information: + +| Column | Description | +| :------------ | :---------------------------------------------------------------------------------------------------------------------------------- | +| **ID** | The unique identifier of the user. | +| **Name** | The display name of the user. | +| **Suspended** | Indicates whether the user account is suspended. | +| **Key** | The number of access keys associated with the user. Clicking the external link icon opens a detailed view of the [keys](#key-list). | + +### Create User + +You can create new users to access the object storage. + + + 1. Click the **Create** button. + 2. **ID**: Enter a unique identifier for the user. + 3. **Name**: Enter a display name for the user. + 4. **Suspend**: Toggle to create the user in a suspended state. + 5. Click **Confirm** to create the user. + + +### Manage Users + +You can modify or delete existing users using the **Actions** menu. + +#### Edit User + +Allows you to update the user's name or suspension status. + + + 1. Select **Edit** from the actions menu (pencil icon). + 2. Update the **Name** or **Suspend** status. + 3. Click **Confirm** to save changes. + + +#### Delete User + +Permanently removes a user. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Type the ID of the user to confirm deletion. + 3. Click **Confirm** to permanently delete the user. + + + + +### Manage Keys + +Access keys are used to authenticate requests to the object storage service. You can view and manage keys by clicking the external link icon in the **Key** column. + +#### Key List + +The key list displays the following information: + +| Column | Description | +| :------------- | :------------------------------------------- | +| **Access Key** | The access key ID. | + +#### Create Key + +You can generate new access keys for a user. + + + 1. Click the **Create** button within the key management view. + 2. The system will generate a new access key and secret key. + + +#### Delete Key + +Permanently removes an access key. + + + 1. Select **Delete** from the actions menu (trash icon). + 2. Confirm the deletion. + + + diff --git a/src/content/versions/v0.6.json b/src/content/versions/v0.6.json new file mode 100644 index 0000000..39452c9 --- /dev/null +++ b/src/content/versions/v0.6.json @@ -0,0 +1,121 @@ +{ + "sidebar": [ + { + "label": "Introduction", + "slug": "introduction", + "translations": { + "zh-Hant": "簡介" + } + }, + { + "label": "Getting Started", + "translations": { + "zh-Hant": "開始使用" + }, + "autogenerate": { + "directory": "getting-started" + } + }, + { + "label": "Basic", + "translations": { + "zh-Hant": "基本" + }, + "items": [ + { + "label": "Machines", + "translations": { + "zh-Hant": "機器" + }, + "slug": "basic/machines" + }, + { + "label": "Networking", + "translations": { + "zh-Hant": "網路" + }, + "slug": "basic/networking" + }, + { + "label": "Configuration", + "translations": { + "zh-Hant": "設定" + }, + "autogenerate": { + "directory": "basic/configuration" + } + } + ] + }, + { + "label": "Service", + "translations": { + "zh-Hant": "服務" + }, + "items": [ + { + "label": "Compute", + "translations": { + "zh-Hant": "計算" + }, + "slug": "service/compute" + }, + { + "label": "Models", + "translations": { + "zh-Hant": "模型" + }, + "slug": "service/models" + }, + { + "label": "Repositories", + "translations": { + "zh-Hant": "儲存庫" + }, + "slug": "service/repositories" + }, + { + "label": "Applications", + "translations": { + "zh-Hant": "應用" + }, + "autogenerate": { + "directory": "service/applications" + } + }, + { + "label": "Storage", + "translations": { + "zh-Hant": "儲存" + }, + "autogenerate": { + "directory": "service/storage" + } + }, + { + "label": "Settings", + "translations": { + "zh-Hant": "設定" + }, + "autogenerate": { + "directory": "service/settings" + } + } + ] + }, + { + "label": "Demos", + "translations": { + "zh-Hant": "演示範例" + }, + "autogenerate": { + "directory": "demos" + } + }, + { + "collapsed": false, + "items": [], + "label": "Symbol(StarlightOpenAPISidebarGroupsLabel)" + } + ] +} \ No newline at end of file