Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In some situations, the Smartfacts server has no access to the internet. In this case, it is not possible to download the needed software and images. This article describes which options we have to install Smartfacts in such scenarios.

...

Copy the files to the server

  • In your home directory, create Create a new directory “download” in your home directory

  • Create a new directory “software” under “download”

  • Copy all downloaded files to ~/download/software
    After copying all files, the file structure should look like this:

    Code Block
    download
    └── software
        ├── helm-v3.10.3-linux-amd64.tar.gz
        ├── install.sh
        ├── install_airgapped_software.sh
        ├── k3s
        └── k3s-airgap-images-amd64.tar.gz

...

Download the Smartfacts Helm Chart

  • Log with the provided credential into the Smartfacts Chart Registry using the credentials provided and download the latest chart version that does not have contain the postfix “-dev”.

  • Copy the downloaded helm chart to your home directory on the Smartfacts server

  • Extract the helm chart with using the command

    Code Block
    tar -xvzf smartfacts-*.tgz

...

Provide Certificates and Key as Base64 String

The Prerequisite is: The complete certificate chain is available in a file as base64-encoded x509 certificates. The certificates are contained in the file in the correct order (server certificate at the top, root certificate at the bottom). See Section “Certificates” above in this article.

Save the certificate chain as a base64-encoded string:

Code Block
cat <your certificate chain.crt> | base64 -w0 > chain.crt.base64

Save certificate key as a base64-encoded string:

Code Block
cat <your certificate key.key> | base64 -w0 > key.base64

Customize Values File

  • Change to the home directory of your user 's home directory on the server and create a new text file values.yaml with the following content:

    Code Block
    global:
      domain: "<your-domain>"
      instance: "smartfacts-poc"
      registry: "library"
      cert:
        crtFullChain: "<FULL-CHAIN-CERT-BASE64>"
        key: "<CERT-KEY-BASE64>"
      ingress:
        enabled: true
    mailservice:
      enabled: false
    genoslc:
      enabled: false
  • Replace the value of the property domain property with your domain name.

  • Replace the placeholder of the property crtFullChain property with the content of the file chain.crt.base64.

  • Replace the placeholder of the property key property with the content of the key.base64 file.

  • Save the file values.yaml file.

Provide the container images

The Kubernetes environment at the Smartfacts server needs to must have access to the Smartfacts container images of Smartfacts.

The recommended way of providing to gain access to the container images is to add the Smartfacts registry https://repo.mid.de to an existing container registry at in your company which organisation that has access to the internet. This registry works serves as a proxy registry , so that the air gapped Smartfacts server can load the Smartfacts images through that this proxy registry. Follow the instructions in the section Provide container images with a proxy container registry if you can use a proxy registry.

If it is not possible to use a proxy repositoryregistry, the container images can be loaded directly into the container service at of the Smartfacts server. To do this, follow the instructions in the section Provide container images without a container registry.

Expand
titleProvide container images with a proxy container registry

Provide container images with a proxy container registry

Please contact your administrators to add the Smartfacts registry https://repo.mid.de to the proxy registry.

Add login data to the proxy registry

To connect to your proxy registry you must insert the login information of the proxy registry in your values.yaml file.

To do so, replace the placeholder in the following text and insert it into a file “registrylogin.txt” on the Smartfacts server.

Code Block
{
  "auths":
  {
    "<proxy registry name>" :
    {
      "username":"<username>",
      "password":"<password>"
    }
  }
}
  • Replace the placehoder <proxy registry name> with the name of your proxy registry without a protocoll (e.g. write “repo.yourcompany.com”, not “https://repo.yourcompany.com”)

  • Replace the value of the fields “username” an “password” with the credentials for your proxy registry

  • Save the file with filename “registrylogin.txt”

  • convert the login info to base64

    Code Block
    cat registrylogin.txt | base64 -w0 > registrylogin.base64
  • In the file “values.yaml” add a new line below the line starting with “instance” with the content

    Code Block
      repologin: "<content of file registrylogin.base64>"
    • Replace the placehoder “<content of file registrylogin.txt>“ with the content of the file “registrylogin.base64”

    • Make sure that the indentation at the begin of the line is exact the same as in the line above

  • delet the files “registrylogin.txt” and “registrylogin.base64”

...