usage on K8S - not so trivial and mounting does not seem to work.
strus38 opened this issue · 2 comments
hi
I am trying to use this container in my K8S cluster, and I ended up by having to run the container like this:
apiVersion: apps/v1
kind: Deployment
metadata:
name: ansible
spec:
selector:
matchLabels:
app: ansible
replicas: 1
strategy: {}
template:
metadata:
labels:
app: ansible
annotations:
prometheus.io/scrape: "true"
spec:
containers:
- name: ansible
image: geerlingguy/docker-ubuntu1804-ansible:latest
imagePullPolicy: IfNotPresent
stdin: true
tty: true
env:
- name: container
value: docker
resources:
limits:
cpu: 200m
memory: 64Mi
requests:
cpu: 200m
memory: 64Mi
volumeMounts:
- name: cgroup
mountPath: /sys/fs/cgroup:ro
- name: varrun
mountPath: /run
- name: varlock
mountPath: /run/lock
- name: fuse
mountPath: /sys/fs/fuse/connections
- name: hugepages
mountPath: /dev/hugepages
- name: playbooks
mountPath: /etc/ansible:ro
securityContext:
allowPrivilegeEscalation: true
capabilities:
add: ["SYS_ADMIN"]
restartPolicy: Always
volumes:
- name: cgroup
hostPath:
path: /sys/fs/cgroup
type: DirectoryOrCreate
- name: varrun
emptyDir:
medium: Memory
- name: varlock
emptyDir:
medium: Memory
- name: fuse
emptyDir:
medium: Memory
- name: hugepages
emptyDir:
medium: Memory
- name: playbooks
hostPath:
path: "/mnt/c/Users/miamore/Documents/Projects/kubeverse/orchestratedRPiCluster/rpicluster/ansible"
type: Directory
But the path where my playbooks are is never mounted (running K8S nodes on VirtualBox on a windows10 laptop, launching the yaml from the Powershell console)
No error, but nothing appears.
2020-07-13T15:13:39.911256137Z systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid)
2020-07-13T15:13:39.917895692Z Detected virtualization docker.
2020-07-13T15:13:39.917931888Z Detected architecture x86-64.
2020-07-13T15:13:39.917936462Z
2020-07-13T15:13:39.917940532Z Welcome to Ubuntu 18.04.3 LTS!
2020-07-13T15:13:39.917944994Z
2020-07-13T15:13:39.917948780Z Set hostname to <ansible-565979d8bb-znfxz>.
2020-07-13T15:13:40.203254035Z File /lib/systemd/system/systemd-journald.service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling.
2020-07-13T15:13:40.203271936Z Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)
2020-07-13T15:13:40.296377304Z [ OK ] Started Forward Password Requests to Wall Directory Watch.
2020-07-13T15:13:40.298128624Z [ OK ] Created slice System Slice.
2020-07-13T15:13:40.298383970Z [ OK ] Started Dispatch Password Requests to Console Directory Watch.
2020-07-13T15:13:40.298396018Z [ OK ] Reached target Slices.
2020-07-13T15:13:40.298398866Z [ OK ] Reached target Swap.
2020-07-13T15:13:40.298774115Z [ OK ] Listening on Journal Socket.
2020-07-13T15:13:40.299259930Z [ OK ] Listening on Journal Socket (/dev/log).
2020-07-13T15:13:40.299267257Z [ OK ] Listening on /dev/initctl Compatibility Named Pipe.
2020-07-13T15:13:40.299269793Z [ OK ] Reached target Local Encrypted Volumes.
2020-07-13T15:13:40.299272251Z [ OK ] Reached target Remote File Systems.
2020-07-13T15:13:40.299346468Z [ OK ] Listening on Syslog Socket.
2020-07-13T15:13:40.299631606Z [ OK ] Reached target Local File Systems (Pre).
2020-07-13T15:13:40.299637542Z [ OK ] Reached target Local File Systems.
2020-07-13T15:13:40.299884823Z [ OK ] Reached target Sockets.
2020-07-13T15:13:40.301765509Z Starting Journal Service...
2020-07-13T15:13:40.416381716Z [ OK ] Started Journal Service.
2020-07-13T15:13:40.421765837Z Starting Flush Journal to Persistent Storage...
2020-07-13T15:13:40.520704478Z [ OK ] Started Flush Journal to Persistent Storage.
2020-07-13T15:13:40.521279757Z Starting Create Volatile Files and Directories...
2020-07-13T15:13:40.532269755Z [ OK ] Started Create Volatile Files and Directories.
2020-07-13T15:13:40.532307756Z Starting Network Name Resolution...
2020-07-13T15:13:40.532328631Z [ OK ] Reached target System Time Synchronized.
2020-07-13T15:13:40.532332980Z Starting Update UTMP about System Boot/Shutdown...
2020-07-13T15:13:40.694509588Z [ OK ] Started Update UTMP about System Boot/Shutdown.
2020-07-13T15:13:40.694919284Z [ OK ] Reached target System Initialization.
2020-07-13T15:13:40.696462271Z [ OK ] Started systemd-cron daily timer.
2020-07-13T15:13:40.697095043Z [ OK ] Started Message of the Day.
2020-07-13T15:13:40.698591199Z [ OK ] Started systemd-cron monthly timer.
2020-07-13T15:13:40.698848002Z [ OK ] Started Daily Cleanup of Temporary Directories.
2020-07-13T15:13:40.699399559Z [ OK ] Started systemd-cron weekly timer.
2020-07-13T15:13:40.699670842Z [ OK ] Started Daily apt download activities.
2020-07-13T15:13:40.699928514Z [ OK ] Started systemd-cron path monitor.
2020-07-13T15:13:40.700299409Z [ OK ] Reached target Paths.
2020-07-13T15:13:40.701609709Z [ OK ] Reached target Basic System.
2020-07-13T15:13:40.703434725Z Starting System Logging Service...
2020-07-13T15:13:40.704926709Z Starting Permit User Sessions...
2020-07-13T15:13:40.705381797Z [ OK ] Started Daily apt upgrade and clean activities.
2020-07-13T15:13:40.705403005Z [ OK ] Started systemd-cron hourly timer.
2020-07-13T15:13:40.705406763Z [ OK ] Reached target Timers.
2020-07-13T15:13:40.705409828Z [ OK ] Reached target systemd-cron.
2020-07-13T15:13:40.705564651Z [ OK ] Started Network Name Resolution.
2020-07-13T15:13:40.705872469Z [ OK ] Reached target Host and Network Name Lookups.
2020-07-13T15:13:40.711094021Z [ OK ] Started Permit User Sessions.
2020-07-13T15:13:40.800680287Z [ OK ] Started System Logging Service.
2020-07-13T15:13:40.800797114Z [ OK ] Reached target Multi-User System.
2020-07-13T15:13:40.801452268Z [ OK ] Reached target Graphical Interface.
2020-07-13T15:13:40.803345654Z Starting Update UTMP about System Runlevel Changes...
2020-07-13T15:13:40.809684791Z [ OK ] Started Update UTMP about System Runlevel Changes.
Any ideas?
Thanks!
That's something you'll have to try to get working on your own—unfortunately, use in K8s is not a use case that I think I'd want to support for these docker containers. They should run just like any other container, but getting them to work with the right privileges and mount options for a K8s deployment could be more challenging, since they expect to be able to run systemd and that's a little bit counter to the way Kubernetes expects containers to run.