Development Cluster Configuration: Difference between revisions
DrEdWilliams (talk | contribs) mNo edit summary |
DrEdWilliams (talk | contribs) mNo edit summary |
||
| Line 47: | Line 47: | ||
<pre> | <pre> | ||
kubeadm join 10.1.0.10:6443 --token | kubeadm join 10.1.0.10:6443 --token hnu981.t55u3iytaggmxo0d \ | ||
--discovery-token-ca-cert-hash sha256: | --discovery-token-ca-cert-hash sha256:f7a7c444aff284c40276055d114e61f7f46c82685edd68bb275d9747b4a399b1 \ | ||
--ignore-preflight-errors Swap --node-name=`hostname -s` | --ignore-preflight-errors Swap --node-name=`hostname -s` | ||
</pre> | </pre> | ||
Revision as of 14:27, 26 December 2019
These packages form the basic functionality of the development cluster. The packages need to be installed in this order to preserve the IP address assignments. If the order is changed (or one is left out) you may need to review and modify IP assignments in the DNS server on the firewall.
Scripts & config files are checked into gitlab under the Kubernetes group project listed.
| activity | gitlab | script/procedures/config | IP | hostname(s) |
|---|---|---|---|---|
| BeeGFS Installation | install the parallel filesystem components on controller & nodes to support the /workspace filesystem | |||
| NVIDIA device plugin | https://github.com/NVIDIA/k8s-device-plugin | |||
| K8Dash Dashboard | k8s-admin | 10.0.0.200 | ||
| Dynamic Provisioning | k8s-admin | (k8s-admin wiki) | ||
| Harbor Registry | k8s-admin | 10.0.0.201 | harbor-dev.williams.localnet |
Storage
The production cluster depends on the /workspace filesystem for its persistent storage. The BeeGFS components are installed as shown here:
| component | system | location | storage | size |
|---|---|---|---|---|
| Management Server | controller | /beegfs/beegfs-mgmtd | local SSD | ~200G (shared with OS) |
| Metadata Server | controller | /beegfs/beegfs-meta | local SSD | ~200G (shared with OS) |
| Storage Server | controller | /ws_data/beegfs/beegfs-storage | mounted from Equalogic array | 7.9T |
| Storage Server | storage1 | /ws_data_2 | local 5x4TB RAID5 array | 15T |
Systems that require access to both the development filesystem (/workspace) and the production filesystem (/shared) require a special client configuration.
Dashboard Token
Obtain the current dashboard token with these commands:
kubectl create serviceaccount k8dash-sa
kubectl create clusterrolebinding k8dash-sa --clusterrole=cluster-admin --serviceaccount=default:k8dash-sa
kubectl describe secrets `kubectl get secrets | awk '/k8dash-sa/ {print $1}'` | awk '/token:/ {print $2}'
The current Development cluster dashboard token is:
eyJhbGciOiJSUzI1NiIsImtpZCI6IkxxR0l4c1pkX3puTXNRNlhTWG1JcTdHSk92cEEyRjFiTE5lQWxOUURqVXMifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6Ims4ZGFzaC1zYS10b2tlbi1wNmg4ZyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJrOGRhc2gtc2EiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJhOTFiZTZlZi1hOWE5LTQwMjQtYjM2Zi03MmFjYmM5ZTEzZGUiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDprOGRhc2gtc2EifQ.PTdTVtlmu8cz6jJzR0h0A08iJGIAzaslTc8x_1d9jnQEgKC3HfqKptwAIFRSV4RqvoQfvjKbDzKxAz7CTgepgayZrAXOuumX4GsU3gQMCP5gzovdVAhVR9Jn6Hj8OE2IAKFG6fz3bytabqTqtLFZPlquKcXo9QRq_09Jj9TLxIfMFixRcwxqz5_NfyjHyI55eqidofZf2l88qjVA2_Q2-M36S57OPYpFrzylkedS0Z9eRUCh-o1uJahwdoyo3kqmFMahYoNRxg-ZLisbsvey9CeHpsdmHhsBGvI-9miX3WklceFgSJvBOkBXC3E6KgERUrYwzjkaNJ5ZiU6XgZGeQw
Kubernetes Node Join Command
kubeadm join 10.1.0.10:6443 --token hnu981.t55u3iytaggmxo0d \
--discovery-token-ca-cert-hash sha256:f7a7c444aff284c40276055d114e61f7f46c82685edd68bb275d9747b4a399b1 \
--ignore-preflight-errors Swap --node-name=`hostname -s`