update kubeflow dip-catalog
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: katib-controller
|
||||
namespace: kubeflow
|
||||
labels:
|
||||
katib.kubeflow.org/component: controller
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
katib.kubeflow.org/component: controller
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
katib.kubeflow.org/component: controller
|
||||
katib.kubeflow.org/metrics-collector-injection: disabled
|
||||
annotations:
|
||||
prometheus.io/scrape: "true"
|
||||
prometheus.io/port: "8080"
|
||||
sidecar.istio.io/inject: "false"
|
||||
spec:
|
||||
serviceAccountName: katib-controller
|
||||
containers:
|
||||
- name: katib-controller
|
||||
image: docker.io/kubeflowkatib/katib-controller
|
||||
command: ["./katib-controller"]
|
||||
args:
|
||||
- --katib-config=/katib-config.yaml
|
||||
ports:
|
||||
- containerPort: 8443
|
||||
name: webhook
|
||||
protocol: TCP
|
||||
- containerPort: 8080
|
||||
name: metrics
|
||||
protocol: TCP
|
||||
- containerPort: 18080
|
||||
name: healthz
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /readyz
|
||||
port: healthz
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: healthz
|
||||
env:
|
||||
- name: KATIB_CORE_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/cert
|
||||
name: cert
|
||||
readOnly: true
|
||||
- mountPath: /katib-config.yaml
|
||||
name: katib-config
|
||||
subPath: katib-config.yaml
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: cert
|
||||
secret:
|
||||
defaultMode: 420
|
||||
secretName: katib-webhook-cert
|
||||
- name: katib-config
|
||||
configMap:
|
||||
name: katib-config
|
||||
@@ -0,0 +1,9 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- controller.yaml
|
||||
- rbac.yaml
|
||||
- service.yaml
|
||||
- trial-templates.yaml
|
||||
@@ -0,0 +1,148 @@
|
||||
---
|
||||
kind: ClusterRole
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: katib-controller
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "create"
|
||||
- "delete"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- "create"
|
||||
- "patch"
|
||||
- "update"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- serviceaccounts
|
||||
- persistentvolumes
|
||||
- persistentvolumeclaims
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "create"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- namespaces
|
||||
- configmaps
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
- pods/status
|
||||
verbs:
|
||||
- "get"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "patch"
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- deployments
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "create"
|
||||
- "delete"
|
||||
- apiGroups:
|
||||
- rbac.authorization.k8s.io
|
||||
resources:
|
||||
- roles
|
||||
- rolebindings
|
||||
verbs:
|
||||
- "get"
|
||||
- "create"
|
||||
- "list"
|
||||
- "watch"
|
||||
- apiGroups:
|
||||
- batch
|
||||
resources:
|
||||
- jobs
|
||||
- cronjobs
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "create"
|
||||
- "delete"
|
||||
- apiGroups:
|
||||
- kubeflow.org
|
||||
resources:
|
||||
- tfjobs
|
||||
- pytorchjobs
|
||||
- mpijobs
|
||||
- xgboostjobs
|
||||
- mxjobs
|
||||
verbs:
|
||||
- "get"
|
||||
- "list"
|
||||
- "watch"
|
||||
- "create"
|
||||
- "delete"
|
||||
- apiGroups:
|
||||
- kubeflow.org
|
||||
resources:
|
||||
- experiments
|
||||
- experiments/status
|
||||
- experiments/finalizers
|
||||
- trials
|
||||
- trials/status
|
||||
- trials/finalizers
|
||||
- suggestions
|
||||
- suggestions/status
|
||||
- suggestions/finalizers
|
||||
verbs:
|
||||
- "*"
|
||||
- apiGroups:
|
||||
- admissionregistration.k8s.io
|
||||
resources:
|
||||
- validatingwebhookconfigurations
|
||||
- mutatingwebhookconfigurations
|
||||
verbs:
|
||||
- "get"
|
||||
- "watch"
|
||||
- "list"
|
||||
- "patch"
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: katib-controller
|
||||
namespace: kubeflow
|
||||
---
|
||||
kind: ClusterRoleBinding
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: katib-controller
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: katib-controller
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: katib-controller
|
||||
namespace: kubeflow
|
||||
@@ -0,0 +1,26 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: katib-controller
|
||||
namespace: kubeflow
|
||||
labels:
|
||||
katib.kubeflow.org/component: controller
|
||||
annotations:
|
||||
prometheus.io/port: "8080"
|
||||
prometheus.io/scheme: http
|
||||
prometheus.io/scrape: "true"
|
||||
spec:
|
||||
ports:
|
||||
- port: 443
|
||||
protocol: TCP
|
||||
targetPort: 8443
|
||||
name: webhook
|
||||
- name: metrics
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
- name: healthz
|
||||
port: 18080
|
||||
targetPort: 18080
|
||||
selector:
|
||||
katib.kubeflow.org/component: controller
|
||||
@@ -0,0 +1,77 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: trial-templates
|
||||
namespace: kubeflow
|
||||
labels:
|
||||
katib.kubeflow.org/component: trial-templates
|
||||
data:
|
||||
defaultTrialTemplate.yaml: |-
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: training-container
|
||||
image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
|
||||
command:
|
||||
- "python3"
|
||||
- "/opt/pytorch-mnist/mnist.py"
|
||||
- "--epochs=1"
|
||||
- "--batch-size=16"
|
||||
- "--lr=${trialParameters.learningRate}"
|
||||
- "--momentum=${trialParameters.momentum}"
|
||||
restartPolicy: Never
|
||||
# For ConfigMap templates double quotes must set in commands to correct parse JSON parameters in Trial Template (e.g nn_config, architecture)
|
||||
enasCPUTemplate: |-
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: training-container
|
||||
image: docker.io/kubeflowkatib/enas-cnn-cifar10-cpu:v0.17.0
|
||||
command:
|
||||
- python3
|
||||
- -u
|
||||
- RunTrial.py
|
||||
- --num_epochs=1
|
||||
- "--architecture=\"${trialParameters.neuralNetworkArchitecture}\""
|
||||
- "--nn_config=\"${trialParameters.neuralNetworkConfig}\""
|
||||
restartPolicy: Never
|
||||
pytorchJobTemplate: |-
|
||||
apiVersion: kubeflow.org/v1
|
||||
kind: PyTorchJob
|
||||
spec:
|
||||
pytorchReplicaSpecs:
|
||||
Master:
|
||||
replicas: 1
|
||||
restartPolicy: OnFailure
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: pytorch
|
||||
image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
|
||||
command:
|
||||
- "python3"
|
||||
- "/opt/pytorch-mnist/mnist.py"
|
||||
- "--epochs=1"
|
||||
- "--lr=${trialParameters.learningRate}"
|
||||
- "--momentum=${trialParameters.momentum}"
|
||||
Worker:
|
||||
replicas: 2
|
||||
restartPolicy: OnFailure
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: pytorch
|
||||
image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
|
||||
command:
|
||||
- "python3"
|
||||
- "/opt/pytorch-mnist/mnist.py"
|
||||
- "--epochs=1"
|
||||
- "--lr=${trialParameters.learningRate}"
|
||||
- "--momentum=${trialParameters.momentum}"
|
||||
Reference in New Issue
Block a user