You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@falcon.apache.org by ba...@apache.org on 2016/05/13 22:44:08 UTC
falcon git commit: FALCON-1934 Document Safemode in Falcon Server
Repository: falcon
Updated Branches:
refs/heads/master 941c4fa32 -> 645e13f50
FALCON-1934 Document Safemode in Falcon Server
Author: bvellanki <bv...@hortonworks.com>
Reviewers: "Ying Zheng <yz...@hortonworks.com>, Venkatesan Ramachandran <vr...@hortonworks.com>"
Closes #140 from bvellanki/FALCON-1934
Project: http://git-wip-us.apache.org/repos/asf/falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/falcon/commit/645e13f5
Tree: http://git-wip-us.apache.org/repos/asf/falcon/tree/645e13f5
Diff: http://git-wip-us.apache.org/repos/asf/falcon/diff/645e13f5
Branch: refs/heads/master
Commit: 645e13f5016c2d7d4f2527d204dc11822c911182
Parents: 941c4fa
Author: bvellanki <bv...@hortonworks.com>
Authored: Fri May 13 15:43:59 2016 -0700
Committer: bvellanki <bv...@hortonworks.com>
Committed: Fri May 13 15:43:59 2016 -0700
----------------------------------------------------------------------
docs/src/site/twiki/FalconDocumentation.twiki | 40 ++++++++++++++++++++
docs/src/site/twiki/falconcli/FalconCLI.twiki | 1 +
.../site/twiki/falconcli/SafemodeAdmin.twiki | 10 +++++
docs/src/site/twiki/restapi/AdminSafemode.twiki | 25 ++++++++++++
docs/src/site/twiki/restapi/AdminVersion.twiki | 8 ++++
docs/src/site/twiki/restapi/ResourceList.twiki | 1 +
6 files changed, 85 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/FalconDocumentation.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/FalconDocumentation.twiki b/docs/src/site/twiki/FalconDocumentation.twiki
index 89370ec..ac7fa37 100644
--- a/docs/src/site/twiki/FalconDocumentation.twiki
+++ b/docs/src/site/twiki/FalconDocumentation.twiki
@@ -91,6 +91,46 @@ Startup property file in both falcon & prism server need to be configured with t
---++++ Prism Setup
<img src="PrismSetup.png" height="400" width="600" />
+
+---+++ Safe Mode
+Safemode is useful when the admin wants to prevent Falcon users from scheduling entities in the workflow engine. This can happen when
+ * Hadoop clusters are being upgraded.
+ * Falcon cluster entities are being updated.
+
+When in Safemode, users can only perform limited operations. To be specific,
+ * Users can perform read operations on entities subject to authorization.
+ * Superuser can perform cluster entity update operation.
+ * Suspend/Kill of individual instances will be allowed if users want to suspend specific job operations.
+ * Suspend operation on schedulable entities will be allowed. This is because, a user might want to suspend entities during rolling-upgrade to handle jobs incompatible with updated versions.
+ * All other operations are not allowed. To enumerate,
+ * All entity submit, submitAndSchedule operations are not allowed.
+ * Entity operations not allowed are : update, schedule, touch, delete, submit, submitAndSchedule, resume
+ * Instance operations not allowed are : rerun, resume
+
+---++++ Getting into/out-of Safemode.
+The Falcon process user can specify whether to start Falcon in safemode with the following command:
+<verbatim>
+<falcon-server>/bin/falcon-start -setsafemode <true/false>
+</verbatim>
+
+A superuser or admin-user can set Falcon server into/outof safemode using CLI or RestAPI. A user is considered superuser if they
+owns the Falcon process or belong to group specified in startup property falcon.security.authorization.superusergroup. A user is
+considered admin user if they are listed under startup property falcon.security.authorization.admin.users, OR they belong to group
+listed under startup property falcon.security.authorization.admin.groups.
+
+<verbatim>
+## CLI
+<falcon-server>/bin/falcon admin [-setsafemode <true/false>]
+
+## RestAPI
+GET http://falcon-server:15000/api/admin/setSafeMode/true
+OR
+GET http://falcon-server:15000/api/admin/setSafeMode/false
+</verbatim>
+
+*NOTE* User can find if FalconServer is in safemode or not, by calling the [[restapi/AdminVersion][Admin Version]] API. Once
+server is set to safemode, this state is persisted during restarts. It has to be unset explicitly if user wants to exit safemode.
+
---+++ Configuration Store
Configuration store is file system based store that the Falcon system maintains where the entity definitions
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/falconcli/FalconCLI.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/FalconCLI.twiki b/docs/src/site/twiki/falconcli/FalconCLI.twiki
index ae2eb89..9ae0646 100644
--- a/docs/src/site/twiki/falconcli/FalconCLI.twiki
+++ b/docs/src/site/twiki/falconcli/FalconCLI.twiki
@@ -102,6 +102,7 @@ $FALCON_HOME/bin/falcon entity -submit -type cluster -file /cluster/definition.x
|[[HelpAdmin][Help]] | Return help options |
|[[VersionAdmin][Version]] | Return current falcon version |
|[[StatusAdmin][Status]] | Return the status of falcon |
+|[[SafemodeAdmin][SetSafeMode]] | Set/unset Falcon Server in safemode |
-----------
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/falconcli/SafemodeAdmin.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/SafemodeAdmin.twiki b/docs/src/site/twiki/falconcli/SafemodeAdmin.twiki
new file mode 100644
index 0000000..5eb26c0
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/SafemodeAdmin.twiki
@@ -0,0 +1,10 @@
+---+++SetSafeMode
+
+[[CommonCLI][Common CLI Options]]
+
+When -setsafemode is true, Falcon starts in safemode.
+When -setsafemode is false, falcon starts in normal mode.
+
+Usage:
+$FALCON_HOME/bin/falcon admin -setsafemode true/false
+
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/restapi/AdminSafemode.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/AdminSafemode.twiki b/docs/src/site/twiki/restapi/AdminSafemode.twiki
new file mode 100644
index 0000000..d7c9631
--- /dev/null
+++ b/docs/src/site/twiki/restapi/AdminSafemode.twiki
@@ -0,0 +1,25 @@
+---++ GET /api/admin/setSafeMode/:mode
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Set falcon server into/out of safemode.
+
+---++ Parameters
+ * :mode true/false.
+ * doAs <optional query param> allows the current user to impersonate the user passed in doAs when interacting with the Falcon system.
+
+---++ Results
+The value of FalconSever safemode.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+GET http://localhost:15000/api/admin/setSafeMode/true
+</verbatim>
+---+++ Result
+<verbatim>
+true
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/restapi/AdminVersion.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/AdminVersion.twiki b/docs/src/site/twiki/restapi/AdminVersion.twiki
index 7db2d8f..d7615a0 100644
--- a/docs/src/site/twiki/restapi/AdminVersion.twiki
+++ b/docs/src/site/twiki/restapi/AdminVersion.twiki
@@ -29,6 +29,14 @@ GET http://localhost:15000/api/admin/version?doAs=joe
{
"key":"Mode",
"value":"embedded"
+ },
+ {
+ "key":"authentication",
+ "value":"simple"
+ },
+ {
+ "key":"safemode",
+ "value":"false"
}
]
}
http://git-wip-us.apache.org/repos/asf/falcon/blob/645e13f5/docs/src/site/twiki/restapi/ResourceList.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ResourceList.twiki b/docs/src/site/twiki/restapi/ResourceList.twiki
index 5924834..aadd14f 100644
--- a/docs/src/site/twiki/restapi/ResourceList.twiki
+++ b/docs/src/site/twiki/restapi/ResourceList.twiki
@@ -39,6 +39,7 @@ The current version of the rest api's documentation is also hosted on the Falcon
| GET | [[AdminStack][api/admin/stack]] | Get stack of the server |
| GET | [[AdminVersion][api/admin/version]] | Get version of the server |
| GET | [[AdminConfig][api/admin/config/:config-type]] | Get configuration information of the server |
+| GET | [[AdminSafemode][api/admin/setSafeMode/:mode]] | Set safemode to true/false in falcon server |
---++ REST Call on Entity Resource