Friday, March 24, 2017

VMware Workstation 12.x.x for latest openSUSE Tumbleweed

As you know Tumbleweed is constantly churning and as such there are points in time where some of the libraries required to run VMware Workstation get a new version that isn't compatible with the latest release or the version you have installed. Mostly the Kernel problems get worked around with simple patches so that the vmmon and vmnet drivers can compile correctly and I've posted a few here on my blog with a tool that can help as well. See my post from January.

So what if for example (which is what happened this month with a newer library version of curl) that we have a newer version of library than what is supported by VMware Workstation. So you go ahead and launch vmware, but no VMware Workstation windows opens. The first thing you can do is inspect the log craeted at /tmp/vmware-<your_home_user>/vmware-apploader-<some_number>.log. It will show you in the beginning which libraries it will be using from either SYSTEM or SHIPPED with VMware Workstation. From the output this month we have the following which is suspect in our log.
017-03-24T08:59:45.773-06:00| appLoader| I125: Marking libxml2.so.2 node as SHIPPED.
2017-03-24T08:59:45.773-06:00| appLoader| I125: Marking libview.so.3 node as SHIPPED.
2017-03-24T08:59:45.773-06:00| appLoader| I125: Marking libXrandr.so.2 node as SYSTEM.
2017-03-24T08:59:45.789-06:00| appLoader| I125: System libcurl.so.4 has OpenSSL version OpenSSL/1.0.2k, ours is OpenSSL/1.0.2k.
2017-03-24T08:59:45.789-06:00| appLoader| I125: System libcurl.so.4 has version 7.53.1 (need 7.51.0) and has been compiled with c-ares support (SSL compatibility? yes).
2017-03-24T08:59:45.789-06:00| appLoader| I125: Marking libcurl.so.4 node as SYSTEM.
Since libcurl.so.4 was marked as SYSTEM we know that it is trying to use the library from our installed packages. libcurl had some recent upgrades. We can try to mitigate this in two ways.

We can execute from the command line forcing to use all SHIPPED libraries from VMware Workstation.
# VMWARE_USE_SHIPPED_LIBS=force vmware &
We can force the one library to be run from the SHIPPED libraries by running the following.
# export LD_LIBRARY_PATH=/usr/lib/vmware/lib/libcurl.so.4:$LD_LIBRARY_PATH
# vmware & 
Both ways are acceptable, but in some cases the later can have better performance in my experience.

Hopefully this can help with future changes in openSUSE Tumbleweed and ensure that you can continue to run VMware Workstation no matter the outcome of the installed packages.

Enjoy!





Tuesday, February 21, 2017

OpenStack Summit Boston 2017 Presentation Votes (ends Feb. 21st, 2017 at 11:59pm PST)

Open voting is available for all session submissions until Tuesday, Feb 21, 2017 at 11:59PM PST. This is a great way for the community to decide what they want to hear.

I have submitted a handful of sessions which I hope will be voted for. Below are some short summary's and links to their voting pages.

Avoid the storm! Tips on deploying the Enterprise Cloud
The primary driver for enterprise organizations choosing to deploy a private cloud is to enable on-demand access to the resources that the business needs to respond to market opportunities. But business agility requires availability... 
https://www.openstack.org/summit/austin-2016/vote-for-speakers/#/18317
Keys to Successful Data Center Modernization to Infrastructure Agility
Data center modernization and consolidation is the continuous optimization and enhancement of existing data center infrastructure, enabling better support for mission-critical and Mode 1 applications. The companion Key Initiative, "Infrastructure Agility" focuses on Mode 2...
https://www.openstack.org/summit/austin-2016/vote-for-speakers/#/18403
Best Practices with Cloud Native Microservices on OpenStack
It doesn't matter where your at with your implementation of Microservices, but you do need to understand some key fundamentals when it comes to designing and properly deploying on OpenStack. If your just starting out then you will need to learn some key things such as the common characteristics, monolithic vs  microservice, componetization, decentralized governance, to name a few. In this session you'll learn some of these basics and where to start...
https://www.openstack.org/summit/austin-2016/vote-for-speakers/#/18336
Thanks for your support.
-CS

Wednesday, January 4, 2017

VMware Workstation 12.5.2 patch for Linux Kernel 4.9

I've rounded up the working patches from the public posts and created my own patch files. You can use my updated VMware module compile script to patch it as well. It also does a bit of cleanup. Grab the script and the patch files from here. Once downloaded then make sure they are all in the same directory and you have made the script executable. Follow the rest of the steps below.

1) Directory should look like this:
# ls -al mkvm* *.patch
-rwxr-xr-x 1 cseader users 2965 Jan  4 21:11 mkvmwmods+patch.sh        
-rwxr-xr-x 1 cseader users 1457 Sep 26 15:47 mkvmwmods.sh
-rw-r--r-- 1 cseader users  650 Jan  4 19:16 vmmon-hostif.patch        
-rw-r--r-- 1 cseader users  650 Jan  4 21:21 vmnet-userif.patch
2) Execute with sudo or login as root

# ./mkvmwmods+patch.sh                                                
It will immediately start the cleanup and then extracting the VMware source. If the patch files are in the same Directory as it looks like above then it will patch the source for compiling against Kernel 4.9
                      

3) Now Start VMware Workstation.

Enjoy!

Monday, September 26, 2016

VMware Workstation / gcc 5.x / Linux; Error: Failed to get gcc info

Well if your like me and you have been sick of this Error: Failed to get gcc information. for awhile now when installing VMware Workstation on the major Linux distributions out there then you likely will want to automate the process of compiling it correctly and doing the rest of the tasks once your compile is complete.

Download my script here and run it after each time your kernel changes of course.

Let me know how your experience is with this or you would like to see some additions or adjustments.

Friday, August 12, 2016

Traffic shaping with virtual pfsense and SLES 12 KVM Host

My traffic shaping has really worked out using pfsense to lower my buffer bloat and get better network performance.



I built my own pfsense from a Dell OptiPlex 990 SFF PC with an Intel Core i5-2400 3.1GHz. I have installed an Intel PRO/1000 VT Quad Port Server Adapter LP PCI-E for more networks and vlans on my network. Traffic shaping was a breeze with pfsense. I of course run pfsense virtualized as the OS itself doesn't work on the hardware physically. BSD seems to have a limited hardware support than Linux these days. It was really the fact that BSD kernel didn't have the right support for this chip and kept hard locking with a kernel error that made no sense. So I have installed SUSE Linux Enterprise Server 12 SP1 as the HOST OS which is humming along with no kernel errors and pfsense is running as a KVM virtual machine. I have bridged all the network interfaces for the virtual machine and it works great. Its been running for 3 months now with no troubles.

Now to try out Sophos UTM. Looks like a fun alternative to pfsense and its Linux based. :-)

Friday, February 12, 2016

OpenStack Summit Austin 2016 Presentation Votes (ends Feb. 17th, 2016)

Open voting is available for all session submissions until Wednesday, Feb 17, 2016 at 11:59PM PST. This is a great way for the community to decide what they want to hear.

 I have submitted a handful of sessions which I hope will be voted for. Below are some short summary's and links to their voting pages.

Operations and Management of your OpenStack Multi-Tenant Platform ( Speaker: Cameron Seader )
You need to deploy your OpenStack infrastructure with ease and without interruption. Audit your OpenStack environment for known vulnerabilites and quickly remediate them. When your growth creates a necessity to fine tune your storage, compute, and control resources you need to quickly determine your bottlenecks and easily...
https://www.openstack.org/summit/austin-2016/vote-for-speakers/presentation/7837

Shared Filesystems Management (Manila); Forging the way ahead ( Speakers: Cameron Seader, Anika Suri - NetApp )
Manila is the OpenStack shared filesystem service that was announced September 2013. In January 2015 it was labeled as an officially incubated OpenStack program. Now with the current stable release in Liberty, Manila is providing the management of file shares (for example, NFS and CIFS) as a core service to OpenStack. Manila currently works with a variety of vendors, including NetApp, Red Hat Storage (GlusterFS), EMC, IBM GPFS, Hitachi, HPE, and on a base Linux NFS server...
https://www.openstack.org/summit/austin-2016/vote-for-speakers/presentation/7927

Your Software-Defined Data Center Leading the Way; Agile DevOps ( Speakers: Cameron Seader, Simon Briggs)
With new tooling comes opportunity to change the way we do things.  So take a journey through time, looking at where we have come from and where we are going.... OpenStack leading the way towards a software-defined data center. How can the software-defined data center take us to the cloud with OpenStack.  Will we be able to adapt teams to these new methods? How to get there?  Well learn about Agile development and DevOps and how they meet together to fill the gaps in your software-defined data center approach...
https://www.openstack.org/summit/austin-2016/vote-for-speakers/presentation/8261

Thanks for your support.
    -CS

    Friday, June 26, 2015

    SUSE® OpenStack Cloud 5 Admin Appliance – The Easier Way to Start Your Cloud

    If you used the SUSE OpenStack Cloud 4 Admin Appliance, you know it was a downloadable, OpenStack Icehouse-based appliance, which even a non-technical user could get off the ground to deploy an OpenStack cloud. Today, I am excited to tell you about the new Juno-based SUSE OpenStack Cloud 5 Admin Appliance.

    With the SUSE OpenStack Cloud 4 release we moved to a single integrated version. After lots of feedback from users it was clear that no one really cared that downloading something over 10GB mattered as long as it had everything they needed to start an OpenStack private cloud. In version 5 the download is over 15GB, but it actually has all of the software you might need from SLES 11 or SLES 12 compute infrastructure to SUSE Enterprise Storage integration. I was able to integrate the latest SMT mirror repositories at a reduced size and have everything you might need to speed your deployment.

    The new appliance incorporates all of the needed software and repositories to set up, stage and deploy OpenStack Juno in your sandbox lab, or production environments. Coupled with it are the added benefits of automated deployment of highly available cloud services, support for mixed-hypervisor clouds containing KVM, Xen, Microsoft Hyper-V, and VMware vSphere, integration of our award winning, SUSE Enterprise Storage, support from our award-winning, worldwide service organization and integration with SUSE Engineered maintenance processes. In addition, there is integration with tools such as SUSE Studio™ and SUSE Manager to help you build and manage your cloud applications.

    With the availability of SUSE OpenStack Cloud 5, and based on feedback from partners, vendors and customers deploying OpenStack, it was time to release a new and improved Admin Appliance. This new image incorporates the most common use cases and is flexible enough to add in other components such as SMT (Subscription Management Tool) and SUSE Customer Center registration, so you can keep your cloud infrastructure updated.

    The creation of the SUSE OpenStack Cloud 5 Admin Appliance is intended to provide a quick and easy deployment. The partners and vendors we are working with find it useful to quickly test their applications in SUSE OpenStack Cloud and validate their use case. For customers it has become a great tool for deploying production private clouds based on OpenStack.

    With version 5.0.x you can proceed with the following to get moving now with OpenStack.

    Its important that you start by reading and understanding the Deployment Guide before proceeding. This will give you some insight into the requirements and an overall understanding of what is involved to deploy your own private cloud.

    As a companion to the Deployment Guide we have provided a questionnaire that will help you answer and organize the critical steps talked about in the Deployment Guide.

    To help you get moving quickly the SUSE Cloud OpenStack Admin Appliance Guide provides instructions on using the appliance and details a step-by-step installation.

    The most updated guide will always be here

    A new fun feature to try out in SUSE OpenStack Cloud 5 is the batch deployment capability. The appliance includes three templates in the /root home directory ( NFS.yaml, DRBD.yaml, simple-cloud.yaml )

    NFS.yaml will deploy a 2 node controller cluster with NFS shared storage and 2 compute nodes with all of the common OpenStack services running in the cluster.

    DRBD.yaml will deploy a 2 node controller cluster with DRBD replication for the database and messaging queue and 2 compute nodes with all of the common OpenStack services running in the cluster.

    simple-cloud.yaml will deploy 1 controller and 1 compute node with all of the common OpenStack services running in a simple setup. 

    Now is the time. Go out to http://www.suse.com/suse-cloud-appliances and start downloading version 5, walk through the Appliance Guide, and see how quick and easy it can be to set up OpenStack. Don't stop there. Make it highly available and set up more than one hypervisor, and don't forget to have a lot of fun.

    Monday, February 23, 2015

    openSUSE Tumbleweed; 3.19 kernel; VMware Workstation 11.0.x

    Since the release of the 3.19 kernel in openSUSE Tumbleweed the vmnet module will fail to build for VMware Workstation 11.0.x

    VMware community message

    Credit for the patch

    patch available at 1

    Execute the following steps to patch your VMware Workstation 11.0.x

    Download the patch to /tmp:
    # curl -L "https://docs.google.com/a/seader.us/uc?authuser=0&id=0BxMaO3Y-qL_1Z2NMSkxRdndzNlk&export=download" -o /tmp/vmnet-3.19.patch
    Extract the vmnet module from sources:
    # cd /usr/lib/vmware/modules/source
    # tar -xf vmnet.tar
    Apply the patch to the source:
    # patch -p0 -i /tmp/vmnet-3.19.patch
    Recreate the source archive:
    # tar -cf vmnet.tar vmnet-only 
    Remove leftover folder:
    # rm -r *-only
    Rebuild VMware modules:
    # vmware-modconfig --console --install-all
    Enjoy!

    Thursday, February 19, 2015

    OpenStack Summit Vancouver 2015 Presentation Votes (ends Feb. 23rd)

    Open voting is available for all session submissions until February 23rd at 5pm CST. This is a great way for the community to decide what they want to hear.

     I have submitted a handful of sessions which I hope will be voted for. Below are some short summary's and links to their voting pages.
    • Accelerate OpenStack deployment with OpenStack Admin Appliance ( Speaker: Cameron Seader ) 
    In an effort to make OpenStack available to the non-tech user and appear much less of a heavy lifting project, I have created the SUSE OpenStack Cloud Admin Appliance. However, no matter if your an OpenStack Noob, Professional, Expert or Developer...
    https://www.openstack.org/vote-vancouver/Presentation/accelerate-openstack-deployment-with-openstack-admin-appliance
    • Deploying SUSE OpenStack Cloud with the Xen Project Hypervisor ( Speakers: Cameron Seader, Russell Pavlicek, Stefano Stabellini ) 
    Its all about choice these days when it comes to selecting your OpenStack hypervisor. But what makes for a good choice of hypervisor? And why should you consider the Xen Project Hypervisor when there are other possible selections? ...
    https://www.openstack.org/vote-vancouver/Presentation/deploying-suse-openstack-cloud-with-the-xen-project-hypervisor  
    • Hands-On With Heat: Service Orchestration in the Cloud submitted by Rick Ashford ( Speakers: Rick Ashford, Cameron Seader )
     OpenStack Heat provides a framework for predefining a structured service, and allows you instantiate that service in an automated manner. This hands-on lab will walk the participants through the process of creating a Heat template file for a multi-tiered...
    https://www.openstack.org/vote-vancouver/Presentation/hands-on-with-heat-service-orchestration-in-the-cloud
    • Planning an Enterprise OpenStack Deployment submitted by Rick Ashford ( Speakers: Rick Ashford, Cameron Seader )
    Deploying OpenStack can be a difficult, time-consuming, and complex task. Doing it successfully is even harder. Planning and coordination between groups are the key differences between successful and failed implementations. Come discuss the questions you will need to ask yourself to be able to architect...
    https://www.openstack.org/vote-vancouver/Presentation/planning-an-enterprise-openstack-deployment
    Thanks for your support.
    -CS

    Thursday, October 23, 2014

    openSUSE 13.x / Factory processor P-States and Performance

    Since the introduction of P-States in the Intel SandyBridge and newer processors and the introduction of the P-States driver in the kernel since 3.9 there have been some changes to the power management on systems in regards to userspace tools. It has moved from cpufreq to cpupower and you may have written a script in times past to help set the right power management governor for your system. On a system with P-States you find that using cpupower has no effect on the performance whatsoever when you change the governor with cpupower. In order to get high performance out of your system with P-States you will need to look at some parameters into sysfs and change them using the userspace tool cpupower. Lets have a look at what there is for P-States.
    Change your directory to /sys/devices/system/cpu/intel_pstate

    system:/sys/devices/system/cpu/intel_pstate # l
    total 0
    drwxr-xr-x  2 root root    0 Oct 21 18:45 ./
    drwxr-xr-x 14 root root    0 Oct 21 18:45 ../
    -rw-r--r--  1 root root 4096 Oct 21 18:45 max_perf_pct
    -rw-r--r--  1 root root 4096 Oct 21 18:45 min_perf_pct
    -rw-r--r--  1 root root 4096 Oct 21 18:45 no_turbo
    We have the max_perf_pct and the min_perf_pct and if we cat these files we can see their values.
    # cat max_perf_pct
    100
    # cat min_perf_pct
    32
    This is the default for a powersave governor which you can gather from running the following command.
    # cpupower frequency-info
      analyzing CPU 0:
      driver: intel_pstate
      CPUs which run at the same hardware frequency: 0
      CPUs which need to have their frequency coordinated by software: 0
      maximum transition latency: 0.97 ms.
      hardware limits: 1.20 GHz - 3.70 GHz
      available cpufreq governors: performance, powersave
      current policy: frequency should be within 1.20 GHz and 3.70 GHz.
                      The governor "powersave" may decide which speed to use
                      within this range.
      current CPU frequency is 3.53 GHz (asserted by call to hardware).
      boost state support:
        Supported: yes
        Active: yes
        3500 MHz max turbo 4 active cores
        3500 MHz max turbo 3 active cores
        3600 MHz max turbo 2 active cores
        3700 MHz max turbo 1 active cores
    Notice the driver is intel_pstate and the current policy is set to powersave

    We want the performance governor. So we will need to change our governor to performance. Execute the following.
    # cpupower frequency-set -g performance

    # cpupower frequency-info
    analyzing CPU 0:
      driver: intel_pstate
      CPUs which run at the same hardware frequency: 0
      CPUs which need to have their frequency coordinated by software: 0
      maximum transition latency: 0.97 ms.
      hardware limits: 1.20 GHz - 3.70 GHz
      available cpufreq governors: performance, powersave
      current policy: frequency should be within 1.20 GHz and 3.70 GHz.
                      The governor "performance" may decide which speed to use
                      within this range.
      current CPU frequency is 2.83 GHz (asserted by call to hardware).
      boost state support:
        Supported: yes
        Active: yes
        3500 MHz max turbo 4 active cores
        3500 MHz max turbo 3 active cores
        3600 MHz max turbo 2 active cores
        3700 MHz max turbo 1 active cores
    Also if we cat /sys/devices/system/cpu/intel_pstate/min_perf_pct you will notice that it has changed to 100

    Thats good its all at 100% but wait we still are not done. There is another setting for P-States. Its called Performance Bias. From the man page cpupower-set you can read the following about it.

    ----snip----
    Options
    --perf-bias, -b
    Sets a register on supported Intel processore which allows software to convey its policy for the relative importance of performance versus energy savings to the processor.

    The range of valid numbers is 0-15, where 0 is maximum performance and 15 ismaximum energy efficiency.

    The processor uses this information in model-specific ways when it must select trade-offs between performance and energy efficiency.

    This policy hint does not supersede Processor Performance states (P-states) or CPUIdle power states (C-states), but allows software to have influence where it would otherwise be unable to express a preference.

    For example, this setting may tell the hardware how aggressively or conservatively to control frequency in the "turbo range" above the explicitly OS-controlled P-state frequency range.It may also tell the hardware how aggressively it should enter the OS requested C-states.

    This option can be applied to individual cores only via the --cpu option, cpupower(1).

    Setting the performance bias value on one CPU can modify the setting on related CPUs as well (for example all CPUs on one socket), because of hardware restrictions. Use cpupower -c all info -b to verify.

    This options needs the msr kernel driver (CONFIG_X86_MSR) loaded.
    ----snip----

    So lets set our bias to 0 so we can get absolute maximum performance. The default is 8 on openSUSE. Execute the following.
    # cpupower set -b 0
    and to check it.
    # cpupower info
    analyzing CPU 0:
    perf-bias: 0
    even though it only shows CPU 0 it applies for all and you can see that by adding the -c all switch before info.
    Now you have a system running at full performance with P-States.
    Note: This will run the CPU's hot and the fans will kick in full speed all the time. So when your away from your system or don't need full performance you will want to put it back in powersave. I'm not responsible for overheating of your CPU. :-)