-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathFaasNetDoc.txt
More file actions
104 lines (73 loc) · 4.05 KB
/
FaasNetDoc.txt
File metadata and controls
104 lines (73 loc) · 4.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
Avant de commencer, lancer le container "registry" :
docker run -d -p 5000:5000 --restart=always --name registry registry:2
Créer le namespace : kubectl create namespace faas
Installer avec helm : helm install faasnet ./helm --namespace faas
Construire le package helm : helm package ./helm -d ./docs/charts
Construire index.yaml : helm repo index ./docs/charts
# Comment déployer SQLSERVER
kubectl apply -f ./kubernetes/run-mssql.yml --namespace=faas
kubectl apply -f ./kubernetes/mssql-external-svc.yml --namespace=faas
kubectl apply -f ./kubernetes/mssql-internal-svc.yml --namespace=faas
Il est possible ensuite de se connecter à la BDD avec : 127.0.0.1, 30002
# Construire l'image du runtime
Construire l'image et la nommer "localhost:5000/getsql" && "localhost:5000/transform" :
docker build -f RuntimeGetSqlDockerfile -t simpleidserver/faasgetsql:0.0.1 .
docker build -f RuntimeTransformDockerfile -t simpleidserver/faastransform:0.0.1 .
Pousser vers le "registry" local :
docker push simpleidserver/faasgetsql:0.0.1
docker push simpleidserver/faastransform:0.0.1
# Construire et déployer FAAS kubernetes
Pour windows, copier le fichier %USERPROFILE\.kube\config vers la racine du project.
Construire l'image et la nommer "localhost:5000/kubernetes"
docker build -f KubernetesDockerfile -t simpleidserver/faaskubernetes:0.0.1 .
Pousser vers le "registry" local :
docker push simpleidserver/faaskubernetes:0.0.1
Créer le namespace faas
kubectl apply -f ./kubernetes/faas-namespace.yml
Déployer sur kubernetes
kubectl apply -f ./kubernetes/run-faas-kubernetes.yml --namespace=faas
Déployer le service
kubectl apply -f ./kubernetes/faas-kubernetes-svc.yml --namespace=faas
# Faas Kubernetes
Cette API REST gère le déploiement des fonctions dans Kubernetes.
# Gateway
Construire l'image et la nommer "localhost:5000/gateway"
docker build -f GatewayDockerfile -t simpleidserver/faasgateway:0.0.1 .
Pousser vers le "registry" local :
docker push simpleidserver/faasgateway:0.0.1
Déployer sur kubernetes
kubectl apply -f ./kubernetes/run-faas-gateway.yml --namespace=faas
Déployer le service
kubectl apply -f ./kubernetes/faas-gateway-svc.yml --namespace=faas
La gateway est utilisée pour déployer les fonctions mais aussi appeler des APIs.
Example de workflow :
provider:
name: apidesigner
gateway: http://localhost:8080
apis:
persons:
- path: persons
operations:
- name: getPerson
async: false
workflow:
- function: getSql
configuration: {"ConnectionString": "", "Query": ""}
next: transform
- function: transform
configuration: { "mapping": { "input": "output" } }
next: setPayload
- function: setPayload
configuration: { "forwardResponse" : true }
- path: person/{id}
functions:
- name: getSql
- name: transform
- name: setPayload
# Autre
Comment lancer le dashboard ?
kubectl proxy
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy
Token : eyJhbGciOiJSUzI1NiIsImtpZCI6IlREanEtTXBUMlBiN2lIVmI0VDV5X1BQajVrQlVEMlh1TDdBVmM4TkNyekUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkZXBsb3ltZW50LWNvbnRyb2xsZXItdG9rZW4tNXZtYjgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGVwbG95bWVudC1jb250cm9sbGVyIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiODYwNDExOTItNzY0Ny00OWJlLWFhNmMtNGYzMGQ4MmIxZmYwIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRlcGxveW1lbnQtY29udHJvbGxlciJ9.IxK3HWZUXQ4IOVkx3j_hm0J9AIIIPy1ND3OglGQ1l1hL5geNM39J_ncQq9u-kdx6TgOw9KbNie1fS-GvQVXm75fi8V2fv9mEDZWkV2-GQ-x81-WUSYt7YVdgMWOMECKCsYSzhpKstT_NY3LbbHwAIgV4URqvJMRiDWQp5HNKQVmmiYO2dnyjmlIJ4Qfs0gDvLs-KsyV8U9XQL2FMT36PXQSOYi2eFyWZsrNaU2evdlwKkSKFwoMaZd2vGQfRO-LLeTxYrUHqPraz5ReWyXXSjNmHQpKZ0GLEki3IILdafpVZmUIio--qI-Lmc7-ZYs_KzY3i3IEkf807tqAoIfdmdQ
Comment récupérer les API ?
Pour récupérer la version d'API il faut exécuter la commande : kubectl api-resources