Skip to content

Commit acb3b7a

Browse files
authored
Merge pull request #270078 from rcdun/ko/ingestion-agent-v2
Update ingestion agent docs for v2.0.0
2 parents 85a9cde + 271e872 commit acb3b7a

6 files changed

+105
-64
lines changed

articles/operator-insights/ingestion-agent-configuration-reference.md

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -20,27 +20,30 @@ Configuration comprises three parts:
2020

2121
This reference shows two pipelines: one with an MCC EDR source and one with an SFTP pull source.
2222

23-
```
23+
```yaml
2424
# A unique identifier for this agent instance. Reserved URL characters must be percent-encoded. It's included in the upload path to the Data Product's input storage account.
2525
agent_id: agent01
2626
# Config for secrets providers. We support reading secrets from Azure Key Vault and from the VM's local filesystem.
2727
# Multiple secret providers can be defined and each must be given a unique name, which is referenced later in the config.
2828
# A secret provider of type `key_vault` which contains details required to connect to the Azure Key Vault and allow connection to the Data Product's input storage account. This is always required.
2929
# A secret provider of type `file_system`, which specifies a directory on the VM where secrets are stored. For example for an SFTP pull source, for storing credentials for connecting to an SFTP server.
3030
secret_providers:
31-
- name: data_product_keyvault
32-
provider:
33-
type: key_vault
31+
- name: data_product_keyvault_mi
32+
key_vault:
33+
vault_name: contoso-dp-kv
34+
managed_identity:
35+
object_id: 22330f5b-4d7e-496d-bbdd-84749eeb009b
36+
- name: data_product_keyvault_sp
37+
key_vault:
3438
vault_name: contoso-dp-kv
35-
auth:
39+
service_principal:
3640
tenant_id: ad5421f5-99e4-44a9-8a46-cc30f34e8dc7
37-
identity_name: 98f3263d-218e-4adf-b939-eacce6a590d2
38-
cert_path: /path/to/local/certkey.pkcs
41+
client_id: 98f3263d-218e-4adf-b939-eacce6a590d2
42+
cert_path: /path/to/local/certficate.p12
3943
- name: local_file_system
40-
provider:
41-
# The file system provider specifies a folder in which secrets are stored.
42-
# Each secret must be an individual file without a file extension, where the secret name is the file name, and the file contains the secret only.
43-
type: file_system
44+
# The file system provider specifies a folder in which secrets are stored.
45+
# Each secret must be an individual file without a file extension, where the secret name is the file name, and the file contains the secret only.
46+
file_system:
4447
# The absolute path to the secrets directory
4548
secrets_directory: /path/to/secrets/directory
4649
pipelines:
@@ -63,22 +66,21 @@ pipelines:
6366
6467
All pipelines require sink config, which covers upload of files to the Data Product's input storage account.
6568
66-
```
69+
```yaml
6770
sink:
6871
# The container within the Data Product's input storage account. This *must* be exactly the name of the container that Azure Operator Insights expects. See the Data Product documentation for what value is required.
6972
container_name: example-container
7073
# Optional A string giving an optional base path to use in the container in the Data Product's input storage account. Reserved URL characters must be percent-encoded. See the Data Product for what value, if any, is required.
7174
base_path: base-path
72-
# Optional. How often the sink should refresh its SAS token for the Data Product's input storage account. Defaults to 1h. Examples: 30s, 10m, 1h, 1d.
73-
sas_token_cache_period: 1h
74-
auth:
75-
type: sas_token
75+
sas_token:
7676
# This must reference a secret provider configured above.
77-
secret_provider: data_product_keyvault
77+
secret_provider: data_product_keyvault_mi
7878
# The name of a secret in the corresponding provider.
7979
# This will be the name of a secret in the Key Vault.
8080
# This is created by the Data Product and should not be changed.
8181
secret_name: input-storage-sas
82+
# Optional. How often the sink should refresh its SAS token for the Data Product's input storage account. Defaults to 1h. Examples: 30s, 10m, 1h, 1d.
83+
cache_period: 1h
8284
# Optional. The maximum number of blobs that can be uploaded to the Data Product's input storage account in parallel. Further blobs will be queued in memory until an upload completes. Defaults to 10.
8385
# Note: This value is also the maximum number of concurrent SFTP reads for the SFTP pull source. Ensure your SFTP server can handle this many concurrent connections. If you set this to a value greater than 10 and are using an OpenSSH server, you may need to increase `MaxSessions` and/or `MaxStartups` in `sshd_config`.
8486
maximum_parallel_uploads: 10
@@ -95,7 +97,7 @@ Combining different types of source in one agent instance isn't recommended in p
9597
9698
### MCC EDR source configuration
9799
98-
```
100+
```yaml
99101
source:
100102
mcc_edrs:
101103
# The maximum amount of data to buffer in memory before uploading. Units are B, KiB, MiB, GiB, etc.
@@ -128,7 +130,7 @@ This configuration specifies which files are ingested from the SFTP server.
128130
129131
Multiple SFTP pull sources can be defined for one agent instance, where they can reference either different SFTP servers, or different folders on the same SFTP server.
130132
131-
```
133+
```yaml
132134
source:
133135
sftp_pull:
134136
server: Information relating to the SFTP session.
@@ -140,16 +142,15 @@ source:
140142
known_hosts_file: /path/to/known_hosts
141143
# The name of the user on the SFTP server which the agent will use to connect.
142144
user: sftp-user
143-
auth:
145+
# The form of authentication to the SFTP server. This can take the values 'password' or 'private_key'. The appropriate field(s) must be configured below depending on which type is specified.
146+
password:
144147
# The name of the secret provider configured above which contains the secret for the SFTP user.
145148
secret_provider: local_file_system
146-
# The form of authentication to the SFTP server. This can take the values 'password' or 'ssh_key'. The appropriate field(s) must be configured below depending on which type is specified.
147-
type: password
148-
# Only for use with 'type: password'. The name of the file containing the password in the secrets_directory folder
149+
# Only for use with password authentication. The name of the file containing the password in the secrets_directory folder
149150
secret_name: sftp-user-password
150-
# Only for use with 'type: ssh_key'. The name of the file containing the SSH key in the secrets_directory folder
151+
# Only for use with private key authentication. The name of the file containing the SSH key in the secrets_directory folder
151152
key_secret: sftp-user-ssh-key
152-
# Optional. Only for use with 'type: ssh_key'. The passphrase for the SSH key. This can be omitted if the key is not protected by a passphrase.
153+
# Optional. Only for use with private key authentication. The passphrase for the SSH key. This can be omitted if the key is not protected by a passphrase.
153154
passphrase_secret_name: sftp-user-ssh-key-passphrase
154155
filtering:
155156
# The path to a folder on the SFTP server that files will be uploaded to Azure Operator Insights from.

articles/operator-insights/ingestion-agent-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ The ingestion agent is designed to be highly reliable and resilient to low level
6161

6262
The ingestion agent authenticates to two separate systems, with separate credentials.
6363

64-
- To authenticate to the ingestion endpoint of an Azure Operator Insights Data Product, the agent obtains a connection string from an Azure Key Vault. The agent authenticates to this Key Vault with a Microsoft Entra ID service principal and certificate that you setup when you created the agent.
64+
- To authenticate to the ingestion endpoint of an Azure Operator Insights Data Product, the agent obtains a SAS token from an Azure Key Vault. The agent authenticates to this Key Vault with either a Microsoft Entra ID managed identity or service principal and certificate that you setup when you created the agent.
6565
- To authenticate to your SFTP server, the agent can use password authentication or SSH key authentication.
6666

6767
For configuration instructions, see [Set up authentication to Azure](set-up-ingestion-agent.md#set-up-authentication-to-azure), [Prepare the VMs](set-up-ingestion-agent.md#prepare-the-vms) and [Configure the agent software](set-up-ingestion-agent.md#configure-the-agent-software).

articles/operator-insights/ingestion-agent-release-notes.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,23 @@ The Azure Operator Insights ingestion agent receives improvements on an ongoing
1515

1616
This page is updated for each new release of the ingestion agent, so revisit it regularly. If you're looking for items older than six months, you can find them in [archive for What's new with Azure Operator Insights ingestion agent](ingestion-agent-release-notes-archive.md).
1717

18+
## Version 2.0.0 - March 2024
19+
20+
Download for [RHEL8](https://download.microsoft.com/download/8/2/7/82777410-04a8-4219-a8c8-2f2ea1d239c4/az-aoi-ingestion-2.0.0-1.el8.x86_64.rpm).
21+
22+
### Known issues
23+
24+
None
25+
26+
### New features
27+
28+
- Simplified configuration schema. This is a significant breaking change and requires manual updates to the configuration file in order to upgrade existing agents. See the [configuration reference](./ingestion-agent-configuration-reference.md) for the new schema.
29+
- Added support for authenticating to the Data Product Key Vault with managed identities.
30+
31+
### Fixed
32+
33+
None
34+
1835
## Version 1.0.0 - February 2024
1936

2037
Download for [RHEL8](https://download.microsoft.com/download/c/6/c/c6c49e4b-dbb8-4d00-be7f-f6916183b6ac/az-aoi-ingestion-1.0.0-1.el8.x86_64.rpm).

articles/operator-insights/managed-identity.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,21 @@ For more general information about managed identities, see [What are managed ide
2727

2828
## User-assigned managed identities in Azure Operator Insights
2929

30-
Azure Operator Insights Data Products use a user-assigned managed identity for:
30+
Azure Operator Insights use a user-assigned managed identity for:
3131

3232
- Encryption with customer-managed keys, also called CMK-based encryption.
3333
- Integration with Microsoft Purview. The managed identity allows the Data Product to manage the collection and the data catalog within the collection.
34+
- Authentication to Azure with an [ingestion agent](ingestion-agent-overview.md). See [use a managed identity for authentication](set-up-ingestion-agent.md#use-a-managed-identity-for-authentication).
3435

3536
When you [create a Data Product](data-product-create.md), you set up the managed identity and associate it with the Data Product. To use the managed identity with Microsoft Purview, you must also [grant the managed identity the appropriate permissions in Microsoft Purview](purview-setup.md#access-and-set-up-your-microsoft-purview-account).
3637

3738
You use Microsoft Entra ID to manage user-assigned managed identities. For more information, see [Create, list, delete, or assign a role to a user-assigned managed identity using the Azure portal](/entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities).
3839

3940
## System-assigned managed identities in Azure Operator Insights
4041

41-
Azure Operator Insights doesn't support system-assigned managed identities.
42+
Azure Operator Insights Data Products don't support system-assigned managed identities.
43+
44+
Azure Operator Insights ingestion agents on Azure VMs support system-assigned managed identities. See [Use a managed identity for authentication](set-up-ingestion-agent.md#use-a-managed-identity-for-authentication).
4245

4346
## Related content
4447

articles/operator-insights/rotate-secrets-for-ingestion-agent.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ ms.date: 02/29/2024
1414

1515
The ingestion agent is a software package that is installed onto a Linux Virtual Machine (VM) owned and managed by you.
1616

17-
It uses a service principal to obtain, from the Data Product's Azure Key Vault, the credentials needed to upload data to the Data Product's input storage account.
17+
It uses a managed identity or service principal to obtain, from the Data Product's Azure Key Vault, the credentials needed to upload data to the Data Product's input storage account.
1818

19-
You must refresh your service principal credentials before they expire. In this article, you'll rotate the service principal certificates on the ingestion agent.
19+
If you use a service principal, you must refresh its credentials before they expire. In this article, you'll rotate the service principal certificates on the ingestion agent.
2020

2121
## Prerequisites
2222

@@ -25,7 +25,7 @@ None.
2525
## Rotate certificates
2626

2727
1. Create a new certificate, and add it to the service principal. For instructions, refer to [Upload a trusted certificate issued by a certificate authority](/entra/identity-platform/howto-create-service-principal-portal).
28-
1. Obtain the new certificate and private key in the base64-encoded PKCS12 format, as described in [Set up Ingestion Agents for Azure Operator Insights](set-up-ingestion-agent.md).
28+
1. Obtain the new certificate and private key in the base64-encoded P12 format, as described in [Set up Ingestion Agents for Azure Operator Insights](set-up-ingestion-agent.md#prepare-certificates-for-the-service-principal).
2929
1. Copy the certificate to the ingestion agent VM.
3030
1. Save the existing certificate file and replace with the new certificate file.
3131
1. Restart the agent.

0 commit comments

Comments
 (0)