Skip to content

Commit db8b3b5

Browse files
Merge pull request #1239 from steviecoaster/gh970
(#970) Publish new Organizational Deployment Guide
2 parents a3f5a9d + 05c9660 commit db8b3b5

32 files changed

+2539
-2
lines changed

src/components/docs/CentralManagementDatabaseSetup.mdx

Lines changed: 388 additions & 0 deletions
Large diffs are not rendered by default.

src/components/docs/CentralManagementServiceSetup.mdx

Lines changed: 243 additions & 0 deletions
Large diffs are not rendered by default.

src/components/docs/CentralManagementWebsiteSetup.mdx

Lines changed: 616 additions & 0 deletions
Large diffs are not rendered by default.

src/components/docs/FossOrgGuideRepository.mdx

Whitespace-only changes.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
3+
---
4+
import Callout from '@choco-astro/components/Callout.astro';
5+
import Xref from '@components/Xref.astro';
6+
7+
#### Requirements
8+
9+
To install and run Jenkins, your server must meet the following requirements:
10+
11+
- Windows Server 2022 or later
12+
- 2 CPU cores
13+
- 4 GB+ of RAM
14+
- 50 GB+ of drive space
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
3+
---
4+
import Callout from '@choco-astro/components/Callout.astro';
5+
import Xref from '@components/Xref.astro';
6+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
7+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
8+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
9+
import CentralManagementSecureConnectionStrings from '@components/docs/CentralManagementSecureConnectionStrings.mdx';
10+
import DynamicCodeBlockInput from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlockInput.astro';
11+
import DynamicCodeBlock from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlock.astro';
12+
13+
export const dbOptionsDb = [
14+
{ id: 'integrated-security-db', title: 'Authenticate w/ Integrated Security', isActive: true },
15+
{ id: 'sql-login-db', title: 'Authenticate w/ Sql Login', updateAnchor: true },
16+
{ id: 'connection-string-db', title: 'Authenticate w/ Connection String', updateAnchor: true }
17+
];
18+
19+
<Callout type="info">
20+
<p>
21+
The Chocolatey Central Management Database is the first component that should be installed.
22+
It provides the database schema used by Chocolatey Central Management. The connection string
23+
provided needs to have the ability to create the ChocolateyManagement database and update the schema.
24+
</p>
25+
</Callout>
26+
27+
<DynamicCodeBlock language="powershell">
28+
{`
29+
$ccmParams = @{
30+
ConnectionString = 'Server=Localhost\\SQLEXPRESS;Database=ChocolateyManagement;Trusted_Connection=true;'
31+
Component = 'Database'
32+
CertificateDnsName = 'SslCertificateDnsName'
33+
Thumbprint = 'SslCertificateThumbprint'
34+
}
35+
36+
& ([Scriptblock]::Create([System.Net.WebClient]::New().DownloadString('https://raw.githubusercontent.com/chocolatey/choco-orgguide-scripts/refs/heads/main/Bootstrap.ps1')))
37+
38+
.\\Install-ChocolateyCentralManagement.ps1 @ccmParams
39+
`}
40+
</DynamicCodeBlock>
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
3+
---
4+
import Callout from '@choco-astro/components/Callout.astro';
5+
import Xref from '@components/Xref.astro';
6+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
7+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
8+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
9+
import CentralManagementSecureConnectionStrings from '@components/docs/CentralManagementSecureConnectionStrings.mdx';
10+
import DynamicCodeBlockInput from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlockInput.astro';
11+
import DynamicCodeBlock from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlock.astro';
12+
13+
<Callout type="info">
14+
<p>
15+
Before installing the Chocolatey Central Management Service component, ensure you have set up the Chocolatey Central Management Database component.
16+
</p>
17+
</Callout>
18+
19+
<Callout type="warning">
20+
<p>
21+
- _Ensure that you have enabled **Windows Authentication** and **SQL Server Authentication** in your SQL Server instance._
22+
- _The connection string used to install the Service component must have at least _**db_datareader**_ and _**db_datawriter**_ permissions on the ChocolateyManagement database._
23+
- _If you are using a custom SSL certificate, ensure that the certificate is installed in the LocalMachine\TrustedPeople store on the server where the Chocolatey Central Management Service is being installed._
24+
</p>
25+
</Callout>
26+
27+
<DynamicCodeBlock language="powershell">
28+
{`
29+
$ccmParams = @{
30+
ConnectionString = 'Server=Localhost\\SQLEXPRESS;Database=ChocolateyManagement;User ID=ChocoUser;Password=Ch0c0R0cks;'
31+
Component = 'Service'
32+
CertificateDnsName = 'SslCertificateDnsName'
33+
Thumbprint = 'SslCertificateThumbprint'
34+
}
35+
36+
& ([Scriptblock]::Create([System.Net.WebClient]::New().DownloadString('https://raw.githubusercontent.com/chocolatey/choco-orgguide-scripts/refs/heads/main/Bootstrap.ps1')))
37+
38+
.\\Install-ChocolateyCentralManagement.ps1 @ccmParams
39+
`}
40+
</DynamicCodeBlock>
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
3+
---
4+
import Callout from '@choco-astro/components/Callout.astro';
5+
import Xref from '@components/Xref.astro';
6+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
7+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
8+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
9+
import CentralManagementSecureConnectionStrings from '@components/docs/CentralManagementSecureConnectionStrings.mdx';
10+
import DynamicCodeBlockInput from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlockInput.astro';
11+
import DynamicCodeBlock from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlock.astro';
12+
13+
<Callout type="info">
14+
<p>
15+
Before installing the Chocolatey Central Management Website component, ensure you have set up the Chocolatey Central Management Database component.
16+
</p>
17+
</Callout>
18+
19+
<Callout type="warning">
20+
<p>
21+
- _Ensure that you have enabled **Windows Authentication** and **SQL Server Authentication** in your SQL Server instance._
22+
- _The connection string used to install the Service component must have at least _**db_datareader**_ and _**db_datawriter**_ permissions on the ChocolateyManagement database._
23+
- _If you are using a custom SSL certificate, ensure that the certificate is installed in the LocalMachine\TrustedPeople store on the server where the Chocolatey Central Management Service is being installed._
24+
</p>
25+
</Callout>
26+
27+
<DynamicCodeBlock language="powershell">
28+
{`
29+
$ccmParams = @{
30+
ConnectionString = 'Server=Localhost\\SQLEXPRESS;Database=ChocolateyManagement;User ID=ChocoUser;Password=Ch0c0R0cks;'
31+
Component = 'Website'
32+
CertificateDnsName = 'SslCertificateDnsName'
33+
Thumbprint = 'SslCertificateThumbprint'
34+
}
35+
36+
& ([Scriptblock]::Create([System.Net.WebClient]::New().DownloadString('https://raw.githubusercontent.com/chocolatey/choco-orgguide-scripts/refs/heads/main/Bootstrap.ps1')))
37+
38+
.\\Install-ChocolateyCentralManagement.ps1 @ccmParams
39+
`}
40+
</DynamicCodeBlock>
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
3+
---
4+
import Callout from '@choco-astro/components/Callout.astro';
5+
import Xref from '@components/Xref.astro';
6+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
7+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
8+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
9+
import CentralManagementSecureConnectionStrings from '@components/docs/CentralManagementSecureConnectionStrings.mdx';
10+
import CentralManagementDatabaseSetup from '@components/docs/CentralManagementDatabaseSetup.mdx';
11+
import CentralManagementWebsiteSetup from '@components/docs/CentralManagementWebsiteSetup.mdx';
12+
import CentralManagementServiceSetup from '@components/docs/CentralManagementServiceSetup.mdx';
13+
import OrgGuideCcmDatabase from '@components/docs/OrgGuideCcmDatabase.mdx';
14+
import OrgGuideCcmWeb from '@components/docs/OrgGuideCcmWeb.mdx';
15+
import OrgGuideCcmService from '@components/docs/OrgGuideCcmService.mdx';
16+
import OrgGuideCentralManagementIntro from '@components/docs/OrgGuideCentralManagementIntro.mdx'
17+
import DynamicCodeBlockInput from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlockInput.astro';
18+
import DynamicCodeBlock from '@choco-astro/components/dynamicCodeBlock/DynamicCodeBlock.astro';
19+
export const ccmInstall = [
20+
{ id: 'ccm-database', title: 'Chocolatey Cental Management Database', isActive: true },
21+
{ id: 'ccm-service', title: 'Chocolatey Central Management Service', updateAnchor: true },
22+
{ id: 'ccm-web', title: 'Chocolatey Central Management Website', updateAnchor: true }
23+
];
24+
25+
<OrgGuideCentralManagementIntro />
26+
27+
### Requirements
28+
29+
To install and run Chocolatey Central Management, your server(s) must meet the following requirements:
30+
31+
- Windows Server 2022 or later.
32+
- 4 CPU cores
33+
- 16 GB RAM
34+
- 100 GB+ of drive space for computer information and deployment messages processed by the Chocolatey Central Management Service.
35+
36+
### Planning Your Installation
37+
38+
Chocolatey Central Management can be installed on a single server or each component can be installed on separate servers. **All three components are required for a Chocolatey Central Management installation.**
39+
40+
If you have Chocolatey for Business licenses for more than 1,000 endpoints, we recommended installing the components on separate servers.
41+
For 1,000 licenses or fewer, you can install all components on a single server, though we still recommend using a licensed version of SQL Server for the database component.
42+
43+
<Callout type="warning" title="Before You Begin">
44+
45+
Before you can install the Chocolatey Central Management Database, you need to have a SQL Server Instance available. SQL Server Express is only recommended for testing and small environments (fewer than 1,000 endpoints).
46+
</Callout>
47+
48+
### Environment Information
49+
50+
| Variable | Value | Usage |
51+
| -------- | ----- | ----- |
52+
| Component | `Database`, `Service`, `Website` | The component(s) of Chocolatey Central Management to install on the current server. |
53+
| ServiceCredential | Varies | The credentials to use with the Chocolatey Management Service. If the account does not exist, it will be created. The user must have `Log on as a service` privilege. (Service and Web components only) |
54+
| ConnectionString | Varies | The connection string used to connect to the SQL database. |
55+
| IsOffline | True | If true, you will be required to provide the path to the zip file containing the internalized Chocolatey components required for installation. |
56+
| OfflineInstallationMedia | Varies | The path to the zip file containing the internalized Chocolatey components required for installation. This is only required if `IsOffline` is true. |
57+
| CertificateDnsName | <DynamicCodeBlockInput name="SslCertificateDnsName" defaultValue="Fabrikam.com" /> | The DNS name to use for the Chocolatey Management Service if using a wildcard certificate. (Service and Web components only) |
58+
| Thumbprint | <DynamicCodeBlockInput name="SslCertificateThumbprint" defaultValue="1234567890" /> | The thumbprint of the certificate to use for the Chocolatey Management Service. (Service and Web components only) |
59+
60+
### Securing Chocolatey Central Management Communications
61+
62+
By default, the install will create and use self-signed certificates for the Chocolatey Management Service and Web components.
63+
If you wish to use your own certificates, you can do so by providing the `Thumbprint` and `CertificateDnsName` parameters.
64+
65+
<details>
66+
<summary><strong>You must install the certificate to the Local Machine \ Trusted People store when providing the Thumbprint. (click to expand)</strong></summary>
67+
<ul class="list-style-type-disc">
68+
<li>Once you have your SSL certificate in a locatable directory, type `certlm.msc` in the Search bar of the Chocolatey server to open the Microsoft Management Console for Certificates on the local machine.</li>
69+
<li>Right-click the `Trusted People` store and select `All Tasks > Import...`. This will open the Certificate Import Wizard.</li>
70+
<li>Select `Next`, then browse to the location of the SSL certificate you want to use.</li>
71+
<li>Once you select the certificate, click `Next`.</li>
72+
<li>Input the password for the certificate and check the box that says `Mark this key as exportable. This will allow you to back up and transport your keys at a later time.` Click `Next`.</li>
73+
<li>The `Trusted People` certificate store should already be input in the `Browse...` bar. Select `Next`.</li>
74+
<li>Verify the information in the pane and then select `Finish`.</li>
75+
</ul>
76+
</details>
77+
78+
### Chocolatey Central Management Component Installation Scripts
79+
80+
<TabsTabContainer content={ccmInstall} />
81+
<TabsPaneContainer>
82+
<TabsPane content={ccmInstall[0]}>
83+
<OrgGuideCcmDatabase />
84+
<Xref title="Back To Top" value="setup-central-management"/>
85+
</TabsPane>
86+
<TabsPane content={ccmInstall[1]}>
87+
<OrgGuideCcmService />
88+
<Xref title="Back To Top" value="setup-central-management"/>
89+
</TabsPane>
90+
<TabsPane content={ccmInstall[2]}>
91+
<OrgGuideCcmWeb />
92+
<Xref title="Back To Top" value="setup-central-management"/>
93+
</TabsPane>
94+
</TabsPaneContainer>
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
---
3+
import Callout from '@choco-astro/components/Callout.astro';
4+
import Xref from '@components/Xref.astro';
5+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
6+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
7+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
8+
import CentralManagementSecureConnectionStrings from '@components/docs/CentralManagementSecureConnectionStrings.mdx';
9+
import CentralManagementDatabaseSetup from '@components/docs/CentralManagementDatabaseSetup.mdx';
10+
import CentralManagementWebsiteSetup from '@components/docs/CentralManagementWebsiteSetup.mdx';
11+
import CentralManagementServiceSetup from '@components/docs/CentralManagementServiceSetup.mdx';
12+
import OrgGuideCcmDatabase from '@components/docs/OrgGuideCcmDatabase.mdx';
13+
import OrgGuideCcmService from '@components/docs/OrgGuideCcmService.mdx';
14+
export const ccmInstall = [
15+
{ id: 'ccm-database', title: 'CCM Database', isActive: true },
16+
{ id: 'ccm-web', title: 'CCM Web', updateAnchor: true },
17+
{ id: 'ccm-service', title: 'CCM Service', updateAnchor: true }
18+
];
19+
20+
Deploying Chocolatey packages to your endpoints is simple and efficient with Chocolatey Central Management, our reporting and management dashboard.
21+
22+
Using Chocolatey Agent, your endpoints can report on currently installed and outdated packages and run Basic deployments from Chocolatey Central Management to install, upgrade, and uninstall Chocolatey packages, and with Advanced deployments, you can run PowerShell scripts on endpoints as well.
23+
24+
To set up and configure Chocolatey Central Management, please select the tile to get started:
25+
26+
<div class="row mb-md-5">
27+
<div class="mb-4 mb-lg-0 col-sm-6 col-lg-4">
28+
<div class="card card-link card-overlay-bottom card-overlay-theme-bottom h-100 min-h-px-200" style="background-image:url('https://img.chocolatey.org/backgrounds/chocolatey-for-business.svg');">
29+
<div class="card-body d-flex flex-column z-1"> {/* The image above looks weird, but so much better than chocolatey-for-business/central-management-logo.png */}
30+
<div class="mt-auto">
31+
<Xref title="Chocolatey Central Management" value="setup-central-management" classes="h4 mb-0 stretched-link" />
32+
</div>
33+
</div>
34+
</div>
35+
</div>
36+
</div>

0 commit comments

Comments
 (0)