Share Nifi Controller Service - apache-nifi

How can I share a Controller Service between process groups? I built a DBCPConnectionPool and use it in a process group. I need it in another process group. In a nutshell, I want one DBCPConnectionPool at root and use it in process groups.

Create the process group in the parent process group of the groups you want to share it in. For example, if you create it on the root group (top-level canvas), it would be usable by any sub-process groups.

Related

How to have different work space (or canvas) in Apache Nifi?

I just started a project with Apache Nifi and I am new to this orchestration tool. From a Azure's standpoint in ADF, I would like to create a branch so that I can work on my own development or at least I want to create a separate pipeline in the workspace. In Apache Nifi, I have an user Interface that multiple people can work on. Even though the activities (or processors) in Nifi seems dependent unless specify otherwise, I would like to have my own work space as a separate canvas.
Is it possible to have multiple canvas as workspace in Apache Nifi on a single address ?
Kind regards,
Ken
What I would do is create a new process group with a unique name. Process Groups are a way to have a complete canvas to yourself that doesnt interfere with other canvases.
using a "Process Group" is the easiest way.
if needed you can apply policies on each "Process Group".
for this you need to add some users (put them in a group) and create policies which fits to your needs. while creating the policies you can add users (and groups) to your policy to grant access, view, modify, ...
btw, you can route flowfiles IN and OUT of your "Process Group" using "Input Port" and "Output Port" (next to the processors in the menu bar of the NiFi canvas)

Get all process groups using Nifi-api including sub-processor groups

I would like to access all the ids of processor and sub-processor groups in an nifi environment . Is there a rest-api call available for the same.

Can I programmatically get the root uri of a NiFi flow?

I'm programmatically creating a NiFi flow using the NiFi api.
I created a process group (I'll call it PG) inside the root process group.
Inside the PG I want a Remote Process Group pointing to the root.
The Remote Process Group request-payload requires the target uri of the process group it is pointing to (in this case the uri of the root).
Is there a way to get that uri programmatically via the api?
In other words, can I somehow programmatically get the uri of the root?
Thanks in advance

How do I create hierarchical AWS Security Groups?

I want to create a 2-level security group heirarchy in AWS.
Location Groups - groups of IP addresses specific to different locations (e.g. "office", "home", "customer 1", etc.). Each of these base groups grants each IP access to All Traffic (ports 0-65535)
Environment Groups - I then am trying to add these base Location Groups to my higher-level Environment Groups (e.g. "test", "prod", "reporting db", etc.). I will use Environment groups for my different instances in EC2. So a server "uat_01" for example will reference the "test" environment group, which will in turn grant access to "office", for example.
Here's my inbound rule setup for security group sg-f2d8.... (office)
I'm adding the base groups using port ranges for access to HTTP (or HTTPS, or MySQL, etc., based on need), and referencing the base group using "Custom" configuration with the group identifier, e.g. "sg-f2d8...."
In the Security Groups panel, everything looks ok, but I can't get access from the selected IPs.
Please help! I've been told EC2 Security Groups can reference base groups this way, but I can't seem to figure it out!
Thanks!
When you put a security group as the source of an inbound rule (or destination for an outbound rule) you are referencing the resources associated with that group (i.e. the ec2 instances that you create that belong to said group) not really allowing the traffic that the group would allow (this is kind of a common misconception on aws-security groups). There is also no transitivity between security groups by referencing them this way.
Now in order to achieve what you want to achieve, the only workaround i can think about is creating groups of the style home-test, office-test, home-prod and putting in each one the source ip that you would see fit. At the end of the day these would be just "1-level" security groups.
The formal answer would be that no, you cannot create hierarchical aws sec groups.

Create Group Policy for Specific Group

A question that has stumped me for a while. I know this is possible over domains using Active Directory and all the rest, but what about on a basic local machine running on a basic network with many users.
Say this local machine is a communal work machine, which anyone with an account can use. All accounts are local, and are not roaming or on a domain, they are local to the machine.
Each user has different privileges, and are separated by groups.
While trying to create a group policy for a certain group, the group doesn't actually show up in the list. All that shows up in the list, are the local accounts individually, and two categories/groups: Administrators and Non Administrators
Where are the other groups? Why can I not create multiple policies specific to each individual group (Group1, Group2, Group3) that I have created?
The selection text quotes: "Local Users and Groups compatible with Local Group Policy". This seems to say that the groups I create seem not to be compatible with Group Policy?
Is there any fix to make custom groups 'Compatible' with Group Policy? Perhaps a registry or DLL fix?
Go to the Group Policy Management Console (gpmc.msc) and navigate to the required Organisational Unit. Right click, and select "Create a GPO..." and give it a name.
Right click on the newly created Group Policy Object, and deselect "Link Enabled" to prevent it from applying before you have finished configuring it.
Configure your GPO, and in the GPO Security Filtering panel, you are able to Add/Remove specific Active Directory users, groups and computers in which you want your GPO to apply to.
Hope this helps you

Resources