github.com/pachyderm/pachyderm@v1.13.4/doc/docs/1.11.x/getting_started/wsl-deploy.md (about)

     1  # Deploy Pachyderm on a Microsoft Windows machine
     2  
     3  You can deploy Pachyderm locally on your Microsoft Windows computer to
     4  try out Pachyderm. However, currently Pachyderm has limited support for
     5  Windows. This document provides guidelines that enable you to run Pachyderm
     6  on a Windows machine for preview. You might need to troubleshoot these
     7  instructions further to make this work. To test full functionality, we
     8  encourage you to run Pachyderm in a UNIX environment.
     9  
    10  ## Prerequisites
    11  
    12  You need to have the following components installed on your Microsoft Windows
    13  computer to deploy Pachyderm:
    14  
    15  * Microsoft Windows 10 or later
    16  * Microsoft PowerShell™
    17  * Ubuntu™ Windows Subsystem for Linux (WSL)
    18  * Hyper-V™
    19  * Minikube
    20  * `kubectl`
    21  
    22  While PowerShell is included with your standard Windows tools, other components
    23  might not be included or enabled. Pachyderm recommends that you install Ubuntu
    24  WSL because it was tested and verified by our team.
    25  
    26  ## Install Ubuntu WSL
    27  
    28  `pachctl` is a Pachyderm command-line interface that enables you to interact
    29  with Pachyderm. It requires a UNIX environment to run correctly. Therefore,
    30  you need a WSL to run `pachctl` commands. We recommend that you install an
    31  Ubuntu WSL. To install WSL, follow the steps in the
    32  [Microsoft documentation](https://docs.microsoft.com/en-us/windows/wsl/install-win10).
    33  
    34  ## Enable Hyper-V
    35  
    36  You need to install Hyper-V on your host Windows machine so that Minikube can
    37  use it to create a virtual machine on which your Pachyderm containerized cluster
    38  will run. You also need to adjust the amount of CPU and memory allocated to
    39  Hyper-V so that your Minikube machines do not crash with an out-of-memory error.
    40  
    41  To enable Hyper-V, complete the following steps:
    42  
    43  1. Run PowerShell as Administrator.
    44  1. Enable Hyper-V by running the following command:
    45  
    46     ```powershell
    47     Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
    48     ```
    49  
    50  1. Adjust resource utilization by opening the Hyper-V manager. Typically,
    51  setting memory to 3072 MB should be sufficient for most testing deployments.
    52  
    53  ## Install Minikube
    54  
    55  Minikube is a tool that enables you to run a single-node Kubernetes cluster that
    56  is typically used for testing locally on your computer.
    57  You need to install Minikube on your host machine from PowerShell and not from
    58  the Ubuntu WSL. In this section, Minikube is installed by using the Chocolatey
    59  package manager, which is a popular tool for installing programs on Windows. But if
    60  you prefer another installation method, it should work too.
    61  
    62  To install Minikube, complete the following steps:
    63  
    64  1. Install Chocolatey as described in the [Chocolatey documentation](https://chocolatey.org/docs/installation).
    65  1. Install Minikube:
    66  
    67     ```shell
    68     choco install minikube
    69     ```
    70  
    71  ## Install `kubectl`
    72  
    73  You need to install `kubectl` on your Ubuntu WSL and then copy the `kubectl`
    74  configuration file from MInikube that is installed on your host Windows
    75  machine to the `~/.kube` directory in your Ubuntu WSL machine.
    76  
    77  To install and configure `kubectl`
    78  
    79  1. Install `kubectl` on WSL as described in the
    80  [Kubernetes documentation](https://kubernetes.io/docs/tasks/tools/install-kubectl/).
    81  1. Create a `~/.kube` directory.
    82  1. Copy the Minikube config file from the Windows host system to the Ubuntu
    83  WSL `/.kube/` directory:
    84  
    85     ```shell
    86     cp /mnt/c/Users/Svetlana/.kube/config ~/.kube/config
    87     ```
    88  
    89  1. Change the following lines in the configuration file:
    90  
    91     ```shell hl_lines="3 4 5"
    92      users:
    93      - name: minikube
    94        user:
    95           client-certificate: C:\Users\User\.minikube\client.crt
    96           client-key: C:\Users\User\.minikube\client.key
    97     ```
    98  
    99     You need to change the path to the client key and certificate
   100     to point them to the location on your Windows host.
   101  
   102  1. Verify that `kubectl` is configured correctly:
   103  
   104     ```shell
   105     kubectl version
   106     ```
   107  
   108     **System Response:**
   109  
   110     ```shell
   111     Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.0", GitCommit:"70132b0f130acc0bed193d9ba59dd186f0e634cf", GitTreeState:"clean", BuildDate:"2019-12-07T21:20:10Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"linux/amd64"}
   112     Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.0", GitCommit:"70132b0f130acc0bed193d9ba59dd186f0e634cf", GitTreeState:"clean", BuildDate:"2019-12-07T21:12:17Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"linux/amd64"}
   113     ```
   114  
   115  ## Install `pachctl`
   116  
   117  Get the latest version of `pachctl` by directly downloading it to your computer
   118  as described in [Install pachctl](../local_installation/#install-pachctl).
   119  
   120  **Example:**
   121  
   122  
   123  ```shell
   124  curl -o /tmp/pachctl.deb -L https://github.com/pachyderm/pachyderm/releases/download/v{{ config.pach_latest_version }}/pachctl_{{ config.pach_latest_version }}_amd64.deb && sudo dpkg -i /tmp/pachctl.deb
   125  ```
   126  
   127  **System Response:**
   128  
   129  ```shell
   130  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
   131                                   Dload  Upload   Total   Spent    Left  Speed
   132  100   613    0   613    0     0   2043      0 --:--:-- --:--:-- --:--:--  2043
   133  100 25.9M  100 25.9M    0     0  10.0M      0  0:00:02  0:00:02 --:--:-- 13.0M
   134  ```
   135  
   136  ## Deploy Pachyderm
   137  
   138  After you complete all the steps above, start your Minikube VM by running
   139  `minikube start` and deploy Pachyderm in Ubuntu WSL by running
   140  pachctl deploy local` as described in [Deploy Pachyderm](../local_installation/#deploy-pachyderm).