Install PrimeHub Enterprise
Check the prerequisites for PrimeHub first before preceding to the PrimeHub installation.
This document will guide you how to install PrimeHub EE (Trial license) by Helm.
Add InfuseAI Chart repo
helm repo add infuseai https://charts.infuseai.io
helm repo update
Prepare the Value File
Prepare the value file primehub-values.yaml
for helm installation.
Key | Description |
---|---|
PRIMEHUB_DOMAIN | The domain name of primehub. It can be the same as primehub's one. |
PRIMEHUB_PASSWORD | The password for primehub admin. (The default username of admin is phadmin ) |
GRAPHQL_SECRET_KEY | The graphql API secret key |
HUB_AUTH_STATE_CRYPTO_KEY | The jupyterhub crypo key. Please reference the z2jh document. |
HUB_PROXY_SECRET_TOKEN | The jupyterhub secret. Please reference the z2jh document. |
Modify the environment variables below and execute the commands to generate the value file.
PRIMEHUB_DOMAIN=1.2.3.4.nip.io
PRIMEHUB_PASSWORD=__my_password__
GRAPHQL_SECRET_KEY=$(openssl rand -hex 32)
HUB_AUTH_STATE_CRYPTO_KEY=$(openssl rand -hex 32)
HUB_PROXY_SECRET_TOKEN=$(openssl rand -hex 32)
cat <<EOF > primehub-values.yaml
primehub:
domain: ${PRIMEHUB_DOMAIN}
ingress:
annotations:
kubernetes.io/ingress.allow-http: "true"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
hosts:
- ${PRIMEHUB_DOMAIN}
bootstrap:
password: ${PRIMEHUB_PASSWORD}
graphql:
sharedGraphqlSecret: ${GRAPHQL_SECRET_KEY}
jupyterhub:
auth:
state:
cryptoKey: ${HUB_AUTH_STATE_CRYPTO_KEY}
proxy:
secretToken: ${HUB_PROXY_SECRET_TOKEN}
EOF
Install
Run helm command to install primehub
helm upgrade \ primehub infuseai/primehub \ --install \ --create-namespace \ --namespace hub \ --values primehub-values.yaml \ --values https://raw.githubusercontent.com/InfuseAI/primehub/master/examples/ee-values.yaml
In the first time installation, it may take a longer time to pull images. You can add
--timeout 10m
to change the default timeout duration.Label the nodes which can be assigned for jupyterhub servers
kubectl label node component=singleuser-server --all
Verify the Installation
Run this command to wait for PrimeHub ready
kubectl -n hub rollout status deploy/primehub-console
Open
http://${PRIMEHUB_DOMAIN}
and log in by the admin username and password.Enter
Notebooks
for launching a JupyterHub.
Apply License Key (Optional)
By the default trial license, it doesn't allow to add new groups, instance types, images. If you don't have a valid license file. Please contact InfuseAI for the license inquiry.
If you have a valid license file from InfuseAI, run this command to apply a license key.
kubectl -n hub apply -f path/to/license_key_yaml_file
You can check the license status from System Management in the admin dashboard.
Troubleshooting
If there is something wrong when installing, you can check the bootstrap job log to see what's going on
kubectl -n hub logs jobs/primehub-bootstrap