Giter VIP home page Giter VIP logo

hvk8scluster's People

Contributors

craigminihan avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

hvk8scluster's Issues

Make the Kubernetes version explicit

The current script does not specify the Kubernetes version, so we end up with latest (1.20). Allow the user to specify the version they want.

Add load balancer support and ingress

Allow ingress on common ports (80, 443, mysql, psql, mongodb, etc) with haproxy and nginx.

Requires an haproxy.conf like:

global
  daemon
  maxconn 2048

defaults
  mode tcp
  timeout connect 5000ms
  timeout client 50000ms
  timeout server 50000ms

listen http-in
  bind *:80
  server server1 172.31.0.11:80 maxconn 1024
  server server2 172.31.0.12:80 maxconn 1024
  server server3 172.31.0.13:80 maxconn 1024

... and a customised nginx ingress install like:

helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm upgrade -i my-ingress-nginx --set controller.kind=DaemonSet --set controller.hostPort.enabled=true ingress-nginx/ingress-nginx

Investigate using Calico for networking

The cluster scripts add Calico since this is required to get the cluster to schedule pods. The script applies defaults which work but may benefit from further investigation to understand their impact and possible enhancements.

Remove Hyper-V dynamic memory

Dynamic memory seems to increase over time using all the hosts resources. Replace with fixed RAM settings since we can at least control the behaviour of the system.

Add support for PVCs

The scripting does not include a storage backend. Rook with NFS exposed by the DHCP/DNS VM may allow for cluster volume creation.

Review Rook/Ceph storage provisioning

When Windows nodes are present Rook provisions Linux containers on those nodes.

Review the chart and example yaml usage. Consolidate the approach and fix as much as possible.

Node selection and affinity issues raised with the Rook team in: rook/rook#9165

Investigate Hyper-V dynamic memory issues on Debian

Enabling dynamic memory (hv_balloon) with Debian 10/11 guests causes Hyper-V to continually allocate memory.

Observed behaviour is:

  • Dynamic memory is enabled, min as 512MB, start as 768MB and max as 8192MB
  • After booting htop (etc.) shows the memory is limited to the start size
  • Opening applications like Firefox, Libre Office and GIMP will result in an OOM and an apparent desktop logout
  • Meanwhile memory allocation in Hyper-V and Windows is increasing up to the max limit, however the VM never sees the RAM and will always OOM when opening challenging apps
  • Increasing the max to 32GB shows the RAM usage increase continually even when there is no desktop application activity, again the max limit of 32GB can be hit without the VM seeing the RAM and OOMing when apps are opened

Auto-detect k8s master/node template

Detect the k8s-template if already present and use it by default. Allow the user to override template cloning and build each node from the preseed.

Add a Windows service to release the DHCP lease

Releasing the DHCP lease via ssh on Windows is problematic. Add a service to perform the release and restart which can be manually started from ssh allowing the client to drop the connection before the reboot happens.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.