Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

node-installer distribution compatibility #65

Closed
phyrog opened this issue Mar 19, 2024 · 5 comments
Closed

node-installer distribution compatibility #65

phyrog opened this issue Mar 19, 2024 · 5 comments
Assignees
Labels
area/node-installer good first issue Good for newcomers help wanted Extra attention is needed

Comments

@phyrog
Copy link
Collaborator

phyrog commented Mar 19, 2024

This is a tracking issue for testing compatibility of the go rewrite with the different K8s distributions supported by the installer shell script.

Untested:

  • Rancher RKE2
  • Azure AKS
  • GCP GKE (Ubuntu nodes)
  • AWS EKS (AmazonLinux2 nodes)
  • AWS EKS (Ubuntu nodes)
  • Digital Ocean Kubernetes

Works:

  • Kind (with default settings)
  • MiniKube (with default settings)

Works partially:

  • MicroK8s (with overridden containerd config path): containerd restart does not work

Does not work:

  • ...
@toksikk
Copy link
Collaborator

toksikk commented Mar 23, 2024

Can you elaborate a bit on your testing methodology so that we can evaluate whether it is appropriate for documentation in CONTRIBUTIONS.md? -> #49

@toksikk
Copy link
Collaborator

toksikk commented Mar 25, 2024

This is the manifest used for testing.

---
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: rcm-initializer
  labels:
    app: default-init
spec:
  selector:
    matchLabels:
      app: default-init
  updateStrategy:
    type: RollingUpdate
  template:
    metadata:
      labels:
        name: rcm-initializer
        app: default-init
    spec:
      hostPID: true
      volumes:
        - name: node-root
          hostPath:
            path: /
        - name: assets
          emptyDir: {}
      initContainers:
        - image: busybox:latest
          name: shim-downloader
          env:
          volumeMounts:
            - name: assets
              mountPath: /assets
          command: ["/bin/sh", "-c"]
          args:
            - |
              wget -O- https://github.com/spinkube/containerd-shim-spin/releases/download/v0.13.0/containerd-shim-spin-v2-linux-$(uname -m).tar.gz  | tar -xzf - -C /assets;
        - image: ghcr.io/spinkube/node-installer:latest-feat-build-installer-image
          name: rcm-initializer
          imagePullPolicy: Always
          args:
            - "install"
            - "-H"
            - "/mnt/node-root"
          securityContext:
            privileged: true
          volumeMounts:
            - name: assets
              mountPath: /assets
            - name: node-root
              mountPath: /mnt/node-root/
      containers:
        - image: k8s.gcr.io/pause:3.1
          name: pause
---
apiVersion: node.k8s.io/v1
kind: RuntimeClass
metadata:
  name: spin-v2
handler: spin-v2
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: wasm-spin
spec:
  replicas: 1
  selector:
    matchLabels:
      app: wasm-spin
  template:
    metadata:
      labels:
        app: wasm-spin
    spec:
      runtimeClassName: spin-v2
      containers:
      - name: spin-hello
        image: ghcr.io/deislabs/containerd-wasm-shims/examples/spin-rust-hello:latest
        command: ["/"]

@phyrog
Copy link
Collaborator Author

phyrog commented Apr 3, 2024

The expected outcome of applying this manifest is a running wasm-spin pod.

@vdice vdice self-assigned this Oct 23, 2024
@vdice
Copy link
Collaborator

vdice commented Oct 23, 2024

As mentioned in https://cloud-native.slack.com/archives/C06PC7JA1EE/p1726690091759779, I'll be taking this work over with @phyrog's blessing. I'm going to first focus on achieving parity with the older kwasm-operator project.

@vdice
Copy link
Collaborator

vdice commented Oct 28, 2024

Closed by #240 which covers the majority of the distros listed above. We can create follow-ups if support for another distro is needed or there are issues with any.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/node-installer good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants