Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Black Friday: -25€ dès 75€ sur les livres en ligne, vidéos... avec le code BWEEK25. J'en profite !

Déploiement et administration

Introduction

SQL Server 2012 avait bousculé SSIS avec plusieurs changements majeurs, notamment l’arrivée du Catalogue Integration Services et de sa base SSISDB permettant de consolider les journaux d’exécution et les outils d’administration avec l’arrivée de procédures stockées dédiées. Mais aussi le mode projet qui permettait de partager les connexions et les paramètres entre les différents packages. Entre SQL 2012 et SQL 2017, la gestion de SSIS reste la même avec quelques améliorations décrites dans le chapitre Nouveautés SSIS.

Lors de l’administration et le déploiement de SSIS, la majorité des actions sont réalisables graphiquement, en T-SQL, ou via PowerShell.

Le catalogue SSISDB

Le catalogue SSISDB est le référentiel apparu avec SSIS 2012 et l’arrivée du modèle de déploiement de projet pour lequel il constitue l’unique mode de stockage et de gestion des packages, des paramètres et des projets SSIS. Il contient aussi toutes les données liées à l’exploitation de ceux-ci telles que les données relatives à l’exécution des packages, et les différentes versions déployées. 

Ce catalogue SSISDB s’appuie sur une base de données SQL Server portant le même nom que lui. Cette base contient tous les objets (tables, vues, procédures stockées et fonctions) nécessaires au stockage et à la réalisation des différentes tâches liées à l’administration et à l’exécution des packages et des projets.

images/5-RI-1.PNG

L’installation de SQL Server ne crée pas le catalogue, il s’agit donc de la première étape à effectuer post-installation. La procédure d’installation est indiquée au chapitre Introduction à SSIS.

1. Configuration du catalogue

Le catalogue est créé avec des paramètres par défaut qu’il est bon de connaître et configurer.

images/5-RI-2.PNG

Dans l’onglet Général, la seule propriété modifiable...

Les objets du catalogue SSIS

L’écosystème de SSIS fourmille de nombreux objets tels que les dossiers, les projets, les packages, les environnements, les permissions, les références d’environnement. Ces objets sont tous sérialisés dans les tables présentes dans la base SSISDB et modifiables via l’exécution de procédures stockées, ou l’utilisation de PowerShell. La modification directe des valeurs présentes dans les tables est quant à elle à proscrire.

1. Dossier

Il n’est pas possible de déployer un projet SSIS directement à la racine du catalogue SSIS, la création d’un dossier est donc obligatoire. D’autant plus que cela permet de gérer les droits d’accès à un ensemble de projets.

La création d’un dossier est réalisée via un clic droit sur Catalogues Integration Services SSISDB - Créer un dossier.

images/5-RI-3.PNG

La création d’un dossier ne requiert que le nom et la description de celui-ci. Par ailleurs, si vous cliquez sur le bouton Script de la fenêtre Créer un dossier, vous pouvez récupérer le script T-SQL correspondant à l’appel de la procédure stockée utilisée pour la création de ce dossier.


Declare @folder_id bigint 
EXEC [SSISDB].[catalog].[create_folder] 
@folder_name=N'Marketing', 
@folder_id=@folder_id OUTPUT 
Select @folder_id 
EXEC [SSISDB].[catalog].[set_folder_description] 
@folder_name=N'Marketing', 
@folder_description=N'Dossier à usage des projets marketing'
 

Le dossier créé, il est possible de gérer les permissions en effectuant un clic droit sur le dossier Propriétés - Autorisations afin de définir les habilitations des futurs développeurs, exploitants, utilisateurs des projets qui seront déployés.

images/5-RI-4.PNG

La sécurité est traitée de façon plus détaillée à la fin de ce chapitre.

2. Environnement

La question de la configuration des packages SSIS est un point central. En effet, comment modifier facilement les chaînes de connexion, les paramètres d’exécution en fonction des différents environnements (Dev/Rec/Prod...) afin de rendre plus simple le paramétrage d’un flux...

La sécurité

La sécurité est applicable à différents niveaux dans SQL Server Integration Services. En effet, il est possible d’appliquer des règles d’accès sur la base SSISDB, les dossiers, les projets et les environnements.

1. Sécurité niveau SSISDB

  • SSIS_ADMIN : rôle qui donne tous les droits sur le catalogue SSIS.

  • SSIS_LOGREADER : arrivé avec SQL Server 2017, ce rôle permet d’accéder aux informations de supervision uniquement, les vues accessibles sont les suivantes : [catalog].[projects], [catalog].[packages], [catalog].[operations], [catalog].[extended_operation_info], [catalog].[operation_messages], [catalog].[event_messages], [catalog].[execution_data_statistics], [catalog].[execution_component_phases], [catalog].[execution_data_taps], [catalog].[event_message_context], [catalog].[executions], [catalog].[executables], [catalog].[executable_statistics], [catalog].[validations], [catalog].[execution_parameter_values] et [catalog].[execution_property_override_values]

images/5-RI-28.PNG

2. Sécurité niveau dossier

Accessible via un clic droit sur le dossier - Propriétés - Autorisations, afin de définir les habilitations des futurs développeurs, exploitants, utilisateurs des projets qui seront déployés.

images/5-RI-4.PNG

Il existe huit autorisations au niveau dossier :

  • Lecture : permet de lire les propriétés...