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

Upgrade gopsutil & docker libs for macOS/arm64 compatibility #10115

Merged
merged 4 commits into from
Jan 14, 2021

Conversation

tstromberg
Copy link
Contributor

@tstromberg tstromberg commented Jan 8, 2021

Tested with go version go1.16beta1 darwin/arm64. Changes required:

Example output:

😄  minikube v1.16.0 on Darwin 11.1 (arm64)
✨  Automatically selected the docker driver

⛔  Docker Desktop only has 1981MiB available, you may encounter application deployment failures.
💡  Suggestion: 

    1. Click on "Docker for Desktop" menu icon
    2. Click "Preferences"
    3. Click "Resources"
    4. Increase "Memory" slider bar to 2.25 GB or higher
    5. Click "Apply & Restart"
📘  Documentation: https://docs.docker.com/docker-for-mac/#resources

👍  Starting control plane node minikube in cluster minikube
🔥  Creating docker container (CPUs=2, Memory=1981MB) ...\ E0108 16:01:17.141733   39584 cache.go:63] save image to file "k8s.gcr.io/etcd-arm64:3.4.13-0" -> "/Users/t/.minikube/cache/images/k8s.gcr.io/etcd-arm64_3.4.13-0" failed: nil image for k8s.gcr.io/etcd-arm64:3.4.13-0: GET https://k8s.gcr.io/v2/etcd-arm64/manifests/3.4.13-0: MANIFEST_UNKNOWN: Failed to fetch "3.4.13-0" from request "/v2/etcd-arm64/manifests/3.4.13-0".
/ E0108 16:01:25.167151   39584 cache.go:194] Error caching images:  Caching images for kubeadm: caching images: caching image "/Users/t/.minikube/cache/images/k8s.gcr.io/etcd-arm64_3.4.13-0": nil image for k8s.gcr.io/etcd-arm64:3.4.13-0: GET https://k8s.gcr.io/v2/etcd-arm64/manifests/3.4.13-0: MANIFEST_UNKNOWN: Failed to fetch "3.4.13-0" from request "/v2/etcd-arm64/manifests/3.4.13-0".

🐳  Preparing Kubernetes v1.20.0 on Docker 20.10.2 .../ ❌  Unable to load cached images: loading cached images: stat /Users/t/.minikube/cache/images/k8s.gcr.io/etcd-arm64_3.4.13-0: no such file or directory

    ▪ Generating certificates and keys ...
    ▪ Booting up control plane ...
    ▪ Configuring RBAC rules ...
🔎  Verifying Kubernetes components...
🌟  Enabled addons: storage-provisioner, default-storageclass
🏄  Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default

Here's the output of docker logs, for those curious:

entrypoint completed: Linux minikube 4.19.104-linuxkit #1 SMP PREEMPT Sat Feb 15 00:49:47 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
...
[FAILED] Failed to start minikube scheduled stop.
See 'systemctl status minikube-scheduled-stop.service' for details.

NOTE: This requires a locally built kicbase (arm64).

/cc @ilya-zuyev

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jan 8, 2021
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 8, 2021
@tstromberg tstromberg changed the title WIP: Experimental macOS/arm64 work Enable running on macOS/arm64 Jan 9, 2021
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 9, 2021
@tstromberg tstromberg changed the title Enable running on macOS/arm64 Minor fixes to enable macOS/arm64 support (Apple M1) Jan 9, 2021
@tstromberg tstromberg changed the title Minor fixes to enable macOS/arm64 support (Apple M1) Minor fixes to enable macOS/arm64 support with Docker driver (Apple M1) Jan 9, 2021
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 13, 2021
@medyagh medyagh self-requested a review January 14, 2021 22:21
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: medyagh, tstromberg

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@medyagh
Copy link
Member

medyagh commented Jan 14, 2021

would need a rebase after merging all ilya's PRs

@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 14, 2021
@tstromberg tstromberg changed the title Minor fixes to enable macOS/arm64 support with Docker driver (Apple M1) Upgrade libraries for macOS/arm64 support (Apple M1) Jan 14, 2021
@tstromberg tstromberg changed the title Upgrade libraries for macOS/arm64 support (Apple M1) Upgrade gopsutil & docker libs for macOS/arm64 compatibility Jan 14, 2021
@tstromberg tstromberg merged commit c7e4bb0 into kubernetes:master Jan 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Binary Build failed on Apple M1
3 participants