diff --git a/kubernetes/k3s-3xui-pod.md b/kubernetes/k3s-3xui-pod.md index 3102993..ee58f80 100644 --- a/kubernetes/k3s-3xui-pod.md +++ b/kubernetes/k3s-3xui-pod.md @@ -34,7 +34,7 @@ NAME STATUS AGE x-ui Active 6s ``` -## Развёртывание 3X-UI +## Простое развёртывание 3X-UI в поде Cоздадим манифест развертывания пода (этого YAML-файл с инструкциями для K3s, что и как запустить). Мы будем использовать SQLite как внутреннюю базу данных 3x-ui, и пока эта бызы будет храниться внутри пода. Позже сможем @@ -122,6 +122,8 @@ WARNING - XRAY: core: Xray 25.3.6 started пользователей, менять логин и пароль на вход и т.д. Веб-интерфейс 3x-ui интуитивно понятен, так что разбираться не составит труда. +## Развертывание Kubernetes пода 3x-ui с постоянным хранилищем (PVC) + Есть, конечно, у 3x-ui под k3s минусы. В частности, внутри пода (`sudo kubectl exec -it -n x-ui x-ui-... -- /bin/sh`) не будет работать командный интерфейс 3x-ui (`x-ui admin`). Поды k3s работают на **Alpine**, а там некоторые команды отличаются (например, нет `bash`, а только `ash`). Но web-панель работает как положено, и всё управление удобнее @@ -198,12 +200,12 @@ spec: image: ghcr.io/mhsanaei/3x-ui:latest # image: enwaiax/x-ui:latest # альтернативный облегчённый: меньше способов шифрования и китайский интерфейс volumeMounts: - - name: db-storage - mountPath: /etc/x-ui # Путь к базе данных внутри контейнера + - name: db-storage # Имя тома, в который будет смонтирован... + mountPath: /etc/x-ui # ...в путь к базе данных внутри контейнера volumes: - - name: db-storage - persistentVolumeClaim: - claimName: x-ui-db-pvc # Ссылка на созданный PVC + - name: db-storage # Имя тома, которое... + persistentVolumeClaim: # ...должно быть постоянным хранилищем + claimName: x-ui-db-pvc # ...и размещаться в PVC с именем 'x-ui-db-pvc' ``` Применим обновлённый манифест: @@ -212,7 +214,12 @@ sudo kubectl apply -f ~/k3s/vpn/x-ui/deployment.yaml ``` Под перезапустится, и теперь база данных будет храниться в постоянном хранилище Longhorn. При перезапуске пода или его -"переезде" на другой узел, база данных останется доступной и не потеряется. +"переезде" на другой узел, база данных останется доступной и не потеряется. Следует отметить, что при сбое узла +процесс перемещения пода занимает некоторое время. В кластере на Orange Pi 5, где проверки связности не очень +агрессивные, это может занять до 5 минут. В общем, это нормально. + +## Единая точка входа VPN-соединений через под 3x-ui +