Skip to content

Commit

Permalink
Add Endpoint document
Browse files Browse the repository at this point in the history
  • Loading branch information
rainzm committed Jun 19, 2020
1 parent 8e7de75 commit 3696dc6
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 11 deletions.
14 changes: 9 additions & 5 deletions docs/crds/ansibleplaybook.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,9 +131,9 @@ vars:

## AnsiblePlaybook Status

### Phase
### phase

`Phase`反映了 AnsiblePlaybook 当前所处的状态(阶段),`Reason`反应了其原因。
`phase`反映了 AnsiblePlaybook 当前所处的状态(阶段),`reason`反应了其原因。

1. `Waiting`: 等待状态,正在等待其所依赖的资源,比如等待依赖的 VirtualMachine 处于`Running`中。
2. `Pending`: 中间状态,如 OneCloudAP 正在创建,正在执行等等。
Expand All @@ -142,10 +142,14 @@ vars:
5. `Finished`: 完成状态,表示 OneCloudAP 成功执行完毕。
6. `Invalid`: 无效,表明当前的 AnsiblePlaybook 没有也不会有 OneCloudVM,处于此种状态下的 AnsiblePlaybook 没有意义,应该被删除。一个典型的场景就是,尝试创建 OneCloudAP 若干次后失败。

### ExternalInfo
### tryTimes

`ExternalInfo`存储了 OneCloudAP 的一些信息,包括通用的`Id``Status`
尝试的次数

此外还存储了 OneCloudAP 的输出`Output`
### externalInfo

`externalInfo`存储了 OneCloudAP 的一些信息,包括通用的`id``status`

此外还存储了 OneCloudAP 的输出`output`

更多请参考文档 [AnsiblePlaybookStatus](../api/docs.md#onecloud.yunion.io/v1.AnsiblePlaybookStatus)
60 changes: 60 additions & 0 deletions docs/crds/endpoint.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Endpoint

Endpoint 代表 OneCloud 中特定属性(interface 为 'console',service 为 'external-service')的 Endpoint 实例。

创建一个 Endpoint 就会在 OneCloud 中创建一个符合 [EndpointSpec](../api/docs.md#onecloud.yunion.io/v1.EndpointSpec) 描述的 Endpoint 实例(以下简称 OneCloudEndpoint)。

对 Endpoint 执行的更新或者删除操作,也会应用到 OneCloudEndpoint 上。

## 创建 Endpoint

下面是一个创建 Endpoint 的例子:
```yaml
apiVersion: onecloud.yunion.io/v1
kind: Endpoint
metadata:
name: endpoint-sample
spec:
regionId: region0
name: test
url:
host:
reference:
kind: VirtualMachine
namespace: onecloud
name: ng-nihao
fieldPath: Status.ExternalInfo.Ips[0]
port: 8081
prefix: test
```

`url`具体可见 [URL](../api/docs.md#onecloud.yunion.io/v1.URL)

重点关注`url`中的`host`,可以直接通过`value`输入主机地址(字符串),或者通过`reference`来引用一个 VirtualMachine 的`ip`或者`eip`,具体用法可以参考上面的例子。

## 更新 Endpoint

所有的 field 都支持更新。
更新操作会触发 OneCloudEndpoint 的更新。

## EndpointStatus

### phase

`phase`反映了 Endpoint 当前所处的状态(阶段),`reason`反映了其原因。

1. `Ready`: 正常状态。

2. `Unkown`: 未知状态,会不断的尝试取同步 OneCloudEndpoint。

3. `Invalid`: 无效,表明当前的 Endpoint 没有也不会有 OneCloudEndpoint,处于此种状态下的 Endpoint 没有意义,应该被删除。一个典型的场景就是,尝试创建 OneCloudEndpoint 若干次后失败。

### tryTimes

尝试的次数。

### externalInfo

`externalInfo`存储了 OneCloudEndpoint 的一些信息,包括通用的`id``status`

更多请参考文档 [EndpointStatus](../api/docs.md#onecloud.yunion.io/v1.EndpointStatus)
16 changes: 10 additions & 6 deletions docs/crds/virtualmachine.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ spec:
## 更新 VirtualMachine

目前只有部分 field 是允许更新的(严格来说,都可以更新,只不过只有部分 field 的更新有实际作用)。
更新操作会触发 OneCloudVM 的更新。

详细文档请参考 [VirtualMachineSpec](../api/docs.md#onecloud.yunion.io/v1.VirtualMachineSpec),其中标记`AllowUpdate`的 field 是允许更新的。

Expand All @@ -50,9 +51,9 @@ spec:

## VirtualMachine Status

### Phase
### phase

`Phase`反映了 VirtualMachine 当前所处的状态(阶段),`Reason`反应了其原因。
`phase`反映了 VirtualMachine 当前所处的状态(阶段),`reason`反应了其原因。

1. `Pending`: 中间状态,如 OneCloudVM 此时正在创建中、调整配置中或者删除中等等。

Expand All @@ -66,14 +67,17 @@ spec:

6. `Invalid`: 无效,表明当前的 VirtualMachine 没有也不会有 OneCloudVM,处于此种状态下的 VirtualMachine 没有意义,应该被删除。一个典型的场景就是,尝试创建 OneCloudVM 若干次后失败。

### ExternalInfo
### tryTimes

`ExternalInfo`存储了 OneCloudVM 的一些信息,包括通用的`Id``Status`
尝试的次数

此外还存储了 OneCloudVM 想对于其他 OneCloud 资源特有的`Eip``Ips`
### externalInfo

更多请参考文档 [VirtualMachineStatus](../api/docs.md#onecloud.yunion.io/v1.VirtualMachineStatus)
`externalInfo`存储了 OneCloudVM 的一些信息,包括通用的`id``status`

此外还存储了 OneCloudVM 想对于其他 OneCloud 资源特有的`eip``ips`

更多请参考文档 [VirtualMachineStatus](../api/docs.md#onecloud.yunion.io/v1.VirtualMachineStatus)



1 change: 1 addition & 0 deletions docs/main.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
- [VirtualMachine](./crds/virtualmachine.md)
- [AnsiblePlaybookTemplate](./crds/ansibleplaybooktemplate.md)
- [AnsiblePlaybook](./crds/ansibleplaybook.md)
- [Endpoint](./crds/endpoint.md)

## CRUD

Expand Down

0 comments on commit 3696dc6

Please sign in to comment.