-
Notifications
You must be signed in to change notification settings - Fork 0
README
lijiang edited this page Nov 3, 2016
·
2 revisions
-
v0.1.0 为基本DEMO 版 ,主要目地是使 newt 的API 可以在TH2 的环境下跑通并完成基本的功能
-
v0.2.0 为目前主要工作内容,要在此版本内完善实现实际功能需求,为主要内部测试版本
-
v0.3.0 针对测试中出现的问题进行改进和优化 , 添加实用的新功能
-
v1.0.0 , 基本的对外测试版本(外测)
-
... , 针对大量实际问题的解决
-
v2.0.0 , 结题,维护性升级
ehpc 的API 基本遵循 NERSC NEWT API 的规范和设计文档,但小的细节处可能会有出入
Authentication Status
Authentication Login
Authentication Logout
接口遵循 NEWT API , 在我们的项目中,需实现两种认证模式:
- 基于 TH2- LDAP 的认证
- 基于本地DB的用户认证
后续可能开发的内容有:
- 混合使用DB 和 LDAP 的多对多体系?
- OAuth 认证 ?
- 新的API , 添加新用户,修改密码 (针对本地用户模式)
目前有用于其他模块测试的功能性实现,只供测试使用
- 0.1 阶段,可供其他阶段的测试即可,后面的认证方案可能需要详细讨论
Status Get System Status
Method GET [newt_base_url]/status/[machine]
Output JSON { "status": string, "machine": string }
Semantics Get System Availability Status. The returned status attribute will either be "up", "down" or "unknown"
Example: https://newt.nersc.gov/newt/status/cori
Status Get Status for All Systems
Method GET [newt_base_url]/status/
Output JSON Array [{ "status": string, "system": string }, ... ]
Semantics Get System Availability Status. The returned status attribute will either be "up", "down" or "unknown"
Example: https://newt.nersc.gov/newt/status/
Status Get MOTD
Method GET [newt_base_url]/status/motd
Output Message of the day (text)
Semantics Get a plain text summary of the current NERSC status (Message of the Day).
Example: https://newt.nersc.gov/newt/status/motd
并非完全必需,但针对项目目标:访问多个超算中心,还是有必要的,或者是想TH2 这样,下属有多个子系统(ln3,ln4,ln6)的情况。
- 0.1 阶段,实现基本功能,可以访问不同的LN系统
Files Directory Listing
Method GET [newt_base_url]/file/[machine]/[path]/
Output JSON Array [{"perms": string, "hardlinks": string, "user": string, "group": string, "size": string, "date": string, "name": string}, ... ]
Semantics Get directory listing if [path] is a directory; get listing for individual file if [path] is a file.
Example: https://newt.nersc.gov/newt/file/cori/tmp/
See also the ajax directory listing demo
Files Download a File
Method GET [newt_base_url]/file/[machine]/[path]?view=read
Output Binary file located on [machine] at [path]
Semantics Return the file to the user. Note the view paramater must be set to “read” otherwise it will return a directory listing
Example: https://newt.nersc.gov/newt/file/cori/etc/motd?view=read
Files Create/Update a File
Method PUT [newt_base_url]/file/[machine]/[path]
Input: file contents
Output JSON string: {status: "OK", location: string}
Semantics Update/create file with given contents. Returns request status and location of file.
Example:
Files Upload a File
- 0.1 阶段,需简单实现,针对大文件,还需更强大的工具
Jobs Run a command
Jobs View Queue
Jobs Submit Job to Queue
Jobs View Job in Queue
Jobs View Job Account Information (including recently completed jobs)
Jobs Delete Job from Queue
核心功能,需详细设计
-
0.1 阶段,实现SLURM 版本的各个命令接口
-
0.2 阶段,考虑 eHPC plus 的可能性
This application is a simple frontend to a shared JSON object storage database. It allows applications to store JSON data in a persistent fashion.
Liststore Get Available Stores
Liststore Create Store
Liststore Delete Store
Liststore Get Store Contents
Liststore Query Store
Liststore Get Store Permissions
Liststore Update Store Permissions
Liststore Create Document
Liststore Get Document Contents
Liststore Update Document
Get Account information from NIM
暂时不需要