Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[AMBARI-22725] Expose Conditional Elements For Tasks on Upgrade #84

Merged
merged 1 commit into from Jan 18, 2018
Merged

[AMBARI-22725] Expose Conditional Elements For Tasks on Upgrade #84

merged 1 commit into from Jan 18, 2018

Conversation

jonathan-hurley
Copy link
Member

@jonathan-hurley jonathan-hurley commented Jan 10, 2018

What changes were proposed in this pull request?

I decided to break out the work of having condition tasks with upgrading Kerberos-related properties (see AMBARI-22803 for the RPC/Kerberos related work)

Some upgrade tasks, such as configuration tasks, need to leverage the conditional elements which change the flow of control if the cluster is Kerberized (or based on other configuration values). For example, today we have this:

<execute-stage service="RANGER_KMS" component="RANGER_KMS_SERVER" title="Calculating Proxy Properties under kms-site">
  <condition xsi:type="security" type="kerberos"/>
  <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.RangerKmsProxyConfig"/>
</execute-stage>

 

Where condition elements can be added to an execute-stage or a group. However, since execute-stage may only contain one task, it makes doing this work on a per-task level impossible. This particularly impacts the processing element. We want something like this:

<task xsi:type="configure" id="hdp_2_6_hadoop_rpc_protection">
  <condition xsi:type="security" type="kerberos"/>
</task>

 
So that task elements defined in the pre-upgrade section of processing can also be conditionally invoked.

How was this patch tested?

[INFO] Starting audit...
Audit done.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 26:52 min
[INFO] Finished at: 2018-01-17T14:12:56-05:00
[INFO] Final Memory: 69M/783M
[INFO] ------------------------------------------------------------------------

@jonathan-hurley
Copy link
Member Author

One thing that bothers me is that this seems to only work with secure ports below 1024 - I think it should work on all ports. Checking with HDFS to see what the deal is there ...

@vivekratnavel vivekratnavel changed the title AMBARI-22725 - Update Hadoop RPC Encryption Properties During Kerberization and Upgrade (jonathanhurley) [AMBARI-22725] Update Hadoop RPC Encryption Properties During Kerberization and Upgrade (jonathanhurley) Jan 11, 2018
@jonathan-hurley jonathan-hurley changed the title [AMBARI-22725] Update Hadoop RPC Encryption Properties During Kerberization and Upgrade (jonathanhurley) [AMBARI-22725] Expose Conditional Elements For Tasks on Upgrade Jan 17, 2018
@jonathan-hurley
Copy link
Member Author

I decided to split out the RPC/Kerberos work into its own Jira since there seems to be some issue with HDFS with these changes: https://issues.apache.org/jira/browse/AMBARI-22803

@jonathan-hurley
Copy link
Member Author

retest this please

@asfgit
Copy link

asfgit commented Jan 18, 2018

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/172/
Test PASSed.

@jonathan-hurley jonathan-hurley merged commit ce5eb23 into apache:branch-2.6 Jan 18, 2018
@jonathan-hurley jonathan-hurley deleted the AMBARI-22725 branch January 18, 2018 00:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants