Pour garantir que les requêtes d'accès à OSS proviennent d'utilisateurs ou d'applications légitimes et assurer une initialisation correcte d'OSS Connector pour l'IA/le ML, configurez les paramètres appropriés.
Prérequis
OSS Connector pour l'IA/le ML est installé. Pour plus d'informations, consultez la rubrique Installer OSS Connector pour l'IA/le ML.
Configurer les identifiants d'accès
-
Créez un fichier de configuration des identifiants d'accès nommé
credentials.mkdir -p /root/.alibabacloud && touch /root/.alibabacloud/credentials -
Définissez les paramètres et enregistrez le fichier de configuration.
-
Exemple :
{ "AccessKeyId": "<Access-key-id>", "AccessKeySecret": "<Access-key-secret>", "SecurityToken": "<Security-Token>", "Expiration": "2024-08-02T15:04:05Z" }Le tableau suivant décrit ces paramètres.
Paramètre
Obligatoire
Exemple
Description
AccessKeyId
Oui
STS.L4aB****
L'ID de clé d'accès (AccessKey ID) et la clé d'accès secrète (AccessKey Secret) de votre compte Alibaba Cloud ou d'un utilisateur RAM.
Si vous utilisez un jeton de sécurité pour l'authentification, définissez ces paramètres avec l'ID de clé d'accès et la clé d'accès secrète figurant dans les identifiants d'accès temporaires.
AccessKeySecret
Oui
At32****
SecurityToken
Non
STS.6MC2*****
Le jeton de sécurité. Ce paramètre est requis lorsque vous utilisez les identifiants d'accès temporaires obtenus via Security Token Service (STS) pour accéder à OSS.
Si vous utilisez l'ID de clé d'accès et la clé d'accès secrète d'un compte Alibaba Cloud ou d'un utilisateur RAM pour l'authentification, laissez ce paramètre vide.
Expiration
Non
2024-08-02T15:04:05Z
La date d'expiration des informations d'authentification. Une fois cette date atteinte, le connecteur OSS relit les informations d'authentification. Si vous ne spécifiez pas le paramètre Expiration, les informations d'authentification n'expirent pas.
Si vous utilisez un jeton de sécurité pour l'authentification, nous vous recommandons de spécifier ce paramètre.
Si vous utilisez l'ID de clé d'accès et la clé d'accès secrète d'un compte Alibaba Cloud ou d'un utilisateur RAM pour l'authentification, laissez ce paramètre vide.
-
Utiliser l'ID de clé d'accès et la clé d'accès secrète :
Remplacez
<Access-key-id>et<Access-key-secret>dans l'exemple par l'ID de clé d'accès et la clé d'accès secrète d'un utilisateur RAM. Pour savoir comment créer un ID de clé d'accès et une clé d'accès secrète, consultez la rubrique Créer une paire de clés d'accès.{ "AccessKeyId": "LTAI************************", "AccessKeySecret": "At32************************" } -
Utiliser des identifiants d'accès temporaires :
RemarquePour garantir la sécurité des données lorsque les identifiants d'accès sont utilisés pendant une longue période en environnement de production, nous vous recommandons d'utiliser des identifiants d'accès temporaires afin d'éviter toute fuite de l'ID de clé d'accès et de la clé d'accès secrète. Pour autoriser un accès temporaire, obtenez des identifiants d'accès temporaires. Pour plus d'informations, consultez la rubrique Utiliser les identifiants temporaires fournis par STS pour accéder à OSS. Après avoir obtenu les identifiants d'accès temporaires, remplacez <Access-key-id>, <Access-key-secret> et <Security-Token> par l'ID de clé d'accès, la clé d'accès secrète et le jeton de sécurité.
{ "AccessKeyId": "STS.L4aB******************", "AccessKeySecret": "wyLTSm*************************", "SecurityToken": "************", "Expiration": "2024-08-15T15:04:05Z" }
-
Exécutez la commande
chmod 400 /root/.alibabacloud/credentialspour accorder des autorisations en lecture seule sur le fichiercredentials, garantissant ainsi la sécurité de l'ID de clé d'accès et de la clé d'accès secrète.
Configurer OSS Connector
-
Créez un fichier de configuration nommé
config.jsonpour OSS Connector.mkdir -p /etc/oss-connector/ && touch /etc/oss-connector/config.json -
Définissez les paramètres et enregistrez le fichier de configuration.
Dans la plupart des cas, les configurations par défaut suffisent.
{ "logLevel": 1, "logPath": "/var/log/oss-connector/connector.log", "auditPath": "/var/log/oss-connector/audit.log", "expireTimeSec": 120, "prefetch": { "vcpus": 16, "workers": 16, "maxCacheAdviseGB": -1 }, "datasetConfig": { "prefetchConcurrency": 24, "prefetchWorker": 2 }, "checkpointConfig": { "prefetchConcurrency": 24, "prefetchWorker": 4, "uploadConcurrency": 64 } }Le tableau suivant décrit les paramètres. Lisez attentivement les instructions avant de modifier les configurations.
Paramètre
Obligatoire
Exemple
Description
logLevel
Non
1
Le niveau de journalisation. La valeur par défaut est 1. Nous vous recommandons de définir ce paramètre sur 2.
Valeurs valides : 0, 1, 2 et 3. 0 correspond à Debug, 1 à INFO, 2 à WARN et 3 à ERROR.
logPath
Non
/var/log/oss-connector/connector.log
Le chemin d'accès au journal d'OSS Connector pour l'IA/le ML. Valeur par défaut :
/var/log/oss-connector/connector.log.auditPath
Non
/var/log/oss-connector/audit.log
Le chemin d'accès au journal d'audit d'OSS Connector pour l'IA/le ML, qui enregistre les requêtes de lecture et d'écriture dont la latence dépasse 100 millisecondes. Valeur par défaut :
/var/log/oss-connector/audit.log.expireTimeSec
Non
120
L'intervalle, en secondes, après lequel le connecteur relit le fichier des identifiants d'accès et les actualise s'ils ont expiré. Par défaut : 120.
prefetch
vcpus
Non
16
Le nombre de vCPU pour le préchargement dans les scénarios d'inférence. Par défaut : 16.
workers
Non
16
Le nombre de threads de travail pour le préchargement dans les scénarios d'inférence. Par défaut : 16.
maxCacheAdviseGB
Non
-1
La taille maximale du cache mémoire, en Go, pouvant être utilisée pour le préchargement. La valeur par défaut -1 indique qu'il n'y a aucune limite. Si la taille du fichier de modèle dépasse la mémoire disponible du nœud, définissez ce paramètre pour éviter les erreurs de type Out of Memory (OOM). Vous pouvez également définir cette valeur à l'aide de la variable d'environnement
CONNECTOR_MAX_CACHE_ADVISE_GB, qui est prioritaire sur ce paramètre.DatasetConfig
prefetchConcurrency
Non
24
Le nombre de tâches de téléchargement simultanées lors de l'utilisation d'un jeu de données pour précharger des données depuis OSS. Valeur par défaut : 24.
prefetchWorker
Non
2
Le nombre de vCPU disponibles lors de l'utilisation d'un jeu de données pour précharger des données depuis OSS. Valeur par défaut : 2.
checkpointConfig
prefetchConcurrency
Non
24
Le nombre de tâches de téléchargement simultanées lors de l'utilisation de la lecture de points de contrôle pour précharger des données depuis OSS. Valeur par défaut : 24.
prefetchWorker
Non
4
Le nombre de vCPU disponibles lors de l'utilisation de la lecture de points de contrôle pour précharger des données depuis OSS. Valeur par défaut : 4.
uploadConcurrency
Non
64
Le nombre de tâches de téléversement simultanées lors de l'utilisation de l'écriture de points de contrôle pour téléverser des données vers OSS. Valeur par défaut : 64.
Configurer les variables d'environnement
Vous pouvez également configurer OSS Connector pour l'IA/le ML à l'aide de variables d'environnement. Ces variables remplacent les paramètres correspondants du fichier de configuration.
|
Variable d'environnement |
Description |
|
OSS_AUTHORIZATION_FILE_PATH |
Le chemin d'accès au fichier d'identifiants d'accès au format JSON. Les formats ID/clé d'accès et identifiants STS temporaires sont pris en charge.
Lorsqu'elle est définie, cette variable est prioritaire sur les variables d'environnement |
|
CONNECTOR_CONFIG_PATH |
Spécifie le chemin d'accès au fichier de configuration. Par défaut : |
|
CONNECTOR_UDS_PATH |
Le chemin d'accès au fichier pour le socket de domaine Unix (UDS). Les processus principaux et enfants du connecteur utilisent le UDS pour la communication. Par défaut : |
|
CONNECTOR_MAX_CACHE_ADVISE_GB |
Définit la taille du cache mémoire, en Go, pour le préchargement. Ce paramètre équivaut à |
Références
Après avoir installé et configuré OSS Connector pour l'IA/le ML, vous pouvez :
Utiliser OssMapDataset pour créer un jeu de données de type map adapté à la lecture aléatoire. Pour plus d'informations, consultez la rubrique Utiliser les données OSS pour créer un jeu de données OssMapDataset adapté à la lecture aléatoire.
Utiliser OssIterableDataset pour créer un jeu de données itérable adapté à la lecture séquentielle en flux continu. Pour plus d'informations, consultez la rubrique Utiliser les données OSS pour créer un jeu de données itérable adapté à la lecture séquentielle en flux continu.
Utiliser OssCheckpoint pour effectuer des opérations de lecture et d'écriture sur les points de contrôle dans OSS. Pour plus d'informations, consultez la rubrique Stocker et accéder aux points de contrôle dans OSS.
Utiliser OSS Connector pour l'IA/le ML afin d'améliorer l'efficacité du déploiement de modèles dans les scénarios d'inférence. Pour plus d'informations, consultez la rubrique Utiliser OSS Connector pour l'IA/le ML pour améliorer l'efficacité du déploiement de modèles.
Utiliser la fonctionnalité de diffusion de modèles pour distribuer efficacement les données de modèle vers plusieurs instances d'inférence. Pour plus d'informations, consultez la rubrique Diffusion de modèles.
Activer la fonctionnalité de connecteur dans Kubernetes pour le déploiement de l'inférence de modèles. Pour plus d'informations, consultez la rubrique Activer le connecteur dans Kubernetes.