# Microsoft Windows Build
To build Microsoft Windows images for use in Google Compute Engine, the following resources are needed:
* Microsoft OS Volume license media in ISO format
* [PowerShell 7.0 or greater MSI installer](https://github.com/PowerShell/PowerShell#get-powershell)
* [Microsoft .NET Framework 4.8 offline installer for Windows](https://support.microsoft.com/en-us/help/4503548/microsoft-net-framework-4-8-offline-installer-for-windows)
* [Google Cloud SDK Installer](https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe)
The following resources are optional:
* Windows Updates to slipstream install in the installation process
* A Windows Server Update Services server.
## Slipstreaming Windows Update (Optional)
To reduce the time needed to build a Microsoft Windows image we can apply .msu
based updated to the OS. This process is more beneficial for older operating systems.
To do this the build process will install all of the .msu files from the specified updates directory or GCS location in numerical and alphanumeric order.
For Windows Server 2016 and newer operating systems, it is beneficial to install
at least the most recent Servicing Stack Update (SSU), Cumulative Update (CU),
and .NET framework updates.
It is best to install updates in the following order:
1. Microsoft .NET Framework Installation
1. Cumulative Update for .NET Framework
1. The OS's Servicing Stack Update
1. The OS's Cumulative Update
## How the workflow builds the image
1. All of the provided files are uploaded to a GSC bucket that will be used with the workflow.
1. A new installation disk of the specified size is created and attached to a Windows Server 2019 "bootstrap instance".
1. The WIM image from the media, the provided Windows updates, GCE drivers, and installation files are applied to the installation disk. This is all done in the [bootstrap_install.ps1](https://github.com/GoogleCloudPlatform/compute-image-tools/blob/master/daisy_workflows/image_build/windows/bootstrap_install.ps1).
1. The "bootstrap instance" is stopped and a new "install instance" is created that boots the installation disk.
1. The "install instance" is started and will run the [SetupComplete.cmd](https://github.com/GoogleCloudPlatform/compute-image-tools/blob/master/daisy_workflows/image_build/windows/components/SetupComplete.cmd) and then the [post_install.ps1](https://github.com/GoogleCloudPlatform/compute-image-tools/blob/master/daisy_workflows/image_build/windows/post_install.ps1).
1. The "install instance" is stopped and a GCE Image is created from the installation disk with the appropriate [on-demand licenses for Windows Server](https://cloud.google.com/compute/docs/instances/windows/ms-licensing) and features.
## Workflow Variables
The workflow files provide default values for many of the variables. When calling a workflow,
any required variable will need to be provided when calling daisy using the -var: flag. The OS specific workflow files simplify the image creation process by populating the OS specific variables to windows-build.wf.json and also creates a GCE image with the appropriate features and license.
| Variable Name | Description |
| --- | --- |
| project | Project to allocate resources from during build [Project docs](https://cloud.google.com/resource-manager/docs/creating-managing-projects) |
| zone | Zone to use for GCE build instance [Zone docs](https://cloud.google.com/compute/docs/regions-zones/) |
| media | Absolute path to or GCS resource name of the ISO file |
| pwsh | Absolute path to or GCS resource name of the [PowerShell 7.0 or greater MSI installer](https://github.com/PowerShell/PowerShell#get-powershell) |
| dotnet48 | Absolute path to or GCS resource name of the [Microsoft .NET Framework 4.8 offline installer](https://support.microsoft.com/en-us/help/4503548/microsoft-net-framework-4-8-offline-installer-for-windows) |
| cloudsdk | Absolute path to or GCS resource name of the [Google Cloud SDK Installer](https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe) |
| updates | (Optional) Directory or GCS location containing updates to be included in install |
| product_key | (Optional) Windows product key to use. Volume license media by default include the Generic Volume License Key. |
### Selecting a workflow
We have provided multiple workflows per operating system to provide different configurations of each image.
The workflow files use the following naming convention.
OperatingSystem-OperatingSystemEdition-BootType-LicenseType.wf.json
* OperatingSystem: The operating system name and version
* OperatingSystemEdition: The edition of the operating system
* BootType: bios or uefi
* bios: BIOS boot with an MBR formatted boot disk.
* uefi: UEFI boot with an GPT formatted boot disk. Supports Shielded VM features.
* LicenseType: byol or payg
* byol - [bring your own license](https://cloud.google.com/compute/docs/nodes/bringing-your-own-licenses)
* payg - [on-demand Windows Server license](https://cloud.google.com/compute/docs/instances/windows/ms-licensing#on-demand)
Here are some example of what each filename means:
* windows-server-2019-dc-uefi-payg.wf.json
* Windows Server 2019 Data Center using UEFI with an GPT formatted boot disk that is
using an [on-demand Windows Server license](https://cloud.google.com/compute/docs/instances/windows/ms-licensing#on-demand)
* windows-server-2019-dc-uefi-byol.wf.json
* Windows Server 2019 Data Center using UEFI with an GPT formatted boot disk that is
using a [bring your own license](https://cloud.google.com/compute/docs/nodes/bringing-your-own-licenses)
* windows-10-20h2-ent-x86-bios-byol.wf.json
* Windows 10 Enterprise 20h2 x86 using BIOS with an MBR formatted boot disk that is
using a [bring your own license](https://cloud.google.com/compute/docs/nodes/bringing-your-own-licenses)
* windows-10-20h2-ent-x64-uefi-byol.wf.json
* Windows 10 Enterprise 20h2 x64 using using UEFI with an GPT formatted boot disk that is
using a [bring your own license](https://cloud.google.com/compute/docs/nodes/bringing-your-own-licenses)
### Starting a build workflow
Below are some example of how to call daisy using the provided workflows and required variables.
#### Build a Windows Server 2016 Data Center edition with UEFI Support using local files
Place the following resources in a local folder, for this example we'll use `c:\example-build-resources`
* The windows media ISO file.
* [PowerShell 7.0 or greater MSI installer](https://github.com/PowerShell/PowerShell#get-powershell)
* [Microsoft .NET Framework 4.8 offline installer for Windows](https://support.microsoft.com/en-us/help/4503548/microsoft-net-framework-4-8-offline-installer-for-windows)
* [Google Cloud SDK Installer](https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe)
* (Optional) To slipstream any Windows update, places the .msu files in c:\example-build-resources\2016_updates.
```shell
$ daisy -project my_project -zone us-west1-c \
-var:media="c:\example-build-resources\WindowServer2016.ISO" \
-var:updates="c:\example-build-resources\2016_updates" \
-var:pwsh="c:\example-build-resources\PowerShell-7.0.3-win-x64.msi" \
-var:dotnet48="c:\example-build-resources\ndp48-x86-x64-allos-enu.exe" \
-var:cloudsdk="c:\example-build-resources\GoogleCloudSDKInstaller.exe" \
windows-server-2016-dc-uefi.wf.json
```
#### Build a Windows Server 2019 Data Center edition with UEFI Support using files in a GCS bucket
Place the following resources in a GCS bucket, for this example we'll use `gs://example-build-resources`
* The windows media ISO file.
* [PowerShell 7.0 or greater MSI installer](https://github.com/PowerShell/PowerShell#get-powershell)
* [Microsoft .NET Framework 4.8 offline installer for Windows](https://support.microsoft.com/en-us/help/4503548/microsoft-net-framework-4-8-offline-installer-for-windows)
* [Google Cloud SDK Installer](https://dl.google.com/dl/cloudsdk
没有合适的资源?快使用搜索试试~ 我知道了~
用于GoogleComputeEngine图像的工具和脚本。___下载.zip
共929个文件
json:511个
go:165个
py:32个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 182 浏览量
2023-04-19
00:54:21
上传
评论
收藏 1.42MB ZIP 举报
温馨提示
用于GoogleComputeEngine图像的工具和脚本。___下载.zip
资源推荐
资源详情
资源评论
收起资源包目录
用于GoogleComputeEngine图像的工具和脚本。___下载.zip (929个子文件)
10-gce-clean 887B
12-sshd 128B
GCE_SPECIFIC.asc 2KB
disk-local-ssd.bat 2KB
network-testee-checker.bat 948B
disk-testee.bat 843B
boot.bat 761B
multi-nic-master.bat 730B
multi-nic-slave.bat 641B
rhel_7_4_sap.cfg 8KB
rhel_7_7_sap.cfg 8KB
rhel_7_6_sap.cfg 8KB
rhel_7_9_sap.cfg 8KB
rhel_7_byos.cfg 7KB
centos_7.cfg 7KB
rhel_7.cfg 7KB
rocky_linux_9_optimized_gcp.cfg 7KB
rhel_9_0_sap.cfg 7KB
rocky_linux_8_optimized_gcp.cfg 7KB
rocky_linux_8_optimized_gcp_arm64.cfg 7KB
rocky_linux_9_optimized_gcp_arm64.cfg 7KB
rhel_9_byos.cfg 7KB
almalinux_9.cfg 6KB
centos_stream_9.cfg 6KB
rhel_8_2_sap.cfg 6KB
rhel_8_4_sap.cfg 6KB
rhel_8_6_sap.cfg 6KB
rhel_8_1_sap.cfg 6KB
rhel_9_arm64.cfg 6KB
rhel_9.cfg 6KB
rocky_linux_9.cfg 6KB
centos_8.cfg 6KB
centos_stream_8.cfg 6KB
almalinux_8.cfg 6KB
rocky_linux_8.cfg 6KB
rhel_8_byos.cfg 6KB
rocky_linux_9_arm64.cfg 6KB
rhel_8.cfg 6KB
SetupComplete.cmd 6KB
rhui-tools.conf 3KB
create-dirs.conf 463B
status.nginx.conf 286B
health_check.nginx.conf 161B
depend-nfs.conf 52B
google-rhui-client-rhel9.crt 11KB
google-rhui-client-rhel79-sap.crt 11KB
google-rhui-client-rhel7.crt 8KB
google-rhui-client-rhel8-sap.crt 7KB
google-rhui-client-rhel9-sap.crt 7KB
google-rhui-client-rhel7-sap.crt 7KB
google-rhui-client-rhel8.crt 7KB
google-rhui-client-rhel9-sap.csr 2KB
google-rhui-client-rhel7-sap.csr 2KB
google-rhui-client-rhel8-sap.csr 2KB
google-rhui-client-rhel9.csr 2KB
google-rhui-client-rhel7.csr 2KB
google-rhui-client-rhel79-sap.csr 2KB
google-rhui-client-rhel8.csr 2KB
gce_windows_upgrade_tests.Dockerfile 1KB
gce_image_publish.Dockerfile 856B
gce_export.Dockerfile 835B
gce_windows_upgrade.Dockerfile 789B
GCE_SPECIFIC 584B
repository.GCE_SPECIFIC 309B
GCE_SPECIFIC 153B
configure.GCE_SPECIFIC 143B
mock_compute_client.go 52KB
windows_upgrade_test_suite.go 28KB
publish_test.go 28KB
populator_test.go 23KB
storage_client_test.go 23KB
inspect.pb.go 23KB
publish.go 21KB
daisy_utils.go 19KB
scratch_bucket_creator_test.go 19KB
workflows.go 18KB
buffered_writer_test.go 17KB
log_entry.go 16KB
daisy_utils_test.go 15KB
validators_test.go 15KB
daisy_worker_test.go 14KB
output_info.pb.go 14KB
distro.go 14KB
logger.go 13KB
distro_test.go 13KB
resource_location_retriever_test.go 13KB
main_windows.go 12KB
logger_test.go 11KB
utils.go 10KB
inspect_test.go 10KB
mock_storage_client.go 10KB
storage_client.go 10KB
validation_utils_test.go 9KB
validators.go 9KB
logger.go 9KB
logger_test.go 8KB
instance.go 8KB
workflow_hook_resource_labeler_test.go 8KB
main.go 8KB
param_utils.go 7KB
共 929 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Picasso_v3.1 2.ipa
- chromedriver-mac-arm64.zip
- 蓝zapro.apk
- chromedriver-linux64.zip
- UCAS研一深度学习实验-MNIST手写数字识别python源码+详细注释(高分项目)
- 基于Python和PyTorch框架完成的一个手写数字识别实验源码(带MINIST手写数字数据集)+详细注释(高分项目)
- 基于Matlab在MNIST数据集上利用CNN完成手写体数字识别任务,并实现单层CNN反向传播算法+源代码+文档说明(高分项目)
- NVIDIA驱动、CUDA和Pytorch及其依赖
- 基于SVM多特征融合的微表情识别python源码+项目说明+详细注释(高分课程设计)
- html动态爱心代码一(附源码)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功