An introduction to virtualization as a concept, its implementation in VirtualBox and an extension into an OpenStack private cloud. Done at SF State University. See more at http://commons.sfsu.edu/virtualization-and-cloud
This document provides an overview of Docker, comparing it to virtual machines, and explaining how it uses operating system-level virtualization instead of hardware virtualization. It also demonstrates how to use Docker by pulling and running sample Ubuntu and Nginx images from Docker Hub, and committing changes to create new images. Instructions are included for installing Docker Desktop on Mac as well.
With the rise of cloud computing and the death of the Xserve, learn how you can deploy your WebObjects applications on a Linode private virtual server.
The second class in CIS222, Introduction to UNIX/Linux.
Prepares for Virtualbox installation, and brief overview of default Linux installation.
Overview of main points of BIOS, Virtualization.
Virtual Meetup Docker + Arm: Building Multi-arch Apps with BuildxDocker, Inc.
This document discusses building multi-architecture Docker images using Docker Buildx. It introduces the concepts of multi-architecture images, describes the traditional method of building separate images for each architecture and combining them with manifest lists, and recommends using Buildx which can build images for multiple architectures simultaneously during a single build. Buildx allows building on the host architecture natively or emulating other architectures. The document emphasizes that applications should support multiple platforms and architectures, and encourages always using multi-stage Dockerfiles and considering Buildx as an improved alternative to the older manifest-based approach.
Fedora Atomic is a minimal OS designed specifically for running containers. It uses rpm-ostree for atomic updates which allow the OS filesystem to be updated immutably and reliably through packages. Some key components include Docker for containers, Kubernetes for orchestration, and Cockpit for a web-based management interface. The demo would show how to use cloud-init to customize Atomic hosts during deployment, install and use Cockpit to manage containers, and understand how the atomic command works.
Building with Virtual Development EnvironmentsOscar Merida
Struggling with getting Apache, MySQL, PHP and everything else you need to start working on your next project? In this talk, we'll look at how to use Vagrant to setup a reusable development environment for Drupal. Vagrant automates setting it up so you can focus on getting work done, share identical environments with colleagues, and precisely match your local and production environments.
Vagrant allows users to easily create and configure lightweight, reproducible, and portable development environments. It works with virtual machines and containers to provide a consistent environment. The document outlines how to install and use Vagrant with Docker containers to build portable development environments across different platforms. Key steps include initializing a Vagrant project, selecting a base box, configuring the Vagrantfile to provision Docker containers, and running vagrant up to launch the environment.
The document provides instructions for building Docker images. It explains key Dockerfile instructions like FROM, RUN, CMD, ENTRYPOINT, ENV, and EXPOSE. It also provides an example of building an image that sets environment proxies and installs wget. The Dockerfile is built with 'docker build' and then the resulting image is run with 'docker run' to test the behavior of the CMD instruction.
Kvm performance optimization for ubuntuSim Janghoon
This document discusses various techniques for optimizing KVM performance on Linux systems. It covers CPU and memory optimization through techniques like vCPU pinning, NUMA affinity, transparent huge pages, KSM, and virtio_balloon. For networking, it discusses vhost-net, interrupt handling using MSI/MSI-X, and NAPI. It also covers block device optimization through I/O scheduling, cache mode, and asynchronous I/O. The goal is to provide guidance on configuring these techniques for workloads running in KVM virtual machines.
Pod Sandbox workflow creation from DockershimVictor Morales
This slides were used to explain the K8s pod sandbox creation process used by Dockershim during the Cloud-Native MX meetup. During this presentation is clarified what Dockershim deprecation means and what are the "pause" containers?
Docker is an open platform for developing, shipping, and running distributed applications. It allows applications to be shipped and run in lightweight containers that can run on any Linux server. Docker uses operating-system-level virtualization and cgroups isolation to deliver lightweight containers quickly. Key features of Docker include portability, lightweight containers that share resources and isolate processes, and automated workflows.
Kdump is a long existing method for acquiring dump of crashed kernel, however very few literatures are available to understand it's usage and internals. We receive a lot of queries on kexec mailing list about different issues related to the kexec/kdump environment.
In this presentation, we talk about basics of kdump usage and some internals about kdump/kexec kernel implementation. It includes end to end flow from kdump kernel configuration to crash analysis. We discuss some of the problem which is frequently faced by kdump users. It also includes related information about ELF structure, so that one can debug if vmcore itself gets corrupted because of any architecture related issue.
Slides of Kubernetes Athens Meetup vol3 - Unikernels An alternative OS Archit...Nikos Zois
This presentation is a part of Kubernetes meetup vol3 @ Athens.
At the very beggining we explain how we manage until now to come closer to the virtual hardware, removing possible duplication layers, that appear between the hypervisor and the Virtual Machine. An alternative solution removing duplication layers is Unikernels. Having small sized VM including only hypervisor libraries and our application in the same level (kernel), we build a Custom Virtual Machine targeting smaller footprint, reduced latency and better security. Next we explain very fast the OSv unikernel that allow us to compose a linux service built as shared object within the unikernel. Finnally we see a benchmark of a Redis Cluster that is running on OSv unikernels.
Building with Virtual Development EnvironmentsOscar Merida
Struggling with getting Apache, MySQL, PHP and everything else you need to start working on your next project? In this talk, we'll look at how to use Vagrant to setup a reusable development environment for Drupal. Vagrant automates setting it up so you can focus on getting work done, share identical environments with colleagues, and precisely match your local and production environments.
Docker allows you to package applications with their dependencies into standardized units called containers that can run on any Linux server. Containers are more portable and efficient than virtual machines, starting in milliseconds and using less disk space. Docker makes it easy to deploy and run applications without having to rebuild environments and guarantees that an application will run the same regardless of the infrastructure it is running on.
runC: The little engine that could (run Docker containers) by Docker Captain ...Docker, Inc.
With the announcement of the OCI by Solomon Hykes at last summer's DockerCon, a Docker-contributed reference implementation of the OCI spec, called runC, was born. While some of you may have tried runC or have a history of poking at the OS layer integration library to Linux namespaces, cgroups and the like (known as libcontainer), many of you may not know what runC offers. In this talk Phil Estes, Docker engine maintainer who has also contributed to libcontainer and runC, will show what's possible using runC as a lightweight and fast runtime environment to experiment with lower-level features of the container runtime. Phil will introduce a conversion tool called "riddler", which can inspect and convert container configurations from Docker into the proper OCI configuration bundle for easy conversion between the two environments. He'll also demonstrate how to make custom configurations for trying out security features like user namespaces and seccomp profiles.
The document discusses using Docker containers and Puppet to compartmentalize services running on a personal server. Previously, many services like Postfix, Dovecot, DNS, etc. were running on the server with no isolation. The approach taken was to define Puppet profiles for each service, build Docker containers from those profiles, and run the containers independently with their own isolated environments. This improves security, ease of development and deployment, and allows immutable infrastructure by replacing containers instead of changing server configurations. Challenges discussed include Docker bugs, inconsistent Debian packages, and future plans to add HAProxy and a container registry.
This document discusses how to quickly debug VM failures in OpenStack. It begins by explaining where VMs run in OpenStack and how VM startup is implemented. It then describes how to use various logs from OpenStack components like Nova, Neutron, and libvirt/Qemu to troubleshoot issues. The document also provides examples of common VM failure types and outlines steps for debugging, including checking configuration settings, log files, and using troubleshooting tools like Virsh and ABRT. Finally, it calls for collecting VM failure scenarios and solutions to integrate into monitoring tools like StackTach.
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityThe Linux Foundation
Jon Farrell summarizes his experience implementing AMD MxGPU virtualization. He began by learning about MxGPU on GitHub and setting up an Ubuntu server with Xen. Initial setup involved building a custom kernel, blacklisting amdgpu, and enabling IOMMU. Guest preparation required installing a VNC server and driver. Difficulties included choosing the right Xen version, starting modules, kernel building, and MxGPU patches. Performance metrics were estimated based on similar benchmarks. Overall, Farrell learned about building Xen, custom kernels, guest VMs, and device passthrough with XL. He sees potential for this technology in cloud gaming platforms and Xen virtualization.
LibVirt and KVM provide virtualization capabilities on Linux systems. LibVirt uses a standardized API to manage different hypervisors like KVM. KVM allows running virtual machines at native speeds by using hardware virtualization extensions. It provides high density and portability compared to running systems directly on hardware. LibVirt handles tasks like networking, storage, and interfaces through tools like Virsh and Virt-Manager, and advanced topics include security with SELinux, bridged networking, and remote access.
DockerCon SF 2015: Orchestration for Devs (machine + compose)Docker, Inc.
This document discusses Docker Machine and Docker Compose. Docker Machine allows provisioning and management of Docker hosts on various cloud providers and virtualization systems. Docker Compose defines and runs multi-container applications using a YAML file. The latest versions of both tools feature improved performance, stability, and configuration options as well as experimental features like smart container recreation in Compose. Demostrations of Docker Machine and Compose are provided.
Ansible has huge potential, also working with docker. These slides give an introduction to how Ansible works and can be used to automate and improve your infrastructure setup.
DockerDay2015: Docker orchestration for developersDocker-Hanoi
This document discusses Docker Machine and Docker Compose. Docker Machine allows provisioning and management of Docker hosts on various cloud providers and virtual machines. Docker Compose allows defining and running multi-container Docker applications using a compose file. The document outlines new features of Docker Machine 0.3.0 like generic drivers and swarm provisioning. It also summarizes new features of Docker Compose 1.3.0 like performance improvements and smart recreate. Live demos of both tools are included in the agenda.
Introduction to Docker presented by MANAOUIL Karim at the Shellmates's Hack.INI event. The teams deployed were assisted to deploy a Python Flask application behind an Nginx load balancer.
The document discusses a mid-evaluation of a major project comparing several hypervisors. It will compare Xen, KVM, VMware, and VirtualBox based on their technical differences and performance benchmarks. The benchmarks will test CPU speed, network speed, I/O speed, and performance running various server workloads. This comparison will help determine the best hypervisor for a given virtualization situation. Key factors that will be compared include OS support, security, CPU speed, network speed, I/O speed, and response times.
- Docker containers and virtual machines both enable isolation of applications but use different approaches.
- Virtual machines run a full operating system and require virtualization software to abstract the underlying hardware. Docker containers leverage the same kernel as the host operating system and provide isolation through kernel namespaces and cgroups.
- Containers are more portable and lightweight since they don't require guest operating systems, but virtual machines have stronger isolation since each has its own kernel.
Building with Virtual Development EnvironmentsOscar Merida
Struggling with getting Apache, MySQL, PHP and everything else you need to start working on your next project? In this talk, we'll look at how to use Vagrant to setup a reusable development environment for Drupal. Vagrant automates setting it up so you can focus on getting work done, share identical environments with colleagues, and precisely match your local and production environments.
Vagrant allows users to easily create and configure lightweight, reproducible, and portable development environments. It works with virtual machines and containers to provide a consistent environment. The document outlines how to install and use Vagrant with Docker containers to build portable development environments across different platforms. Key steps include initializing a Vagrant project, selecting a base box, configuring the Vagrantfile to provision Docker containers, and running vagrant up to launch the environment.
The document provides instructions for building Docker images. It explains key Dockerfile instructions like FROM, RUN, CMD, ENTRYPOINT, ENV, and EXPOSE. It also provides an example of building an image that sets environment proxies and installs wget. The Dockerfile is built with 'docker build' and then the resulting image is run with 'docker run' to test the behavior of the CMD instruction.
Kvm performance optimization for ubuntuSim Janghoon
This document discusses various techniques for optimizing KVM performance on Linux systems. It covers CPU and memory optimization through techniques like vCPU pinning, NUMA affinity, transparent huge pages, KSM, and virtio_balloon. For networking, it discusses vhost-net, interrupt handling using MSI/MSI-X, and NAPI. It also covers block device optimization through I/O scheduling, cache mode, and asynchronous I/O. The goal is to provide guidance on configuring these techniques for workloads running in KVM virtual machines.
Pod Sandbox workflow creation from DockershimVictor Morales
This slides were used to explain the K8s pod sandbox creation process used by Dockershim during the Cloud-Native MX meetup. During this presentation is clarified what Dockershim deprecation means and what are the "pause" containers?
Docker is an open platform for developing, shipping, and running distributed applications. It allows applications to be shipped and run in lightweight containers that can run on any Linux server. Docker uses operating-system-level virtualization and cgroups isolation to deliver lightweight containers quickly. Key features of Docker include portability, lightweight containers that share resources and isolate processes, and automated workflows.
Kdump is a long existing method for acquiring dump of crashed kernel, however very few literatures are available to understand it's usage and internals. We receive a lot of queries on kexec mailing list about different issues related to the kexec/kdump environment.
In this presentation, we talk about basics of kdump usage and some internals about kdump/kexec kernel implementation. It includes end to end flow from kdump kernel configuration to crash analysis. We discuss some of the problem which is frequently faced by kdump users. It also includes related information about ELF structure, so that one can debug if vmcore itself gets corrupted because of any architecture related issue.
Slides of Kubernetes Athens Meetup vol3 - Unikernels An alternative OS Archit...Nikos Zois
This presentation is a part of Kubernetes meetup vol3 @ Athens.
At the very beggining we explain how we manage until now to come closer to the virtual hardware, removing possible duplication layers, that appear between the hypervisor and the Virtual Machine. An alternative solution removing duplication layers is Unikernels. Having small sized VM including only hypervisor libraries and our application in the same level (kernel), we build a Custom Virtual Machine targeting smaller footprint, reduced latency and better security. Next we explain very fast the OSv unikernel that allow us to compose a linux service built as shared object within the unikernel. Finnally we see a benchmark of a Redis Cluster that is running on OSv unikernels.
Building with Virtual Development EnvironmentsOscar Merida
Struggling with getting Apache, MySQL, PHP and everything else you need to start working on your next project? In this talk, we'll look at how to use Vagrant to setup a reusable development environment for Drupal. Vagrant automates setting it up so you can focus on getting work done, share identical environments with colleagues, and precisely match your local and production environments.
Docker allows you to package applications with their dependencies into standardized units called containers that can run on any Linux server. Containers are more portable and efficient than virtual machines, starting in milliseconds and using less disk space. Docker makes it easy to deploy and run applications without having to rebuild environments and guarantees that an application will run the same regardless of the infrastructure it is running on.
runC: The little engine that could (run Docker containers) by Docker Captain ...Docker, Inc.
With the announcement of the OCI by Solomon Hykes at last summer's DockerCon, a Docker-contributed reference implementation of the OCI spec, called runC, was born. While some of you may have tried runC or have a history of poking at the OS layer integration library to Linux namespaces, cgroups and the like (known as libcontainer), many of you may not know what runC offers. In this talk Phil Estes, Docker engine maintainer who has also contributed to libcontainer and runC, will show what's possible using runC as a lightweight and fast runtime environment to experiment with lower-level features of the container runtime. Phil will introduce a conversion tool called "riddler", which can inspect and convert container configurations from Docker into the proper OCI configuration bundle for easy conversion between the two environments. He'll also demonstrate how to make custom configurations for trying out security features like user namespaces and seccomp profiles.
The document discusses using Docker containers and Puppet to compartmentalize services running on a personal server. Previously, many services like Postfix, Dovecot, DNS, etc. were running on the server with no isolation. The approach taken was to define Puppet profiles for each service, build Docker containers from those profiles, and run the containers independently with their own isolated environments. This improves security, ease of development and deployment, and allows immutable infrastructure by replacing containers instead of changing server configurations. Challenges discussed include Docker bugs, inconsistent Debian packages, and future plans to add HAProxy and a container registry.
This document discusses how to quickly debug VM failures in OpenStack. It begins by explaining where VMs run in OpenStack and how VM startup is implemented. It then describes how to use various logs from OpenStack components like Nova, Neutron, and libvirt/Qemu to troubleshoot issues. The document also provides examples of common VM failure types and outlines steps for debugging, including checking configuration settings, log files, and using troubleshooting tools like Virsh and ABRT. Finally, it calls for collecting VM failure scenarios and solutions to integrate into monitoring tools like StackTach.
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityThe Linux Foundation
Jon Farrell summarizes his experience implementing AMD MxGPU virtualization. He began by learning about MxGPU on GitHub and setting up an Ubuntu server with Xen. Initial setup involved building a custom kernel, blacklisting amdgpu, and enabling IOMMU. Guest preparation required installing a VNC server and driver. Difficulties included choosing the right Xen version, starting modules, kernel building, and MxGPU patches. Performance metrics were estimated based on similar benchmarks. Overall, Farrell learned about building Xen, custom kernels, guest VMs, and device passthrough with XL. He sees potential for this technology in cloud gaming platforms and Xen virtualization.
LibVirt and KVM provide virtualization capabilities on Linux systems. LibVirt uses a standardized API to manage different hypervisors like KVM. KVM allows running virtual machines at native speeds by using hardware virtualization extensions. It provides high density and portability compared to running systems directly on hardware. LibVirt handles tasks like networking, storage, and interfaces through tools like Virsh and Virt-Manager, and advanced topics include security with SELinux, bridged networking, and remote access.
DockerCon SF 2015: Orchestration for Devs (machine + compose)Docker, Inc.
This document discusses Docker Machine and Docker Compose. Docker Machine allows provisioning and management of Docker hosts on various cloud providers and virtualization systems. Docker Compose defines and runs multi-container applications using a YAML file. The latest versions of both tools feature improved performance, stability, and configuration options as well as experimental features like smart container recreation in Compose. Demostrations of Docker Machine and Compose are provided.
Ansible has huge potential, also working with docker. These slides give an introduction to how Ansible works and can be used to automate and improve your infrastructure setup.
DockerDay2015: Docker orchestration for developersDocker-Hanoi
This document discusses Docker Machine and Docker Compose. Docker Machine allows provisioning and management of Docker hosts on various cloud providers and virtual machines. Docker Compose allows defining and running multi-container Docker applications using a compose file. The document outlines new features of Docker Machine 0.3.0 like generic drivers and swarm provisioning. It also summarizes new features of Docker Compose 1.3.0 like performance improvements and smart recreate. Live demos of both tools are included in the agenda.
Introduction to Docker presented by MANAOUIL Karim at the Shellmates's Hack.INI event. The teams deployed were assisted to deploy a Python Flask application behind an Nginx load balancer.
The document discusses a mid-evaluation of a major project comparing several hypervisors. It will compare Xen, KVM, VMware, and VirtualBox based on their technical differences and performance benchmarks. The benchmarks will test CPU speed, network speed, I/O speed, and performance running various server workloads. This comparison will help determine the best hypervisor for a given virtualization situation. Key factors that will be compared include OS support, security, CPU speed, network speed, I/O speed, and response times.
- Docker containers and virtual machines both enable isolation of applications but use different approaches.
- Virtual machines run a full operating system and require virtualization software to abstract the underlying hardware. Docker containers leverage the same kernel as the host operating system and provide isolation through kernel namespaces and cgroups.
- Containers are more portable and lightweight since they don't require guest operating systems, but virtual machines have stronger isolation since each has its own kernel.
Virtualization has pretty much become the de facto standard in datacenters today. However, there are a few holdouts as people aren’t confident that today’s modern hypervisors can give their applications the performance they need. As someone who’s evangelized virtualization for nearly a decade, David Pechon will show why there’s no reason why you shouldn’t virtualize.
The document discusses virtualization and provides an overview of key concepts and types of virtualization. It defines virtualization as using software to create virtual versions of hardware resources like servers, storage, and networks. The summary discusses the main types of virtualization covered in the document:
1. Server virtualization allows consolidating multiple physical servers onto one server by virtualizing hardware resources.
2. OS virtualization works at the OS layer, virtualizing a physical server and OS into isolated partitions that function like separate servers.
3. Hardware emulation uses a hypervisor to emulate hardware for guest operating systems, allowing different OS types on one server.
4. Paravirtualization coordinates hardware access without fully emulating
This document provides an overview of virtualization technologies for high performance computing environments. It discusses what virtualization and hypervisors are, as well as common hypervisors like Xen, KVM, and VirtualBox. The document analyzes these hypervisors based on features, usability, and performance benchmarks. Benchmark results are presented from running SPEC CPU, memory, and I/O benchmarks, as well as HPCC benchmarks, on virtual machines created with each hypervisor compared to native hardware. The analysis finds that all hypervisors provide acceptable virtualization features for HPC and that Xen supports the most resources but also has more complex installation.
Virtualization involves dividing the resources of a computer into multiple execution environments. It has been used since the 1960s and there are several types including hardware, desktop, and language virtualization. The key components of a virtualization architecture are the hypervisor and guest/host machines. Hypervisors allow multiple operating systems to run on a single system and can be type 1 (runs directly on hardware) or type 2 (runs within an operating system). Virtualization provides benefits but also has limitations related to resource allocation and compatibility that vendors continue working to address.
Virtualization allows organizations to get more from their existing hardware resources, improve recovery times, and enable flexible disaster recovery. It has been used for decades to run mission critical workloads on virtual machines. Modern virtualization technologies from VMware and Microsoft provide robust management and automation capabilities. While virtualization was initially focused on servers, it can now virtualize various infrastructure components including desktops, storage, and networking through software-defined approaches.
In this presentation, I am explaining about Virtual Machine, Its history, types, benefits, simulation and implementation. Also included some virtual machine application like VMware and more.
I hope you like my presentation.
Linkedin - https://in.linkedin.com/in/prakharmaurya
This document provides an overview of Docker, including what it is, how it compares to virtual machines and containers, its architecture and features. It discusses that Docker virtualizes using lightweight Linux containers rather than full virtual machines, and how this provides benefits like smaller size and faster performance compared to VMs. It also covers Docker's components like the Docker Engine, Hub and images, and how Docker can be used to develop, ship and run applications on any infrastructure.
The Lies We Tell Our Code (#seascale 2015 04-22)Casey Bisson
This document discusses various lies and forms of virtualization that are commonly used in computing. It begins by summarizing different virtualization technologies used at Joyent like zones, SmartOS, and Triton. It then discusses lies told at different layers of the stack, from virtual memory to network virtualization. Some key lies discussed include hyperthreading, paravirtualization, hardware virtual machines, Docker containers, filesystem virtualization techniques, and network virtualization. The document argues that many of these lies are practical choices that improve performance and workload density despite not perfectly representing the underlying hardware. It concludes by acknowledging the need to be mindful of security issues but also not to stop lying at the edge of the compute node.
Symantec Delivers 30x Faster Failover For Microsoft EnvironmentsSymantec
Symantec’s storage management and high availability offerings for Microsoft environments, adds to the ability for organizations to enhance availability and storage utilization in Windows Server physical, virtual, and private cloud environments. Veritas Storage Foundation High Availability 6.0 for Windows (comprising Veritas Storage Foundation 6.0 for Windows and Veritas Cluster Server 6.0 for Windows) is designed to help organizations rapidly failover Windows Server applications, recover Windows Server Hyper-V virtual machines from site-wide failures, and leverage their existing infrastructure to improve storage efficiency and application resilience in private cloud environments.
This document discusses virtualization of test environments. It defines virtualization as creating virtual versions of computer hardware, operating systems, or network resources. Virtualization allows software to be tested under different platforms and configurations without needing to set up each environment separately. Popular virtualization tools include VmWare, Oracle VirtualBox, KVM, and XEN. Vagrant is also introduced as a tool that allows portable development environments to be created and deployed easily across different infrastructures using provisioning scripts. The document provides commands for initializing, running, connecting to, and deleting Vagrant environments.
Virtualization allows multiple virtual machines to run on a single physical machine. It relies on hardware advances like multi-core CPUs and networking improvements. Virtualization works by either emulating hardware, trapping privileged instructions and emulating them, dynamic binary translation, or paravirtualization where the guest OS is aware it is virtualized. I/O virtualization can emulate devices, use paravirtualized drivers, or directly assign devices to VMs. This enables server consolidation and efficient utilization of resources in cloud computing.
The talk is about operating system virtualization technology known as OpenVZ. This is an effective way of partitioning a Linux machine into multiple isolated Linux containers. All containers are running on top of one single Linux kernel, which results in excellent density, performance and manageability. The talk gives an overall description of OpenVZ building blocks, such as namespaces, cgroups and various resource controllers. A few features, notably live migration and virtual swap, are described in greater details. Results of some performance measurements against VMware, Xen and KVM are given. Finally, we will provide a status update on merging bits and pieces of OpenVZ kernel to upstream Linux kernel, and share our plans for the future.
Virtualization allows multiple operating systems to run on a single physical machine by sharing hardware resources. A hypervisor manages virtual machines and isolates them so they can run independently without disruption. There are two types of hypervisors: type 1 runs directly on hardware while type 2 runs on a conventional operating system. Docker provides operating system-level virtualization through containers that package apps and dependencies. Amazon EC2 allows launching virtual servers in the cloud using Amazon Machine Images as templates. Users generate a key pair for authentication and launch instances to customize and connect to virtual servers in AWS.
Cloud computing introduced with emphasis on the underlying technology explaining that more than virtualization is involved. Topics covered include: Cloud Technologies, Web Applications, Clustering, Terminal Services, Application Servers, Virtualization, Hypervisors, Service Models, Deployment Models, and Cloud Security.
From Efficiency to Innovation: Transforming Business Value through Gen AISameer Verma
The world of Al is undergoing a metamorphosis. Traditional Al, programmed for specific tasks like playing chess, is being eclipsed by the new era of learning Al. This new breed can adapt, analyze data, and even create content. This shift is a game-changer for enterprises. Repetitive tasks can be automated, vast datasets can be analyzed for insights, and even entirely new products can be Al-powered. But the workforce needs to adapt too. Collaboration with Al tools will be key, requiring new skillsets like critical thinking and problem-solving. Generative Al, with its ability to craft images, music, and even code, holds immense promise. However, current offerings are in their infancy they can be impressive but prone to stumbles and biases.
The future of business is a partnership with Al. Businesses must carefully assess current tools and invest in human-Al collaboration and continuous learning. This will be the key to navigating the exciting, but uncertain path ahead. Eventually, we must not lose sight of the true purpose of an enterprise to provide value to the consumers, in order to improve their lives, and to do so responsibly, and in a sustainable way that provides acceptable returns to stakeholders.
A Framework for Information Access in Rural and Remote CommunitiesSameer Verma
Access to information is predicated on the access to a digital infrastructure. However, access to electricity and the Internet remain elusive for a significant percentage of the world's population, let alone a sustainable access in one’s local language, local context, and relating to local culture. This paper examines the issues of resource constraints, and proposes a framework to classify them. It then proceeds to utilize this framework to look at three different case studies of implementations of offline Internet access in Madagascar, Jamaica and India.
Presented at IEEE ISTAS 2016. http://istas2016.org
This document describes the XOVis learning analytics and visualization tool. XOVis collects metadata from students' work on their laptops to provide insights into learning and engagement. Student work is stored locally and then synced across schools and to the cloud using CouchDB and eventual consistency. This allows analytics even when internet is unavailable. XOVis processing and reporting is done both at local school appliances and in the cloud. The goal is to help educators better understand learning through visualized analytics on student computer usage.
Juju, LXC, OpenStack: Fun with Private CloudsSameer Verma
Description: Private clouds fill an interesting space in the cloud roadmap. They can provide a scalable, reliable, fault-tolerant cloud platform on your own infrastructure, and can be balanced with public cloud offerings. We will look at three technologies. OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface. Juju, a cloud orchestration platform from Ubuntu, enables you to build entire environments in the cloud with only a few commands on public clouds like Amazon Web Services and HP Cloud, to private clouds built on OpenStack. LXC is the userspace control package for Linux Containers, a lightweight virtual system mechanism sometimes described as “chroot on steroids”. LXC builds up from chroot to implement complete virtual systems, adding resource management and isolation mechanisms to Linux’s existing process management infrastructure. How cool would it be, to walk around with a private cloud on your laptop?
"Computer, end program": Virtualization and the CloudSameer Verma
One does not simply explain "cloud". A continuum from virtual machines to the cloud, with a Star Trek bias. Holodeck, virtual machines, hypervisors, pulbic cloud, private cloud, hybrid cloud, VirtualBox, Ubuntu, OpenStack, and finally, Make it so!
Creativity and Innovation with One Laptop per ChildSameer Verma
How the One Laptop per Child project comes up with creative and innovative solutions to challenging problems by changing the constraints to the problems.
The document discusses the One Laptop per Child (OLPC) initiative which aims to provide low-cost and rugged laptops to empower education for children in developing areas of the world. It has distributed over 3 million laptops to children in over 40 countries speaking over 30 languages. The laptops use the Sugar interface and are designed for collaborative, joyful learning through activities like TurtleArt, Scratch, and measuring. OLPC has implementations in specific areas described like Nigeria, Thailand, India, Mongolia, Ethiopia, and more.
The Joy of Z Axis: Creativity and Innovation through 3D PrintingSameer Verma
Presentation on creativity and innovation through 3D printing. Featuring the Printrbot Jr. V2 at the College of Business, San Francisco State University.
One Laptop per Child and Sugar: Collaborative, Joyful and Self-empowered Lear...Sameer Verma
The One Laptop Per Child (OLPC) project has had several beginnings. The idea has roots in the 60s. It gained momentum in the last 15 years. OLPC released the idea to the world in 2005, and its first product in 2007. A lot has changed since then. We'll look at an update on the projects, learning through robotics, assessment through learning analytics, offline mirco-clouds, HTML5 apps, Sugar on tablets and Raspberry Pi, and other new initiatives. In a world of cheap, Android-driven tablets, how does the idea of OLPC fit? What role does the Sugar learning platform continue to play inside and outside of OLPC? Help us grow the initiatives so that children of the world may continue to have a chance at collaborative, joyful, and self-empowered learning.
Education and Social Inclusion through InformationSameer Verma
The document discusses the One Laptop Per Child (OLPC) organization, which aims to empower children worldwide through education. Its mission is to provide each child with a low-cost, rugged laptop to support collaborative and self-directed learning. OLPC has distributed over 3 million laptops to children in over 40 countries. The document outlines OLPC's educational approach and principles, technical specifications for its XO laptop, and its software platform and learning content. It also describes OLPC's architecture which utilizes cloud, on-site micro-cloud, and individual devices to enable learning even without internet connectivity.
Data by itself is simply a collection of numbers. It only becomes meaningful when we weave it through context. A context of relevance that creates information - provides insight, creates solutions and solves problems. The Web gives us a fabric of connectedness, but if the data isn't substantiated semantically, the information we create isn't very useful. By building effective web assets using platforms like Drupal, we build ways to solve problems across the spectrum from local to global. We not only build the Web the way it was meant to be, but we also build it to support a commons across community, enterprise and government for generations to come.
Social Justice and Equity through InformationSameer Verma
This document summarizes a presentation by Sameer Verma on social justice and equity through information. It discusses how free and open source software can help increase access to information for underserved communities and reduce the digital divide. It provides examples of how One Laptop Per Child is working to provide low-cost laptops and educational resources to children in over 40 countries worldwide, especially in rural areas lacking technology and infrastructure. The presentation emphasizes using technology and information to empower communities and further social justice and equity goals.
Social Justice and Equity through InformationSameer Verma
This document summarizes a presentation about social justice and equity through information and technology. It discusses how free and open source software can help increase access to information globally. It provides examples of the One Laptop Per Child (OLPC) initiative that aims to provide low-cost laptops to children in developing countries around the world. Specific examples of OLPC programs in countries like India, Jamaica, Afghanistan and partnerships with San Francisco State University are mentioned. The document advocates that technologies like OLPC can help more of the world gain access to education and information.
Facilitating a Digital Commons for Generations to ComeSameer Verma
This document discusses facilitating a digital commons for future generations. It covers topics such as using Creative Commons licenses to enable legal sharing and collaboration of educational resources. It provides examples of how open licensing policies have been applied to funding for educational grants and open high school curriculum development. The importance of open access platforms for curating and disseminating resources like books, music and videos is also covered. Examples discussed include the Internet Archive and low-cost solutions like Dreamplug to provide access in remote areas. The overall message is the importance of keeping educational resources open and accessible for generations to come.
The role of wall art in interior designingmeghaark2110
Wall art and wall patterns are not merely decorative elements, but powerful tools in shaping the identity, mood, and functionality of interior spaces. They serve as visual expressions of personality, culture, and creativity, transforming blank and lifeless walls into vibrant storytelling surfaces. Wall art, whether abstract, realistic, or symbolic, adds emotional depth and aesthetic richness to a room, while wall patterns contribute to structure, rhythm, and continuity in design. Together, they enhance the visual experience, making spaces feel more complete, welcoming, and engaging. In modern interior design, the thoughtful integration of wall art and patterns plays a crucial role in creating environments that are not only beautiful but also meaningful and memorable. As lifestyles evolve, so too does the art of wall decor—encouraging innovation, sustainability, and personalized expression within our living and working spaces.
How to Configure Extra Steps During Checkout in Odoo 18 WebsiteCeline George
In this slide, we’ll discuss on how to Configure Extra Steps During Checkout in Odoo 18 Website. Odoo website builder offers a flexible way to customize the checkout process.
How to Add Button in Chatter in Odoo 18 - Odoo SlidesCeline George
Improving user experience in Odoo often involves customizing the chatter, a central hub for communication and updates on specific records. Adding custom buttons can streamline operations, enabling users to trigger workflows or generate reports directly.
How To Maximize Sales Performance using Odoo 18 Diverse views in sales moduleCeline George
One of the key aspects contributing to efficient sales management is the variety of views available in the Odoo 18 Sales module. In this slide, we'll explore how Odoo 18 enables businesses to maximize sales insights through its Kanban, List, Pivot, Graphical, and Calendar views.
How to Change Sequence Number in Odoo 18 Sale OrderCeline George
In this slide, we’ll discuss on how to change sequence number in Odoo 18 Sale Order. In Odoo, sequences are used to generate unique identifiers for records. These identifiers are often displayed as reference numbers, such as invoice numbers, purchase order numbers, or customer numbers.
How to Manage Cross Selling in Odoo 18 SalesCeline George
In this slide, we’ll discuss on how to Manage cross selling in Odoo 18 Sales. Cross-selling is a powerful sales technique that involves recommending complementary or related products to a customer who is already considering a purchase.
Classification of mental disorder in 5th semester bsc. nursing and also used ...parmarjuli1412
Classification of mental disorder in 5th semester Bsc. Nursing and also used in 2nd year GNM Nursing Included topic is ICD-11, DSM-5, INDIAN CLASSIFICATION, Geriatric-psychiatry, review of personality development, different types of theory, defense mechanism, etiology and bio-psycho-social factors, ethics and responsibility, responsibility of mental health nurse, practice standard for MHN, CONCEPTUAL MODEL and role of nurse, preventive psychiatric and rehabilitation, Psychiatric rehabilitation,
As of 5/17/25, the Southwestern outbreak has 865 cases, including confirmed and pending cases across Texas, New Mexico, Oklahoma, and Kansas. Experts warn this is likely a severe undercount. The situation remains fluid, though we are starting to see a significant reduction in new cases in Texas. Experts project the outbreak could last up to a year.
CURRENT CASE COUNT: 865 (As of 5/17/2025)
- Texas: 720 (+2) (62% of cases are in Gaines County)
- New Mexico: 74 (+3) (92.4% of cases are from Lea County)
- Oklahoma: 17
- Kansas: 54 (38.89% of the cases are from Gray County)
HOSPITALIZATIONS: 102
- Texas: 93 - This accounts for 13% of all cases in Texas.
- New Mexico: 7 – This accounts for 9.47% of all cases in New Mexico.
- Kansas: 2 - This accounts for 3.7% of all cases in Kansas.
DEATHS: 3
- Texas: 2 – This is 0.28% of all cases
- New Mexico: 1 – This is 1.35% of all cases
US NATIONAL CASE COUNT: 1,038 (Confirmed and suspected)
INTERNATIONAL SPREAD (As of 5/17/2025)
Mexico: 1,412 (+192)
- Chihuahua, Mexico: 1,363 (+171) cases, 1 fatality, 3 hospitalizations
Canada: 2,191 (+231) (Includes
Ontario’s outbreak, which began in November 2024)
- Ontario, Canada – 1,622 (+182), 101 (+18) hospitalizations
This presentation covers the conditions required for the application of Boltzmann Law, aimed at undergraduate nursing and allied health science students studying Biophysics. It explains the prerequisites for the validity of the law, including assumptions related to thermodynamic equilibrium, distinguishability of particles, and energy state distribution.
Ideal for students learning about molecular motion, statistical mechanics, and energy distribution in biological systems.
How to Share Accounts Between Companies in Odoo 18Celine George
In this slide we’ll discuss on how to share Accounts between companies in odoo 18. Sharing accounts between companies in Odoo is a feature that can be beneficial in certain scenarios, particularly when dealing with Consolidated Financial Reporting, Shared Services, Intercompany Transactions etc.
Rebuilding the library community in a post-Twitter worldNed Potter
My keynote from the #LIRseminar2025 in Dublin, from April 2025.
Exploring the online communities for both libraries and librarians now that Twitter / X is no longer an option for most - with a focus on Bluesky amd how to get the most out of the platform.
The particular emphasis in this presentation is on academic libraries / Higher Ed.
Thanks to LIR and HEAnet for inviting me to speak!
How to Manage Manual Reordering Rule in Odoo 18 InventoryCeline George
Reordering rules in Odoo 18 help businesses maintain optimal stock levels by automatically generating purchase or manufacturing orders when stock falls below a defined threshold. Manual reordering rules allow users to control stock replenishment based on demand.
Chemotherapy of Malignancy -Anticancer.pptxMayuri Chavan
Computer, end program
1. Computer, end program
Making virtual worlds possible
Sameer Verma, Ph.D.
Professor, Information Systems Department
College of Business, San Francisco State University
San Francisco, CA 94132 USA
http://verma.sfsu.edu/
[email protected]
Unless noted otherwise
3. Holodeck
● Star Trek:
http://en.wikipedia.org/wiki/Holodeck
● A simulated reality, where 3D worlds could
be simulated with force fields and
projections.
● Load, run, freeze and store programs.
4. Final scene of Star Trek: Enterprise
http://youtu.be/pXotJu1CapU
5. As it was in the beginning
● Mainframe virtualization.
● IBM's CP-40 research system in 1967.
● Compartmentalize large processing
capabilities.
● Run processes separately.
● Lease “slices” to different customers.
6. Too many servers?
● Data center challenges
● One physical server for one application
– Web
–
–
–
Storage
Authentication
Network
=4
Power, Cooling, Bandwidth...
7. Rise of Apache
● Apache VirtualHost.
● Multiple virtual web hosts in each physical
server.
● Led to the adoption of Apache in server
rooms.
● Eventually led to Linux to run these websites.
● Still one underlying OS.
Single point of failure?
8. Hypervisor
This is not a hypervisor
...although it is a VISOR
http://en.wikipedia.org/wiki/Geordi_La_Forge#VISOR
http://startrek.asatem.cz/storage/laforge_geordi01.jpg
9. Hypervisor
apps apps apps apps apps apps apps
operating system operating system operating system
hypervisor
hardware
Type 1: Bare Metal
10. Hypervisor
apps apps apps apps apps apps apps
operating system (guest) operating system operating system
hypervisor
operating system (host)
hardware
Type 2: Hosted
11. Paravirtualization
apps apps apps
operating system (modified)
common
hypervisor
operating system (host)
hardware