Skip to content

Commit

Permalink
fix README.md comments to make clearly, add example/jobflow/README.md;
Browse files Browse the repository at this point in the history
Signed-off-by: shaoqiu <516595344@qq.com>
  • Loading branch information
waiterQ committed Aug 11, 2022
1 parent 76dac4c commit 6bafe8b
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 8 deletions.
8 changes: 0 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@ are looking forward to your participation.
**NOTE**: the scheduler is built based on [kube-batch](https://github.com/kubernetes-sigs/kube-batch);
refer to [#241](https://github.com/volcano-sh/volcano/issues/241) and [#288](https://github.com/volcano-sh/volcano/pull/288) for more detail.

[JobFlow](./docs/design/jobflow/jobflow.md) is a workflow engine based on volcano Job. It proposes two concepts to automate running multiple batch jobs, named JobTemplate and JobFlow, so end users can easily declare their jobs and run them using complex control primitives such as sequential or parallel execution, if-then -else statement, switch-case statement, loop execution, etc.

![cncf_logo](docs/images/cncf-logo.png)

Volcano is an incubating project of the [Cloud Native Computing Foundation](https://cncf.io/) (CNCF). Please consider joining the CNCF if you are an organization that wants to take an active role in supporting the growth and evolution of the cloud native ecosystem.
Expand All @@ -40,8 +38,6 @@ Volcano is an incubating project of the [Cloud Native Computing Foundation](http

![volcano](docs/images/volcano-architecture.png)

![jobflow-1.png](./docs/design/images/jobflow-1.png)

## Talks

- [Intro: Kubernetes Batch Scheduling @ KubeCon 2019 EU](https://sched.co/MPi7)
Expand Down Expand Up @@ -114,10 +110,6 @@ job.batch/volcano-admission-init 1/1 48s 96s
```

### Disable JobFlow

Disable JobFlow related components if necessary. You need to add --forbid-jobflow=true to the startup parameters of the controller and admission respectively. The default is false to enable the state.

### Install from code

If you don't have a kubernetes cluster, try one-click install from code base:
Expand Down
File renamed without changes.
63 changes: 63 additions & 0 deletions example/jobflow/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
## JobFlow

#### These examples shows how to run JobFlow via Volcano.

[JobFlow](../../docs/design/jobflow) is a workflow engine based on volcano Job. It proposes two concepts to automate running multiple batch jobs, named JobTemplate and JobFlow, so end users can easily declare their jobs and run them using complex control primitives such as sequential or parallel execution, if-then -else statement, switch-case statement, loop execution, etc.

read design at [here](../../docs/design/jobflow).

### Prerequisites

- docker: `18.06`
- Kubernetes: >`1.17`

## startup steps

build image from local
```bash
# get volcano and jobflow source code from github
git clone http://github.com/volcano-sh/volcano.git
git clone https://github.com/BoCloud/JobFlow.git

# build image beyondcent/jobflow:v0.0.1 from local
cd JobFlow
make
make docker-build
```

##### deploy JobFlow from [here](https://github.com/BoCloud/JobFlow#deploy)
```bash
kubectl apply -f https://raw.githubusercontent.com/BoCloud/JobFlow/main/deploy/jobflow.yaml
```

##### deploy Volcano from [here](https://volcano.sh/en/docs/installation/#install-with-yaml-files)
```bash
kubectl apply -f https://raw.githubusercontent.com/volcano-sh/volcano/master/installer/volcano-development.yaml
```

if cert of `jobflow-webhook-service.kube-system.svc` has expired, generate one to replace it.
```bash
# delete expired cert in secrets
kubectl delete secret jobflow-webhook-server-cert -nkube-system

# use gen-admission-secret.sh register new secret
cd volcano
./installer/dockerfile/webhook-manager/gen-admission-secret.sh --service jobflow-webhook-service --namespace kube-system --secret jobflow-webhook-server-cert

# restart jobflow-controller-manager
kubectl delete pod/jobflow-controller-manager-67847d59dd-j8dmc -nkube-system
```

##### run jobflow example
```bash
# deploy jobTemplate first
cd volcano
kubectl apply -f example/jobflow/JobTemplate.yaml
# deploy jobFlow second
kubectl apply -f example/jobflow/JobFlow.yaml

# check them
kubectl get jt
kubectl get jf
kubectl get po
```

0 comments on commit 6bafe8b

Please sign in to comment.