Commit Graph

43 Commits

Author SHA1 Message Date
Saikrishna Edupuganti f238ed6db1 Update README.md 2019-02-05 18:22:04 -08:00
Saikrishna 88b6d23aa9 Simplify sriov.sh, do not generate random MAC
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-02-05 18:22:04 -08:00
Saikrishna 7805f2c942 Show both netdevice and vfio examples
Addressing comments -
1a. added flag to `sriov.sh` to indicate bind to vfio-pci
1b. systemd unit sets up two pools 1 per mode
2a. updated `sriov-conf.yaml` to use the two pools
3a. included network examples for both resource pools
3b. included pod examples for both resource pools

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-02-05 18:22:04 -08:00
Saikrishna fc99db500b Enable sriov-network-device-plugin vfio mode
Adding a cni to mirror MAC address of VF on a veth pair with results
from ipam applied to enable DPDK apps to configure themselves when
operating sriov-network-device-plugin in vfio mode

Updated helper sriov.sh to allow for binding VFs to vfio-pci on boot

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-02-05 18:22:04 -08:00
Saikrishna Edupuganti 72659b3ba3 Make script executable and qualify run as pod
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-02-05 17:58:30 -08:00
Manohar Castelino c234cca3c3 kata-webhook: Change location to katadocker
The kata-webhook is now hosted within the Kata repository.
Switch to using the kata generated images

https://cloud.docker.com/u/katadocker/repository/docker/katadocker/kata-webhook-example
https://github.com/kata-containers/tests/tree/master/kata-webhook

Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
2019-02-01 15:43:34 -08:00
Saikrishna Edupuganti a979f0056b Revert "kata 1.5 supports cpumanagerpolicy static"
This reverts commit c8006ca944.

Got too excited. Lets try this in next release
2019-01-31 21:24:20 +00:00
Ganesh Maharaj Mahalingam f8dc5cd815 Change disk image names
Avoid creating unique names for disks as vagrant-libvirt today does not
delete those images when VMs are deleted. Once that is fixed we can move
back to using unique names. Until then this should suffice.

Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2019-01-31 13:34:35 -08:00
Ganesh Maharaj Mahalingam f33ecc1091 Switch vagrant boxes
Switching boxes to the one maintained by Antonio at
https://github.com/AntonioMeireles/ClearLinux-packer. They now support
libvirt and will eventually be part of the clearlinux tree.

Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2019-01-30 10:18:22 -08:00
Saikrishna Edupuganti 97f8ea2506 Moving around to allow early exit
In case we need to exit early this would have copied the credentials
into the home dir

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-30 09:10:52 -08:00
Saikrishna Edupuganti c8006ca944 kata 1.5 supports cpumanagerpolicy static
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-30 09:10:52 -08:00
Saikrishna Edupuganti 0d01668513 Update readme with location of files and cleanup
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-17 14:14:33 -08:00
Saikrishna Edupuganti f5b1aa7ee5 Mount the working dir at vagrant user home
Instead of mounting at /vagrant it will now be at /home/vagrant/clr-k8s-examples

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-17 14:14:33 -08:00
Ganesh Maharaj Mahalingam 5beadf6a23 Enable kubectl autocompletion by default in the VMs
Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2019-01-14 19:17:55 -08:00
Saikrishna 42ffa8df71 Auto-generate multus conf. Do not exit sriov DS
Instead of relying on configmap to be created/customized by the user to
generate multus conf, we autogenerate it using the current default CNI
conf file on the host. This way CNI's with host specific conf details
will continue to work.

```
{
  "type": "calico",
  "nodename": "clr-01",
   ...
}
```

Since SR-IOV device may not be present on all nodes, the daemonset
should not exit as this will put the pod in restart loop. This would
cause the kubelet and runtimes to repeatedly restart, as per
initContainer logic.

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-08 15:34:45 -08:00
Saikrishna 39f3e063d3 Example systemd scripts to setup SR-IOV on nodes
Signed-off-by Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-07 11:41:40 -08:00
Saikrishna aecda4bf65 Add README for multus and sriov
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-07 11:41:40 -08:00
Saikrishna e974d2fc51 Add Dockerfile to generate the image with multus, sriov binaries
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-07 11:41:40 -08:00
Saikrishna a0261d6507 Adding multus and sriov artifacts
This set of yamls installs multus-cni, sriov-cni and sriov-device-plugin

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-07 11:41:40 -08:00
Saikrishna e4ea313ff2 Adding gitignore
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-04 22:04:15 -08:00
Saikrishna Edupuganti 3291e1582d Rename test-deploy-kata-fire.yaml to test-deploy-kata-fc.yaml
Typo
2019-01-04 14:44:25 -08:00
Saikrishna bfa29b5543 [README] Update to reflect filename changes
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-04 14:32:00 -08:00
Saikrishna f96b48beca Make naming consistent, kata points to kata-qemu
Runtime class kata-qemu created and older kata point to kata-qemu
handler. Now all the handlers match the crio.conf settings.

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-04 14:32:00 -08:00
Eric Ernst eff1fc9021 update runtimeClass, binary naming
Signed-off-by: Eric Ernst <eric.ernst@intel.com>
2019-01-04 14:32:00 -08:00
Manohar Castelino 7ddf9c3911 Firecracker: Update README
Update README to call out how to try firecracker workloads.

Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
v1.1
2019-01-04 10:19:23 -08:00
Saikrishna Edupuganti 1908f0c9fc Minor modifications (#1)
Keep `setup_firecracker.sh` separate and mark it experimental in README.
Fix modules load, needed to run k8s without reboot. Fix runtimeclass to
add fire.

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-04 09:43:19 -08:00
Manohar Castelino 7dfce0dd00 Initial support for firecracker configuration on Clearlinux
Initial support for firecracker configuration on Clearlinux.
This is a little bit complicated due to CRIO requiring a
disk or partition to use devicemapper.

Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
2019-01-04 09:43:19 -08:00
Saikrishna Edupuganti 113e3b4daf Reflect two flavors of install 2019-01-03 15:22:05 -08:00
Saikrishna d6b4306a10 Re-organized and formatted the scripts
Added an option to do minimal install. Default is all

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-03 15:22:05 -08:00
Saikrishna 452e467969 Temporarily disable cpuManagerPolicy=static
Temporarily disabled `cpuManagerPolicy=static`, issue below
https://github.com/kata-containers/runtime/issues/878

Provided kata equivalent yaml for cpumanager test

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-02 16:23:03 -08:00
Saikrishna e3f8369c11 Example usage for Guaranteed QoS workload
```
$ kubectl logs test-cpumanager-runc
pid 1's current affinity mask: 100000000000
```

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-02 08:35:59 -08:00
Saikrishna 5fe7fa0d89 Set CPUManagerPolicy=static, reserve compute resources
Fixes: #8, #16

Setting CPUManager=static allows `Guaranteed` QoS class workloads to
get cpu isolation and affinity benefits.
https://kubernetes.io/blog/2018/07/24/feature-highlight-cpu-manager/

Setting reserved compute resources for system processes and critical
kube components prevents from DoS'ing the compute node.
https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-02 08:35:59 -08:00
Saikrishna d4c47d2c5b Update canal manifest and setup_system.sh
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2019-01-02 08:24:36 -08:00
Saikrishna 9f097cacd8 Do not pin kubernetes version in kubeadm config
clearlinux-pkgs/kubernetes installs kubeadm kubelet of the same version
and kubeadm uses/fallsback to stable branch of its major+minor version when
generating kubernetes component manifests if none is provided. This
helps with staying upto date with any fixes without any further
modifications

```
vagrant@clr-01 ~ $ bash /vagrant/create_stack.sh
I1207 21:37:25.285850   16086 version.go:236] remote version is much newer: v1.13.0; falling back to: stable-1.12
[init] using Kubernetes version: v1.12.3
```

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2018-12-07 14:17:32 -08:00
Graham Whaley bdd8d89025 setup: restart services
After we have maybe modified the setups of the services, we need to
reload and restart them.

Signed-off-by: Graham Whaley <graham.whaley@intel.com>
2018-12-07 07:42:40 -08:00
Graham Whaley 5246582266 setup: fix whitespace
we had a bunch of 2-space indents - convert to tabs to match
the rest of the file.

Signed-off-by: Graham Whaley <graham.whaley@intel.com>
2018-12-07 07:42:40 -08:00
Graham Whaley f352bdde76 setup_system.sh: bolster checks and quieten output
Bolster some checks so we don't try to edit files that do not
exist (for proxy setup for instance).
Also replace the 'sudo tee' commands with 'sudo bash -c "cat >"'
commands to reduce the echoing of the output to stdout.

Signed-off-by: Graham Whaley <graham.whaley@intel.com>
2018-12-07 07:42:40 -08:00
William Douglas e49f0490bd Use tabs instead of spaces to indent the Makefile 2018-12-06 10:59:41 -08:00
Saikrishna 845306aa86 Scrape crio logs, includes kata logs too
We see kata logs with `SYSLOG_IDENTIFIER:kata-runtime` under
`_SYSTEMD_UNIT:crio.service` in kibana. Need to verify if this holds
good for `SYSLOG_IDENTIFIER=kata-proxy` and `SYSLOG_IDENTIFIER=kata-shim`

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
v1
2018-12-05 17:03:47 -08:00
Saikrishna 8de91a2ba5 Falling back metric-server v0.2.x until we fix HPA w/ v0.3.x (#5)
HPA seems to be working with v0.2.x w/ two changes

- Allow access to `nodes/stats` in `resource-reader.yaml`
- Replace arg `--source=kubernetes.summary_api:https://kubernetes.default.svc?kubeletHttps=true&kubeletPort=10250&useServiceAccount=true&insecure=true`
  in `metrics-server-deployment.yaml`

Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
2018-12-04 16:25:51 -08:00
Manohar Castelino 44b72301a6 Clearlinux packaging: Add Makefile
Add Makefile to support packaging this within Clearlinux

Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
2018-12-04 14:20:50 -08:00
Manohar Castelino 210cc03586 cloud-native-basic: Simple scripts to setup a kubernetes cluster
Simple set of scripts and slightly modified upstream configurations
of various kubernetes services to setup a kubernetes cluster on
Clearlinux.

Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
Signed-off-by: Saikrishna Edupuganti <saikrishna.edupuganti@intel.com>
Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
2018-12-04 14:20:50 -08:00
Manohar Castelino 36e5147e14 Initial commit: Add license
Add license information

Signed-off-by: Manohar Castelino <manohar.r.castelino@intel.com>
2018-12-04 13:45:44 -08:00