I was leafing through some SCCM 2012 information and found an old post from John Vintzel about how the Distribution Points in SCCM 2012 work differently compared to how they used to work in 2007. Whilst his post is about SCCM 2012 Beta 2, it’s still relevant to the full release and John touches on all the differences between System Center Configuration Manager 2007 and 2012.
John Vintzel’s blog article:
My favorite changes are the fact that microsoft have merged all the distribution points (Standard, branch dp and server share) into a single DP role, the fact that you can select any machine (vista SP2 and above) to be a DP and Single Instance Storage.
It’s also quite neat that they’ve rolled the pxe service point up into the DP so now instead of two roles, you can rely on the DP to pxe boot clients.
I want to delve a little more into single instance storage as I think this is a great feature. It allows you to only store a single instance of a unique file even when it is referenced by multiple packages. This is great! It means a largely reduced DP as it doesn’t have to replicate content into their separate directories. This has two direct benefits of using less disk space and less content replication traffic if your DP’s are over the wire in a branch office somewhere.
The change does mean that SCCM 2012 now uses a directory called the “content library” (SCCMContentLib) which contains three components, file, data and package library and this replaces the old method of using the SMSPKG shares as the default directory structure to host your packages and content.
The only real issue with this is because we now use single instance storage, grabbing a package from a DP manually can be a bit of a chore as previously all we needed was the packageID and we could just match that up. Now the files are broken up in the three areas of the content library.
The datalib directory (Data Library) references the metadata of the file; its attributes and hash. The hash value will identify the file in question you are looking for.
The filelib directory (File Library) will host the actual file as well as data referencing which packages are linked with that relevant file.
The pkglib directory (Package Library) will tell you the details of that package in SCCM 2012 such as the version number/revision of that package etc.
When it comes to distribution time, SCCM will use all these pieces of data from the content library and “recreate” the package.
Howard Hoy writes a pretty in depth explanation of this:
And Vimal Das posted an excellent break down of his testing into seeing how SIS works with screenshots of his steps! Great stuff: