Skip to content
This repository has been archived by the owner on Sep 7, 2022. It is now read-only.

White paper on security and cluster isolation for kubernetes. #86

Closed
kerneltime opened this issue Feb 10, 2017 · 13 comments
Closed

White paper on security and cluster isolation for kubernetes. #86

kerneltime opened this issue Feb 10, 2017 · 13 comments
Assignees
Projects

Comments

@kerneltime
Copy link

No description provided.

@kerneltime kerneltime added the P0 label Feb 10, 2017
@kerneltime kerneltime self-assigned this Feb 10, 2017
@tusharnt tusharnt modified the milestone: February Feb 10, 2017
@pdhamdhere pdhamdhere added this to In-Progress in vSphere Feb 10, 2017
@kerneltime
Copy link
Author

kerneltime commented Feb 13, 2017

Ran info

  • Configuration issues

  • Disk in use

  • UUID issue even though enableUUID seems to be set

{"log":"I0213 09:48:43.502621       1 operation_executor.go:620] AttachVolume.Attach succeeded for volume \"kubernetes.io/vsphere-volume/[netapp01ads02] k8s/myDisk\" (spec.Na
me: \"test-volume\") from node \"k8s.minionpp-01\".\n","stream":"stderr","time":"2017-02-13T09:48:43.502834346Z"}
{"log":"I0213 09:48:43.599644       1 node_status_updater.go:135] Updating status for node \"k8s.minionpp-01\" succeeded. patchBytes: \"{\\\"status\\\":{\\\"volumesAtt
ached\\\":[{\\\"devicePath\\\":\\\"/dev/disk/by-id/wwn-0x6000c2931824b17ebd31f2dc365f0d67\\\",\\\"name\\\":\\\"kubernetes.io/vsphere-volume/[netapp01ads02] k8s/myDisk\\\"}]}}
\" VolumesAttached: [{kubernetes.io/vsphere-volume/[netapp01ads02] k8s/myDisk /dev/disk/by-id/wwn-0x6000c2931824b17ebd31f2dc365f0d67}]\n","stream":"stderr","time":"2017-02-13
T09:48:43.599797118Z"}
{"log":"E0213 09:48:46.750024       1 vsphere.go:1062] disk uuid not found for [netapp01ads02] k8s/myDisk. err: No disk UUID found\n","stream":"stderr","time":"2017-02-13T09:
48:46.750250047Z"}
{"log":"E0213 09:48:46.750107       1 vsphere.go:1044] Failed to check whether disk is attached. err: No disk UUID found\n","stream":"stderr","time":"2017-02-13T09:48:46.7502
7874Z"}

@cvauvarin
Copy link

@kerneltime the problem was a permission issue on the vCenter. Do you think it is possible to add in the documentation a list of permissions that are needed?

@kerneltime
Copy link
Author

@cvauvarin yes of course, can you elaborate on the permissions problem? The last you mentioned that the disk was attached to the VM, I am not sure why permissions made a difference.

@cvauvarin
Copy link

Yes the disk was attached to the VM but the kube-controller could not get the UUID of the disk. What I did is that I used another user with full permissions on the vCenter and it worked without any issue. Then we tried to add some permissions to the other user to make it worked.

Here is the list of the permissions we applied :

  • Datastore :
    • Allocate space
    • Browse datastore
    • Low level file operations
    • Update virtual machines files
    • Update virtual machnes metadata
  • Virtual machine
    • Configuration
      • Add existing disk
      • Add new disk
      • Remove disk

Don't think it was a problem of reading the uuid, do you think it can be a problem writing some metadata ?

@kerneltime
Copy link
Author

Thank you for the additional info.

@pdhamdhere pdhamdhere changed the title RCA issue for oxalide (Oxalide) Investigate and document minimum VC roles and permissions needed for vSphere CP Feb 15, 2017
@tusharnt tusharnt moved this from In-Progress to Backlog in vSphere Feb 15, 2017
@tusharnt
Copy link

This issue tracks the list of privileges the user needs to specify in vSphere UI in order to configure vSphere cloud provider.

@kerneltime
Copy link
Author

@pdhamdhere pdhamdhere moved this from Backlog to In-Progress in vSphere Feb 22, 2017
@kerneltime
Copy link
Author

A hacky reference between API spec and UI spec
auth-privs.txt

@kerneltime
Copy link
Author

Partial list

Privileges

FindByIp 	   => System.View
MakeDirectory => Datastore.FileManagement #  https://bugzilla.eng.vmware.com/show_bug.cgi?id=1791819

@kerneltime kerneltime moved this from In-Progress to In open PR in vSphere Mar 2, 2017
@kerneltime kerneltime moved this from In open PR to Done in vSphere Mar 2, 2017
@kerneltime kerneltime changed the title (Oxalide) Investigate and document minimum VC roles and permissions needed for vSphere CP White paper on security and cluster isolation for kubernetes. Mar 2, 2017
@kerneltime
Copy link
Author

The goal here is to have a white paper that explains what is possible to isolate the credentials used in kubernetes and what is the level of isolation achieved and gaps that a customer should be aware about.

@kerneltime kerneltime moved this from Done to In-Progress in vSphere Mar 2, 2017
@kerneltime kerneltime removed their assignment Mar 2, 2017
@tusharnt tusharnt removed the P0 label Mar 7, 2017
@tusharnt tusharnt moved this from In-Progress to Backlog in vSphere Mar 8, 2017
@tusharnt tusharnt moved this from Backlog to In-Progress in vSphere Mar 22, 2017
@divyenpatel
Copy link

Updated Getting Started Guide with minimal set of privileges required for vSphere Cloud Provider
kubernetes/website#2989

@divyenpatel
Copy link

Updated k8s-anywhere prerequisites section with privileges required for Kubernetes-Anywhere.
kubernetes-retired/kubernetes-anywhere#360

@divyenpatel
Copy link

Updated documentation with required set of roles and permissions required for Kubernetes vsphere cloud provider.

@divyenpatel divyenpatel moved this from In-Progress to Done in vSphere May 2, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
Development

No branches or pull requests

5 participants