Organize Your Fleet
JFrog Connect uses projects and groups as a way to manage large device fleets. This is an introduction to projects, groups, and other ways of segmenting your fleet into manageable subsets of devices.
Last updated
JFrog Connect uses projects and groups as a way to manage large device fleets. This is an introduction to projects, groups, and other ways of segmenting your fleet into manageable subsets of devices.
Last updated
Once you have more than a few devices in your fleet, you need a way to segment the fleet into manageable subsets of devices. This becomes even more important when your fleet numbers in the hundreds, thousands, or even hundreds of thousands of devices.
Typically, you will want to distinguish between different sets of devices such as Testing and Production. In addition, there could be many other ways to you need to separate between devices, such as different:
Geographical and physical locations
Departments and organizational divisions
Hardware devices (e.g., cameras vs. robots)
Hardware versions
Operating systems
Software applications and versions
JFrog Connect provides easy-to-use tools that enable you to segment your fleet into manageable groupings and hierarchies. Projects and Groups enable you to segment devices into hierarchical subsets, while Tags and Applications enable you to create non-hierarchical subsets of devices that can reach across different Groups. When you combine the use of all of these tools, you can have control over a large fleet with ease.
The Project is the highest organizational level in a Connect account. An account must have at least one project. The first project is defined by default when you create an account. Once the account is created, you can create additional projects.
Each project is an entirely separate environment that enables you to differentiate between users and devices that belong to a different product or use case. Therefore, each project has its own settings and properties. For example, a project can have its own users, permissions, and subgroups of devices which are completely separate from other projects in your account. You can view the project settings in the Project tab of the Settings page.
Some typical uses of projects could be:
A business that has facilities in different locations. Each location has its own project, as different people need access to the devices in those locations.
Two different teams working on two different solutions. They would use the same Connect account, but be separated into two separate projects.
For information about creating, configuring, and deleting projects, see Create Project. To register a device into a project, see Register a Device.
Within a project, you can divide the devices into groups. All of the groups within a project have the same project configuration, but they are made up of different devices. A typical example would be groups that distinguish between different stages of a project, such as development, staging, and production.
When you register a new device, it is assigned by default to the Production group. If you already have additional group names defined, you can set the desired group for a device using a flag when you run the Registration command.
Devices can be assigned to groups using either the web UI or the Connect API.
You can always create a new group in your project. In addition, you can create groups with a group. This enables you to create hierarchies that suit your business needs. Although there is no limit to the number of levels you can create in your group hierarchy, we recommend planning this carefully so that your structure does not go too deep. A flatter hierarchy structure makes it easier to remember where your devices are in the organization.
For information about creating, rearranging, and deleting groups, see Create Group.
A tag is a user-defined parameter that enables you to identify devices with unique attributes. Tags provide an additional way that you can group devices. In particular, tags enable you to associate devices that belong to different groups. The following are some examples of how you might use tags.
You create a tag called Staging to indicate that a certain device is used for testing only.
You create a tag called headless, which indicates that the device does not have a monitor connected to it. You might have a small number of Headless devices existing in several groups.
You create a tag called new-gen, which you use to mark all devices that use a newer generation of hardware or software.
When you have tagged devices, you can then use the tag as a filter to select only certain devices. This enables you to perform numerous actions on a set of tagged devices such as updating software, stopping, starting, rebooting, and others.
For information about creating and removing tags, see Tag Devices.
You can use the Application feature to define Application names on sets of binaries that are deployed to the edge devices. This is, in effect, another way of grouping devices in your fleet. For example, all devices having Application X makes up a subset of devices that you can query on and perform various actions on. Like tags, applications returned in your searches could belong to a subset of devices in a group, or might belong to devices in different groups.
For more information about creating and using applications, see Set Application & Version.
Learn more about:
How to Create an additional project
A recommended Best Practice: Deploy in Groups