註:筆者居住於韓國,部分內容包含韓國特有的背景。
1. 前言
Sealed Secrets 整體上都不錯,但有一個問題:每次設定時都要建立 Secrets.yaml,再用 CLI 轉換為 Sealed Secrets,然後加入 Git,這個過程實在非常繁瑣。
為了讓這個過程更輕鬆,我打算使用 kubeseal-webgui 簡單地建立一個 Web UI。

2. 安裝
我們再次使用 ArgoCD 來簡單安裝吧!
modules/sealed-secrets-system/kubeseal-webgui.yaml
# https://github.com/Jaydee94/kubeseal-webgui
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: kubeseal-webgui
namespace: argocd
spec:
destination:
namespace: sealed-secrets-system
server: 'https://kubernetes.default.svc'
source:
repoURL: 'https://jaydee94.github.io/kubeseal-webgui'
targetRevision: 5.1.4
chart: kubeseal-webgui
helm:
parameters:
- name: api.url
value: https://<web ui를 사용할 subdomain 예시:seal.lemon.com>
- name: sealedSecrets.autoFetchCert
value: 'true'
- name: sealedSecrets.controllerName
value: sealed-secrets
- name: sealedSecrets.controllerNamespace
value: sealed-secrets-system
sources: []
project: defaultmodules/sealed-secrets-system/ingress.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: sealed-secrets-ingress
namespace: sealed-secrets-system
spec:
tls:
certResolver: le
routes:
- kind: Rule
match: Host(`<web ui를 사용할 subdomain 예시:seal.lemon.com>`)
services:
- name: kubeseal-webgui
port: 8080如有需要,可參考上一篇文章 來新增 Basic Auth。
之後就可以透過該 UI 輕鬆建立 Sealed Secrets 了!

Comments