Helm/Fission: Difference between revisions
Jump to navigation
Jump to search
(→Config) |
|||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
helm repo add fission-charts https://fission.github.io/fission-charts | |||
helm repo update && helm repo list | |||
kubectl config get-contexts | |||
==Config== | |||
{| | |||
|valign="top" colspan="2"| | |||
<syntaxhighlight lang="properties"> | |||
export KUBECONFIG="${HOME}/.kube/dev-kubeconfig.yaml" | |||
export KUBECONFIG="${HOME}/.kube/gcp-kubeconfig.yaml" | |||
export KUBECONFIG="${HOME}/.kube/config" | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign='top'| | |||
<syntaxhighlight lang="bash"> | |||
mc alias set local http://s3.host.k8s.local admin | |||
# Enter Secret Key: sadaqah! | |||
mc config host ls | |||
mc admin info local | |||
mc mb local/fission | |||
</syntaxhighlight> | |||
|valign='top'| | |||
<syntaxhighlight lang="bash"> | |||
echo -n password: ;read -s MINIO_PASSWORD;export MINIO_PASSWORD;echo | |||
# password: sadaqah! | |||
mc admin user add local fission ${MINIO_PASSWORD} | |||
mc admin policy attach local diagnostics readwrite consoleAdmin --user fission | |||
mc admin user info local fission | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign='top' colspan="2"| | |||
<syntaxhighlight lang="bash"> | |||
ACCESS_KEY="lJK09A3zwTF7bY2v5yey";\ | |||
SECRET_KEY="umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26";\ | |||
alias mc_admin_add_key="mc admin accesskey create local \ | |||
fission --name=fission --access-key=${ACCESS_KEY} --secret-key=${SECRET_KEY}" | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign='top' colspan="2"| | |||
<syntaxhighlight lang="json"> | |||
cat <<JSN | mc_admin_add_key --policy=/dev/stdin | |||
{ | |||
"Version":"2012-10-17", | |||
"Statement":[ | |||
{"Effect":"Allow","Action":["kms:*"]}, | |||
{"Effect":"Allow","Action":["admin:*"]}, | |||
{"Effect":"Allow","Action":["s3:*"],"Resource":["arn:aws:s3:::fission"]}, | |||
{"Effect":"Allow","Action":[ | |||
"admin:BandwidthMonitor", | |||
"admin:TopLocksInfo", | |||
"admin:ServerTrace", | |||
"admin:ConsoleLog", | |||
"admin:Prometheus", | |||
"admin:ServerInfo", | |||
"admin:Profiling", | |||
"admin:OBDInfo" | |||
],"Resource":["arn:aws:s3:::fission"] | |||
} | |||
] | |||
} | |||
JSN | |||
</syntaxhighlight> | |||
|} | |||
==Install== | |||
{| | |||
|valign="top"| | |||
<syntaxhighlight lang="bash"> | |||
kubectl get ns|grep fission | |||
kubectl delete ns fission | |||
</syntaxhighlight> | |||
|valign="top"| | |||
<syntaxhighlight lang="bash"> | |||
kubectl get ns|grep fission | |||
kubectl create ns fission | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign='top' colspan="2"| | |||
<syntaxhighlight lang="bash"> | |||
export FISSION_NAMESPACE="fission" | |||
kubectl create -k "github.com/fission/fission/crds/v1?ref=v1.20.5" | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign="top"| | |||
<syntaxhighlight lang="yaml" highlight="8-14"> | |||
cat <<YML | helm -n fission install fission fission-charts/fission-all --version=v1.20.5 -f - | |||
--- | |||
serviceType: ClusterIP | |||
routerServiceType: LoadBalancer | |||
persistence: | |||
enabled: true | |||
storageType: s3 | |||
s3: | |||
endPoint: http://s3.host.k8s.local | |||
bucketName: fission | |||
subDir: serverless | |||
region: us-east-1 | |||
accessKeyId: lJK09A3zwTF7bY2v5yey | |||
secretAccessKey: umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26 | |||
YML | |||
</syntaxhighlight> | |||
|valign="top"| | |||
<syntaxhighlight lang="yaml" highlight="8-14" line> | |||
cat <<YML | helm -n fission install fission fission-charts/fission-all --version=v1.20.5 -f - | |||
--- | |||
serviceType: NodePort | |||
routerServiceType: NodePort | |||
persistence: | |||
enabled: true | |||
storageType: s3 | |||
s3: | |||
endPoint: http://s3.host.k8s.local | |||
bucketName: fission | |||
subDir: serverless | |||
region: us-east-1 | |||
accessKeyId: lJK09A3zwTF7bY2v5yey | |||
secretAccessKey: umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26 | |||
YML | |||
</syntaxhighlight> | |||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign='top' colspan="2"| | |||
<syntaxhighlight lang="bash"> | |||
cat <<-'EXE'|sudo bash | |||
curl -fsSL https://github.com/fission/fission/releases/download/\ | |||
v1.20.5/fission-v1.20.5-linux-amd64 -o /usr/local/bin/fission | |||
chmod +x /usr/local/bin/fission | |||
EXE | |||
fission version | |||
fission --help | |||
fission check | |||
</syntaxhighlight> | |||
|} | |||
==Uninstall== | |||
<syntaxhighlight lang="bash"> | |||
helm uninstall -n fission fission | |||
kubectl delete namespace fission | |||
</syntaxhighlight> | |||
==Serverless== | |||
<syntaxhighlight lang="bash"> | |||
mkdir -p /opt/${USER}/chorke/academia/var/playground/fission | |||
ls -lah /opt/${USER}/chorke/academia/var/playground/fission | |||
ln -s /opt/${USER}/chorke/academia/var/playground/fission ${HOME}/Documents/fission-playground | |||
ls -lah ${HOME}/Documents/fission-playground/ | |||
cd ${HOME}/Documents/fission-playground/ | |||
</syntaxhighlight> | |||
===Serverless » Go=== | |||
---- | |||
<syntaxhighlight lang="bash"> | |||
fission env create --name go --image ghcr.io/fission/go-env --builder ghcr.io/fission/go-builder | |||
curl -fsSL https://raw.githubusercontent.com/fission/examples/main/go/hello-world/hello.go -o hello.go | |||
fission function create --name hello-go --env go --src hello.go --entrypoint Handler | |||
fission function update --name hello-go --env go --src hello.go --entrypoint Handler | |||
fission pkg list | |||
fission route list | |||
fission function list | |||
fission function test --name hello-go | |||
fission function delete --name hello-go | |||
fission pkg delete --name hello-go-<uuid> | |||
</syntaxhighlight> | |||
==Playground== | |||
{| | |||
| colspan="2" | | |||
<syntaxhighlight lang="bash"> | |||
helm -n fission install fission fission-charts/fission-all --version=v1.20.0 | |||
helm -n fission upgrade -i fission fission-charts/fission-all --version=v1.20.5 | |||
helm show values fission-charts/fission-all --version=v1.20.0|less | |||
</syntaxhighlight> | |||
|- | |||
| colspan="2" | | |||
---- | |||
|- | |||
| colspan="2" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl -n fission get configmap feature-config -o json|jq -r '.data."config.yaml"'|base64 -d;echo | |||
kubectl -n fission logs -f svc/webhook-service -c webhook | |||
kubectl -n fission logs -f svc/storagesvc -c storagesvc | |||
kubectl -n fission logs -f svc/executor -c executor | |||
kubectl -n fission logs -f svc/router -c router | |||
</syntaxhighlight> | |||
|- | |||
| colspan="2" | | |||
---- | |||
|- | |||
| colspan="2" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl config --kubeconfig=${HOME}/.kube/aws-kubeconfig.yaml view --flatten | |||
kubectl config --kubeconfig=${HOME}/.kube/dev-kubeconfig.yaml view --flatten | |||
kubectl config --kubeconfig=${HOME}/.kube/gcp-kubeconfig.yaml view --flatten | |||
kubectl config --kubeconfig=${HOME}/.kube/config view --flatten | |||
</syntaxhighlight> | |||
|- | |||
| colspan="2" | | |||
---- | |||
|- | |||
| valign="top" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl -n fission delete all --all | |||
kubectl -n fission delete ing --all | |||
kubectl -n fission delete sts --all | |||
</syntaxhighlight> | |||
| valign="top" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl -n fission delete svc --all | |||
kubectl -n fission delete pvc --all | |||
kubectl -n fission delete pv --all | |||
</syntaxhighlight> | |||
|- | |||
| colspan="2" | | |||
---- | |||
|- | |||
| valign="top" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl -n fission rollout history deploy buildermgr | |||
kubectl -n fission rollout status deploy storagesvc | |||
kubectl -n fission rollout restart deploy executor | |||
</syntaxhighlight> | |||
| valign="top" | | |||
<syntaxhighlight lang="bash"> | |||
kubectl -n fission logs -f svc/storagesvc -c storagesvc | |||
kubectl -n fission logs -f svc/executor -c executor | |||
kubectl -n fission logs -f svc/router -c router | |||
</syntaxhighlight> | |||
|} | |||
==References== | ==References== | ||
{| | {| | ||
Line 5: | Line 275: | ||
* [[Helm/Cert Manager|Helm » Cert Manager]] | * [[Helm/Cert Manager|Helm » Cert Manager]] | ||
* [https://fission.io/docs/installation Helm » Fission] | * [https://fission.io/docs/installation Helm » Fission] | ||
* [[Helm/MinIO|Helm » MinIO]] | |||
* [[Helm]] | * [[Helm]] | ||
Line 32: | Line 303: | ||
* [[K8s/Ingress|K8s » Ingress]] | * [[K8s/Ingress|K8s » Ingress]] | ||
* [[K8s/Service|K8s » Service]] | * [[K8s/Service|K8s » Service]] | ||
* [[MinIO]] | |||
* [[CIDR]] | * [[CIDR]] | ||
* [[UFW]] | * [[UFW]] |
Latest revision as of 10:26, 21 November 2024
helm repo add fission-charts https://fission.github.io/fission-charts helm repo update && helm repo list kubectl config get-contexts
Config
export KUBECONFIG="${HOME}/.kube/dev-kubeconfig.yaml"
export KUBECONFIG="${HOME}/.kube/gcp-kubeconfig.yaml"
export KUBECONFIG="${HOME}/.kube/config"
| |
| |
mc alias set local http://s3.host.k8s.local admin
# Enter Secret Key: sadaqah!
mc config host ls
mc admin info local
mc mb local/fission
|
echo -n password: ;read -s MINIO_PASSWORD;export MINIO_PASSWORD;echo
# password: sadaqah!
mc admin user add local fission ${MINIO_PASSWORD}
mc admin policy attach local diagnostics readwrite consoleAdmin --user fission
mc admin user info local fission
|
| |
ACCESS_KEY="lJK09A3zwTF7bY2v5yey";\
SECRET_KEY="umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26";\
alias mc_admin_add_key="mc admin accesskey create local \
fission --name=fission --access-key=${ACCESS_KEY} --secret-key=${SECRET_KEY}"
| |
| |
cat <<JSN | mc_admin_add_key --policy=/dev/stdin
{
"Version":"2012-10-17",
"Statement":[
{"Effect":"Allow","Action":["kms:*"]},
{"Effect":"Allow","Action":["admin:*"]},
{"Effect":"Allow","Action":["s3:*"],"Resource":["arn:aws:s3:::fission"]},
{"Effect":"Allow","Action":[
"admin:BandwidthMonitor",
"admin:TopLocksInfo",
"admin:ServerTrace",
"admin:ConsoleLog",
"admin:Prometheus",
"admin:ServerInfo",
"admin:Profiling",
"admin:OBDInfo"
],"Resource":["arn:aws:s3:::fission"]
}
]
}
JSN
|
Install
kubectl get ns|grep fission
kubectl delete ns fission
|
kubectl get ns|grep fission
kubectl create ns fission
|
| |
export FISSION_NAMESPACE="fission"
kubectl create -k "github.com/fission/fission/crds/v1?ref=v1.20.5"
| |
| |
cat <<YML | helm -n fission install fission fission-charts/fission-all --version=v1.20.5 -f -
---
serviceType: ClusterIP
routerServiceType: LoadBalancer
persistence:
enabled: true
storageType: s3
s3:
endPoint: http://s3.host.k8s.local
bucketName: fission
subDir: serverless
region: us-east-1
accessKeyId: lJK09A3zwTF7bY2v5yey
secretAccessKey: umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26
YML
|
cat <<YML | helm -n fission install fission fission-charts/fission-all --version=v1.20.5 -f -
---
serviceType: NodePort
routerServiceType: NodePort
persistence:
enabled: true
storageType: s3
s3:
endPoint: http://s3.host.k8s.local
bucketName: fission
subDir: serverless
region: us-east-1
accessKeyId: lJK09A3zwTF7bY2v5yey
secretAccessKey: umVZsDmWNLUY5i3PDz17IhksvmBV5TCnE07GYw26
YML
|
| |
cat <<-'EXE'|sudo bash
curl -fsSL https://github.com/fission/fission/releases/download/\
v1.20.5/fission-v1.20.5-linux-amd64 -o /usr/local/bin/fission
chmod +x /usr/local/bin/fission
EXE
fission version
fission --help
fission check
|
Uninstall
helm uninstall -n fission fission
kubectl delete namespace fission
Serverless
mkdir -p /opt/${USER}/chorke/academia/var/playground/fission
ls -lah /opt/${USER}/chorke/academia/var/playground/fission
ln -s /opt/${USER}/chorke/academia/var/playground/fission ${HOME}/Documents/fission-playground
ls -lah ${HOME}/Documents/fission-playground/
cd ${HOME}/Documents/fission-playground/
Serverless » Go
fission env create --name go --image ghcr.io/fission/go-env --builder ghcr.io/fission/go-builder
curl -fsSL https://raw.githubusercontent.com/fission/examples/main/go/hello-world/hello.go -o hello.go
fission function create --name hello-go --env go --src hello.go --entrypoint Handler
fission function update --name hello-go --env go --src hello.go --entrypoint Handler
fission pkg list
fission route list
fission function list
fission function test --name hello-go
fission function delete --name hello-go
fission pkg delete --name hello-go-<uuid>
Playground
helm -n fission install fission fission-charts/fission-all --version=v1.20.0
helm -n fission upgrade -i fission fission-charts/fission-all --version=v1.20.5
helm show values fission-charts/fission-all --version=v1.20.0|less
| |
| |
kubectl -n fission get configmap feature-config -o json|jq -r '.data."config.yaml"'|base64 -d;echo
kubectl -n fission logs -f svc/webhook-service -c webhook
kubectl -n fission logs -f svc/storagesvc -c storagesvc
kubectl -n fission logs -f svc/executor -c executor
kubectl -n fission logs -f svc/router -c router
| |
| |
kubectl config --kubeconfig=${HOME}/.kube/aws-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/dev-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/gcp-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/config view --flatten
| |
| |
kubectl -n fission delete all --all
kubectl -n fission delete ing --all
kubectl -n fission delete sts --all
|
kubectl -n fission delete svc --all
kubectl -n fission delete pvc --all
kubectl -n fission delete pv --all
|
| |
kubectl -n fission rollout history deploy buildermgr
kubectl -n fission rollout status deploy storagesvc
kubectl -n fission rollout restart deploy executor
|
kubectl -n fission logs -f svc/storagesvc -c storagesvc
kubectl -n fission logs -f svc/executor -c executor
kubectl -n fission logs -f svc/router -c router
|
References
| ||