SlideShare a Scribd company logo
Express-Guide
                                       ~to~
                                 Basic Setup of


                Solaris Zones
                       Native Zones & lx-Branded Zones
                                                by, ABK ~ http://www.twitter.com/aBionic


                                 ::Task Detail::

      Creating/Managing Solaris Zones
      mirroring an existing CentOS Box over a Zone
      setting up SVN service over a Zone
      setting CIFS over a Zone



                                 ::Background::

Solaris Zones are a part of Solaris Container Technology. Zones manage the
namespace isolation for containers implementing virtualization.

In Solaris 10, containers are zone using Resource Management Feature via Solaris
Resource Manager. There is no performance overhead to this approach.

Resources are used as a 'Dynamic resource Pool' managed between containers using
a 'Fair Share Scheduler'.

Broadly there are two types of zones:
    Native Zone
     These are basic stripped down native Solaris O.S. Instances.
     Native zones are further of two types where
       ◦ 'Small Zones' (also known as Sparse Root Zone) have several system
         directories shared with Solaris O.S. or Global Zone in non-writable mode
       ◦ 'Big Zones' (also known as Whole Root Zone) have all independent
         directories

    lx-Branded Zone
     these are zones installed from installer of O.S., currently only linux branded
     zones are available also called lx-zones.
::Execution Method::

         (a.) Creating native {small,big} and lx-branded zones

 Setting up Resource Pool to be used by zones
  ◦ Enabling Resource Pool features
     ▪ #pooladm -e

  ◦ Saving current resource pool
    ▪ #pooladm -s

  ◦ List current Pools
    ▪ #pooladm
    ▪ {generally only 'pool_default' is present on fresh zone}

  ◦ Configuring 'default_pool' to enable Fair Share              Scheduler
    over it
    ▪ #poolcfg     -c    'modify pool   pool_default              (string
       pool.scheduler="FSS")'
    ▪ #pooladm –c

  ◦ Priority Controller moving all processes and resources under
    Fair Share Scheduler
    ▪ #priocntl -s -c FSS -i class TS
    ▪ #priocntl -s -c FSS -i pid 1


 Configuring a Solaris Zone
  ◦ This lists the current zones
    ▪ #zoneadm list -cv

  ◦ Configuring a new Native Zone
    ▪ registering a new Zone
      • #zonecfg -z newZoneName

  ◦ regarding 3 different types of zones follow respective command
    ▪ for creating a native small-zone {with shared directories}
       • zonecfg:newZoneName>create
    ▪ for creating a native big-zone {with independent directories}
       • zonecfg:newZoneName>create -b
    ▪ for creating a lx-branded zone
       • zonecfg:lxZoneName>create -t SUNWlx
◦ assigning it a location on HDD to be installed
  ▪ zonecfg:newZoneName>set
     zonepath=/export/home/zones/newZoneName

◦ Adding a Network Interface Resource to it
  ▪ zonecfg:newZoneName>add net
  ▪ zonecfg:newZoneName:net>set address=192.168.16.61
  ▪ zonecfg:newZoneName:net>set physical=eth0
  ▪ zonecfg:newZoneName:net>end

◦ Assign a Resource Pool (should be already existing) to it
  ▪ zonecfg:newZoneName>set pool=pool_default

◦ Adding a resource controller to this Zone
  ▪ zonecfg:newZoneName>add rctl
  ▪ zonecfg:newZoneName:rctl>set name=zone.cpu-shares
  ▪ zonecfg:newZoneName:rctl>
    add value (priv=privileged,limit=1,action=none)
  ▪ zonecfg:newZoneName:rctl>end

◦ Giving a CD-ROM access (required if installing lx-zone from ISO or CD)
  ▪ zonecfg:newZoneName>add fs
  ▪ zonecfg:newZoneName:fs>set dir=/cdrom
  ▪ zonecfg:newZoneName:fs>set special=/cdrom
  ▪ zonecfg:newZoneName:fs>set typr=lofs
  ▪ zonecfg:newZoneName>set options=[nodevices]
  ▪ zonecfg:newZoneName>end

◦ Verify, Save and Exit
  ▪ zonecfg:newZoneName>verify
  ▪ zonecfg:newZoneName>commit
  ▪ zonecfg:newZoneName>exit

◦ Creating the HDD location for Zone
  ▪ #mkdir -p /export/home/zones/newZoneName

◦ Granting required permissions to location
  ▪ #chmod 700 /export/home/zones/newZoneName

◦ Confirming the registration of Zone Configuration
  ▪ #zoneadm list -cv
◦ It should show a listing for currently created zone like
     ▪ newZoneName configured at /export/home/zones/newZoneName, it is
         native and shared (small-zone)

 Installing the already configured zone
  ◦ Installing the zone if it's a Native {small or big} zone
     ▪ #zoneadm -z newZoneName install

   ◦ if it's a lx-brand zone with O.S. TarBall, automatically creating ZFS
     ▪ #zoneadm -z newZoneName install -d /tmp/os.tgz

   ◦ if it's a lx-branded zone with O.S. TarBall, not creating ZFS
     ▪ #zoneadm -z newZoneName install -x nodataset -d /tmp/os.tgz

   ◦ if no archive path is given then default is Disc Drive, but if you are
     installing from Disc Drive, you need to install VOLFS like:
     ▪ #svcadm enable svc:/system/filesystem/volfs:default
     ▪ #svcs | grep volfs

   ◦ If its installed without any error, just check its status using
     ▪ #zoneadm list -cv

   ◦ it should show a listing for currently created zone like newZoneName
     installed /export/home/zones/newZoneName native shared


 Using the installed Zone
  ◦ Now either make it ready to boot, or directly boot which will make it
     ready itself
     ▪ #zoneadm -z newZoneName ready
        • It should show a listing for currently created zone like
           ◦ newZoneName         ready     /export/home/zones/newZoneName
               native shared
           ◦ #zoneadm -z newZoneName boot

   ◦ It should show a listing for currently created zone like
     ▪ newZoneName running /export/home/zones/newZoneName
         native shared

   ◦ To login
     ▪ #zlogin newZoneName
     ▪ Now you are inside the Zone, running 'uname -a' should present you
        with newZoneName
◦ To login into Zone Console like remote connect
    ▪ #zlogin -C newZoneName

  ◦ To exit the zone
    ▪ #exit

  ◦ To halt the zone simply use
    ▪ #zoneadm -z newZoneName halt

  ◦ it should show a listing for currently created zone like
    ▪ newZoneName running /export/home/zones/newZoneName
        native shared

  ◦ To reboot the zone simply use
    ▪ #zoneadm -z newZoneName reboot

  ◦ To uninstall the zone
    ▪ #zoneadm -z newZoneName uninstall -F


           (b.) Mirroring an existing CentOS Box over a Zone

 There are two ways to achieve this
  ◦ TarBall the entire distro you want to port to Zone and use that TarBall to
    install the Zone.

  ◦ Suppose, you already have an lx-branded zone and use the same. Then
    you need to use utility like RSync to Sync the files from Source Machine
    to lx-Zone.

 You can also add packages like svn, gcc, make, netsnmp, openssl,
  CoolStack's ( apache2, mysql, php, perl, python, ruby, squid) to lx-zone and
  they work great over Zone.



                (c.) Setting up SVN service over a Zone

 Users connect to svn mirror servers, the WebDAV SVN module serves
  content from the local system, and sends commits to the main server. Then
  main server pushes commit to mirrors using 'svnsync' over a protected link
  only writable by main server.
  ◦ Install Collabnet SVN client & server binaries {available at
'http://www.collab.net/downloads/subversion/solaris.html'}

    ◦ Create a symlink collabnet modules a
      ▪ #ln     -s    /opt/CollabNet_Subversion/modules/mod_dav_svn.so
         /etc/httpd/modules/mod_dav_svn.so
      ▪ #
         ln   -s   /opt/CollabNet_Subversion/modules/mod_authz_svn.so
         /etc/httpd/modules/mod_authz_svn.so

    ◦ Add below lines to 'httpd.conf' under Apache2 directory as
      ▪ LoadModule dav_svn_module /etc/httpd/modules/mod_dav_svn.so
       LoadModule authz_svn_module /etc/httpd/modules/mod_authz_svn.so
       <Location /someproject>
       DAV svn
       SVNPath /repos/svn/repos/someproject
       AuthzSVNAccessFile /repos/svn/access/someproject/svn_access.conf
       AuthType Basic
       AuthName "Active Directory LDAP Authentication"
       AuthBasicProvider ldap
       AuthzLDAPAuthoritative off
       AuthLDAPBindDN user@adserver.thoughtworks.com
       AuthLDAPBindPassword somePassword
       AuthLDAPURL "ldap://adserver.company.com:389/ou=Principal,dc=
dcString1,dc=dcStrin2?SAMAccountName?sub?(&(objectClass=user))"
       require vaild-user
       SVNPathAuthz off
       </Location>

    ◦ Reload httpd service
    ◦
    ◦ Add following lines to '/repos/svn/access/someproject/svn_access.conf'
      ▪ can_write_group=aduserA, aduserB,aduserC
         read_only_group=aduserD,aduserE,aduserF
         no_access_group=aduserG,aduserH,aduserJ
         [repository:/]
         @can_write_group=rw
         @read_only_group=r
         @no_access_group=

    ◦ Create a repository as follows:
      ▪ svnadmin create /repos/svn/repos/someproject
      ▪ change permissions as follows
      ▪ chmod -R g+w /repos/svn/repos/someproject
      ▪ chown -R apache.apache /repos/svn/repos/someproject

    ◦ Similarly, you can setup mirror server with the configuration given at
      Link Above.
(d.) Setting CIFS over a Zone

 Initial reading disclosed its not possible over local zones, only global zone
  could support CIFS.

 So just did practical with setting up SAMBA server on Solaris Zones;
  implemented SWAT (Samba Web Admin Tool) for easy configuration.
  ◦ for Solaris 10, SAMBA came up real easy to configure
     ▪ #svcs samba wins swat
     ▪ #svcadm enable samba
     ▪ #svcadm enable wins
     ▪ #svcadm enable swat

   ◦ Simply browsing http://samba_Zone_IPaddress:901/ presents with a nice
     SWAT GUI to configure SAMBA service on that zone.
     To get start with, you need to
     ▪ > select 'Shares', add new share with proper configuration
     ▪ > select 'Users', to add Users
     ▪ > Restart Services from UI itself
     ▪ > now try accessing this share from Windows as normal
        Windows Share using User created




                        ::Tools/Technology Used::

 Solaris Zones: http://www.solarisinternals.com/wiki/index.php/Zones
 CoolStack Software Bundles: {now superseded by WebStack} ~
  http://hub.opensolaris.org/bin/view/Project+webstack/sunwebstack
 Rsync: http://en.wikipedia.org/wiki/Rsync
 SVN: http://subversion.apache.org/
 Apache: http://www.apache.org/
 CIFS: http://msdn.microsoft.com/en-us/library/aa302188.aspx
 Samba: http://www.samba.org/
 SWAT: http://linux.die.net/man/8/swat



                                ::Inference::

 Solaris Zones is a highly under-used and over-capable technology.
 Due to its minimal overhead architecture on Virtualization, its the best
  option according to me for Virtualization of Linux Boxes.

 There is still a great scope left to be developed in this technology.



                       ::Troubleshooting/Updates::

 Problem: The Apache mod_dav and mod_dav_svn module was failing to
  integrate with SVN implementation.
  Solution:
  Initially I was using CoolStack's Software Bundle of Apache+PHP+MySQL
  due to ease of use on Native-Small Zone, but found out that actually it's
  implementation raised the incompatibility issue. So, created a Native Big-
  Zone and used standard Apache release, and it worked.

More Related Content

What's hot

Failsafe Mechanism for Yahoo Homepage
Failsafe Mechanism for Yahoo HomepageFailsafe Mechanism for Yahoo Homepage
Failsafe Mechanism for Yahoo Homepage
Kit Chan
 
Docker advance topic
Docker advance topicDocker advance topic
Docker advance topic
Kalkey
 
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, DockerUnder the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Docker, Inc.
 
Installation Openstack Swift
Installation Openstack SwiftInstallation Openstack Swift
Installation Openstack Swift
ymtech
 
What’s new in Swarm 1.1
What’s new in Swarm 1.1What’s new in Swarm 1.1
What’s new in Swarm 1.1
k z
 
Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay Networks
Laurent Bernaille
 
Docker advance1
Docker advance1Docker advance1
Docker advance1
Gourav Varma
 
Docking postgres
Docking postgresDocking postgres
Docking postgres
rycamor
 
Docker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode IntroductionDocker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode Introduction
Phi Huynh
 
Deep Dive in Docker Overlay Networks
Deep Dive in Docker Overlay NetworksDeep Dive in Docker Overlay Networks
Deep Dive in Docker Overlay Networks
Laurent Bernaille
 
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Running High Performance & Fault-tolerant Elasticsearch Clusters on DockerRunning High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Sematext Group, Inc.
 
Introductory Overview to Managing AWS with Terraform
Introductory Overview to Managing AWS with TerraformIntroductory Overview to Managing AWS with Terraform
Introductory Overview to Managing AWS with Terraform
Michael Heyns
 
JDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
JDO 2019: Container orchestration with Docker Swarm - Jakub HajekJDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
JDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
PROIDEA
 
New Docker Features for Orchestration and Containers
New Docker Features for Orchestration and ContainersNew Docker Features for Orchestration and Containers
New Docker Features for Orchestration and Containers
Jeff Anderson
 
Docker up and running
Docker up and runningDocker up and running
Docker up and running
Victor S. Recio
 
Automating complex infrastructures with Puppet
Automating complex infrastructures with PuppetAutomating complex infrastructures with Puppet
Automating complex infrastructures with Puppet
Kris Buytaert
 
Automated Java Deployments With Rpm
Automated Java Deployments With RpmAutomated Java Deployments With Rpm
Automated Java Deployments With Rpm
Martin Jackson
 
Percona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replicationPercona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replication
mysqlops
 
Deeper dive in Docker Overlay Networks
Deeper dive in Docker Overlay NetworksDeeper dive in Docker Overlay Networks
Deeper dive in Docker Overlay Networks
Laurent Bernaille
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & Ansible
Robert Reiz
 

What's hot (20)

Failsafe Mechanism for Yahoo Homepage
Failsafe Mechanism for Yahoo HomepageFailsafe Mechanism for Yahoo Homepage
Failsafe Mechanism for Yahoo Homepage
 
Docker advance topic
Docker advance topicDocker advance topic
Docker advance topic
 
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, DockerUnder the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
 
Installation Openstack Swift
Installation Openstack SwiftInstallation Openstack Swift
Installation Openstack Swift
 
What’s new in Swarm 1.1
What’s new in Swarm 1.1What’s new in Swarm 1.1
What’s new in Swarm 1.1
 
Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay Networks
 
Docker advance1
Docker advance1Docker advance1
Docker advance1
 
Docking postgres
Docking postgresDocking postgres
Docking postgres
 
Docker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode IntroductionDocker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode Introduction
 
Deep Dive in Docker Overlay Networks
Deep Dive in Docker Overlay NetworksDeep Dive in Docker Overlay Networks
Deep Dive in Docker Overlay Networks
 
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Running High Performance & Fault-tolerant Elasticsearch Clusters on DockerRunning High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker
 
Introductory Overview to Managing AWS with Terraform
Introductory Overview to Managing AWS with TerraformIntroductory Overview to Managing AWS with Terraform
Introductory Overview to Managing AWS with Terraform
 
JDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
JDO 2019: Container orchestration with Docker Swarm - Jakub HajekJDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
JDO 2019: Container orchestration with Docker Swarm - Jakub Hajek
 
New Docker Features for Orchestration and Containers
New Docker Features for Orchestration and ContainersNew Docker Features for Orchestration and Containers
New Docker Features for Orchestration and Containers
 
Docker up and running
Docker up and runningDocker up and running
Docker up and running
 
Automating complex infrastructures with Puppet
Automating complex infrastructures with PuppetAutomating complex infrastructures with Puppet
Automating complex infrastructures with Puppet
 
Automated Java Deployments With Rpm
Automated Java Deployments With RpmAutomated Java Deployments With Rpm
Automated Java Deployments With Rpm
 
Percona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replicationPercona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replication
 
Deeper dive in Docker Overlay Networks
Deeper dive in Docker Overlay NetworksDeeper dive in Docker Overlay Networks
Deeper dive in Docker Overlay Networks
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & Ansible
 

Viewers also liked

Wlan
WlanWlan
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1
Д. Ганаа
 
Syslog Centralization Logging with Windows ~ A techXpress Guide
Syslog Centralization Logging with Windows ~ A techXpress GuideSyslog Centralization Logging with Windows ~ A techXpress Guide
Syslog Centralization Logging with Windows ~ A techXpress Guide
Abhishek Kumar
 
Insecurity-In-Security version.2 (2011)
Insecurity-In-Security version.2 (2011)Insecurity-In-Security version.2 (2011)
Insecurity-In-Security version.2 (2011)
Abhishek Kumar
 
Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)
Abhishek Kumar
 
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress GuideEthernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
Abhishek Kumar
 
DevOps with Sec-ops
DevOps with Sec-opsDevOps with Sec-ops
DevOps with Sec-ops
Abhishek Kumar
 

Viewers also liked (7)

Wlan
WlanWlan
Wlan
 
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1
 
Syslog Centralization Logging with Windows ~ A techXpress Guide
Syslog Centralization Logging with Windows ~ A techXpress GuideSyslog Centralization Logging with Windows ~ A techXpress Guide
Syslog Centralization Logging with Windows ~ A techXpress Guide
 
Insecurity-In-Security version.2 (2011)
Insecurity-In-Security version.2 (2011)Insecurity-In-Security version.2 (2011)
Insecurity-In-Security version.2 (2011)
 
Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)
 
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress GuideEthernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
Ethernet Bonding for Multiple NICs on Linux ~ A techXpress Guide
 
DevOps with Sec-ops
DevOps with Sec-opsDevOps with Sec-ops
DevOps with Sec-ops
 

Similar to Solaris Zones (native & lxbranded) ~ A techXpress Guide

An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring
Abhishek Kumar
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
Kasun Gajasinghe
 
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
Osama Mustafa
 
MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017
Antonios Giannopoulos
 
MongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster TutorialMongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster Tutorial
Jason Terpko
 
Sharded cluster tutorial
Sharded cluster tutorialSharded cluster tutorial
Sharded cluster tutorial
Antonios Giannopoulos
 
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
Alessandro Arrichiello
 
Terraform Cosmos DB
Terraform Cosmos DBTerraform Cosmos DB
Terraform Cosmos DB
Moisés Elías Araya
 
Docker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in PragueDocker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in Prague
tomasbart
 
Docker container management
Docker container managementDocker container management
Docker container management
Karol Kreft
 
Add and configure lu ns in solaris
Add and configure lu ns in solarisAdd and configure lu ns in solaris
Add and configure lu ns in solaris
Amrita Dey
 
Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)
Ben Hall
 
Oracle goldengate and RAC12c
Oracle goldengate and RAC12cOracle goldengate and RAC12c
Oracle goldengate and RAC12c
Siraj Ahmed
 
Ubic-public
Ubic-publicUbic-public
Ubic
UbicUbic
OpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage DayOpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage Day
Dan Radez
 
The age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster managementThe age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster management
Nicola Paolucci
 
Start tracking your ruby infrastructure
Start tracking your ruby infrastructureStart tracking your ruby infrastructure
Start tracking your ruby infrastructure
Sergiy Kukunin
 
Real World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and ProductionReal World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and Production
Ben Hall
 

Similar to Solaris Zones (native & lxbranded) ~ A techXpress Guide (20)

An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
 
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
Step by Step to Install oracle grid 11.2.0.3 on solaris 11.1
 
MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017
 
MongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster TutorialMongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster Tutorial
 
Sharded cluster tutorial
Sharded cluster tutorialSharded cluster tutorial
Sharded cluster tutorial
 
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
 
Terraform Cosmos DB
Terraform Cosmos DBTerraform Cosmos DB
Terraform Cosmos DB
 
Docker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in PragueDocker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in Prague
 
Docker container management
Docker container managementDocker container management
Docker container management
 
Add and configure lu ns in solaris
Add and configure lu ns in solarisAdd and configure lu ns in solaris
Add and configure lu ns in solaris
 
Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)
 
Oracle goldengate and RAC12c
Oracle goldengate and RAC12cOracle goldengate and RAC12c
Oracle goldengate and RAC12c
 
Ubic-public
Ubic-publicUbic-public
Ubic-public
 
Ubic
UbicUbic
Ubic
 
OpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage DayOpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage Day
 
The age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster managementThe age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster management
 
Start tracking your ruby infrastructure
Start tracking your ruby infrastructureStart tracking your ruby infrastructure
Start tracking your ruby infrastructure
 
Real World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and ProductionReal World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and Production
 

More from Abhishek Kumar

DevOps?!@
DevOps?!@DevOps?!@
DevOps?!@
Abhishek Kumar
 
xml-motor ~ What,Why,How
xml-motor ~ What,Why,Howxml-motor ~ What,Why,How
xml-motor ~ What,Why,How
Abhishek Kumar
 
XML-Motor
XML-MotorXML-Motor
XML-Motor
Abhishek Kumar
 
Squid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
Squid for Load-Balancing & Cache-Proxy ~ A techXpress GuideSquid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
Squid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
Abhishek Kumar
 
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidthAn Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
Abhishek Kumar
 
An Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
An Express Guide ~ Cacti for IT Infrastructure Monitoring & GraphingAn Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
An Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
Abhishek Kumar
 
An Express Guide ~ SNMP for Secure Rremote Resource Monitoring
An Express Guide ~ SNMP for Secure Rremote Resource MonitoringAn Express Guide ~ SNMP for Secure Rremote Resource Monitoring
An Express Guide ~ SNMP for Secure Rremote Resource Monitoring
Abhishek Kumar
 
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
Abhishek Kumar
 
XSS Defeating Concept - Part 2
XSS Defeating Concept - Part 2XSS Defeating Concept - Part 2
XSS Defeating Concept - Part 2
Abhishek Kumar
 
XSS Defeating Trick ~=ABK=~ WhitePaper
XSS Defeating Trick ~=ABK=~ WhitePaperXSS Defeating Trick ~=ABK=~ WhitePaper
XSS Defeating Trick ~=ABK=~ WhitePaper
Abhishek Kumar
 
FreeSWITCH on RedHat, Fedora, CentOS
FreeSWITCH on RedHat, Fedora, CentOSFreeSWITCH on RedHat, Fedora, CentOS
FreeSWITCH on RedHat, Fedora, CentOS
Abhishek Kumar
 

More from Abhishek Kumar (11)

DevOps?!@
DevOps?!@DevOps?!@
DevOps?!@
 
xml-motor ~ What,Why,How
xml-motor ~ What,Why,Howxml-motor ~ What,Why,How
xml-motor ~ What,Why,How
 
XML-Motor
XML-MotorXML-Motor
XML-Motor
 
Squid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
Squid for Load-Balancing & Cache-Proxy ~ A techXpress GuideSquid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
Squid for Load-Balancing & Cache-Proxy ~ A techXpress Guide
 
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidthAn Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
An Express Guide ~ "dummynet" for tweaking network latencies & bandwidth
 
An Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
An Express Guide ~ Cacti for IT Infrastructure Monitoring & GraphingAn Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
An Express Guide ~ Cacti for IT Infrastructure Monitoring & Graphing
 
An Express Guide ~ SNMP for Secure Rremote Resource Monitoring
An Express Guide ~ SNMP for Secure Rremote Resource MonitoringAn Express Guide ~ SNMP for Secure Rremote Resource Monitoring
An Express Guide ~ SNMP for Secure Rremote Resource Monitoring
 
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
Presentation on "XSS Defeating Concept in (secure)SiteHoster" : 'nullcon-2011'
 
XSS Defeating Concept - Part 2
XSS Defeating Concept - Part 2XSS Defeating Concept - Part 2
XSS Defeating Concept - Part 2
 
XSS Defeating Trick ~=ABK=~ WhitePaper
XSS Defeating Trick ~=ABK=~ WhitePaperXSS Defeating Trick ~=ABK=~ WhitePaper
XSS Defeating Trick ~=ABK=~ WhitePaper
 
FreeSWITCH on RedHat, Fedora, CentOS
FreeSWITCH on RedHat, Fedora, CentOSFreeSWITCH on RedHat, Fedora, CentOS
FreeSWITCH on RedHat, Fedora, CentOS
 

Recently uploaded

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 

Recently uploaded (20)

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 

Solaris Zones (native & lxbranded) ~ A techXpress Guide

  • 1. Express-Guide ~to~ Basic Setup of Solaris Zones Native Zones & lx-Branded Zones by, ABK ~ http://www.twitter.com/aBionic ::Task Detail::  Creating/Managing Solaris Zones  mirroring an existing CentOS Box over a Zone  setting up SVN service over a Zone  setting CIFS over a Zone ::Background:: Solaris Zones are a part of Solaris Container Technology. Zones manage the namespace isolation for containers implementing virtualization. In Solaris 10, containers are zone using Resource Management Feature via Solaris Resource Manager. There is no performance overhead to this approach. Resources are used as a 'Dynamic resource Pool' managed between containers using a 'Fair Share Scheduler'. Broadly there are two types of zones:  Native Zone These are basic stripped down native Solaris O.S. Instances. Native zones are further of two types where ◦ 'Small Zones' (also known as Sparse Root Zone) have several system directories shared with Solaris O.S. or Global Zone in non-writable mode ◦ 'Big Zones' (also known as Whole Root Zone) have all independent directories  lx-Branded Zone these are zones installed from installer of O.S., currently only linux branded zones are available also called lx-zones.
  • 2. ::Execution Method:: (a.) Creating native {small,big} and lx-branded zones  Setting up Resource Pool to be used by zones ◦ Enabling Resource Pool features ▪ #pooladm -e ◦ Saving current resource pool ▪ #pooladm -s ◦ List current Pools ▪ #pooladm ▪ {generally only 'pool_default' is present on fresh zone} ◦ Configuring 'default_pool' to enable Fair Share Scheduler over it ▪ #poolcfg -c 'modify pool pool_default (string pool.scheduler="FSS")' ▪ #pooladm –c ◦ Priority Controller moving all processes and resources under Fair Share Scheduler ▪ #priocntl -s -c FSS -i class TS ▪ #priocntl -s -c FSS -i pid 1  Configuring a Solaris Zone ◦ This lists the current zones ▪ #zoneadm list -cv ◦ Configuring a new Native Zone ▪ registering a new Zone • #zonecfg -z newZoneName ◦ regarding 3 different types of zones follow respective command ▪ for creating a native small-zone {with shared directories} • zonecfg:newZoneName>create ▪ for creating a native big-zone {with independent directories} • zonecfg:newZoneName>create -b ▪ for creating a lx-branded zone • zonecfg:lxZoneName>create -t SUNWlx
  • 3. ◦ assigning it a location on HDD to be installed ▪ zonecfg:newZoneName>set zonepath=/export/home/zones/newZoneName ◦ Adding a Network Interface Resource to it ▪ zonecfg:newZoneName>add net ▪ zonecfg:newZoneName:net>set address=192.168.16.61 ▪ zonecfg:newZoneName:net>set physical=eth0 ▪ zonecfg:newZoneName:net>end ◦ Assign a Resource Pool (should be already existing) to it ▪ zonecfg:newZoneName>set pool=pool_default ◦ Adding a resource controller to this Zone ▪ zonecfg:newZoneName>add rctl ▪ zonecfg:newZoneName:rctl>set name=zone.cpu-shares ▪ zonecfg:newZoneName:rctl> add value (priv=privileged,limit=1,action=none) ▪ zonecfg:newZoneName:rctl>end ◦ Giving a CD-ROM access (required if installing lx-zone from ISO or CD) ▪ zonecfg:newZoneName>add fs ▪ zonecfg:newZoneName:fs>set dir=/cdrom ▪ zonecfg:newZoneName:fs>set special=/cdrom ▪ zonecfg:newZoneName:fs>set typr=lofs ▪ zonecfg:newZoneName>set options=[nodevices] ▪ zonecfg:newZoneName>end ◦ Verify, Save and Exit ▪ zonecfg:newZoneName>verify ▪ zonecfg:newZoneName>commit ▪ zonecfg:newZoneName>exit ◦ Creating the HDD location for Zone ▪ #mkdir -p /export/home/zones/newZoneName ◦ Granting required permissions to location ▪ #chmod 700 /export/home/zones/newZoneName ◦ Confirming the registration of Zone Configuration ▪ #zoneadm list -cv
  • 4. ◦ It should show a listing for currently created zone like ▪ newZoneName configured at /export/home/zones/newZoneName, it is native and shared (small-zone)  Installing the already configured zone ◦ Installing the zone if it's a Native {small or big} zone ▪ #zoneadm -z newZoneName install ◦ if it's a lx-brand zone with O.S. TarBall, automatically creating ZFS ▪ #zoneadm -z newZoneName install -d /tmp/os.tgz ◦ if it's a lx-branded zone with O.S. TarBall, not creating ZFS ▪ #zoneadm -z newZoneName install -x nodataset -d /tmp/os.tgz ◦ if no archive path is given then default is Disc Drive, but if you are installing from Disc Drive, you need to install VOLFS like: ▪ #svcadm enable svc:/system/filesystem/volfs:default ▪ #svcs | grep volfs ◦ If its installed without any error, just check its status using ▪ #zoneadm list -cv ◦ it should show a listing for currently created zone like newZoneName installed /export/home/zones/newZoneName native shared  Using the installed Zone ◦ Now either make it ready to boot, or directly boot which will make it ready itself ▪ #zoneadm -z newZoneName ready • It should show a listing for currently created zone like ◦ newZoneName ready /export/home/zones/newZoneName native shared ◦ #zoneadm -z newZoneName boot ◦ It should show a listing for currently created zone like ▪ newZoneName running /export/home/zones/newZoneName native shared ◦ To login ▪ #zlogin newZoneName ▪ Now you are inside the Zone, running 'uname -a' should present you with newZoneName
  • 5. ◦ To login into Zone Console like remote connect ▪ #zlogin -C newZoneName ◦ To exit the zone ▪ #exit ◦ To halt the zone simply use ▪ #zoneadm -z newZoneName halt ◦ it should show a listing for currently created zone like ▪ newZoneName running /export/home/zones/newZoneName native shared ◦ To reboot the zone simply use ▪ #zoneadm -z newZoneName reboot ◦ To uninstall the zone ▪ #zoneadm -z newZoneName uninstall -F (b.) Mirroring an existing CentOS Box over a Zone  There are two ways to achieve this ◦ TarBall the entire distro you want to port to Zone and use that TarBall to install the Zone. ◦ Suppose, you already have an lx-branded zone and use the same. Then you need to use utility like RSync to Sync the files from Source Machine to lx-Zone.  You can also add packages like svn, gcc, make, netsnmp, openssl, CoolStack's ( apache2, mysql, php, perl, python, ruby, squid) to lx-zone and they work great over Zone. (c.) Setting up SVN service over a Zone  Users connect to svn mirror servers, the WebDAV SVN module serves content from the local system, and sends commits to the main server. Then main server pushes commit to mirrors using 'svnsync' over a protected link only writable by main server. ◦ Install Collabnet SVN client & server binaries {available at
  • 6. 'http://www.collab.net/downloads/subversion/solaris.html'} ◦ Create a symlink collabnet modules a ▪ #ln -s /opt/CollabNet_Subversion/modules/mod_dav_svn.so /etc/httpd/modules/mod_dav_svn.so ▪ # ln -s /opt/CollabNet_Subversion/modules/mod_authz_svn.so /etc/httpd/modules/mod_authz_svn.so ◦ Add below lines to 'httpd.conf' under Apache2 directory as ▪ LoadModule dav_svn_module /etc/httpd/modules/mod_dav_svn.so LoadModule authz_svn_module /etc/httpd/modules/mod_authz_svn.so <Location /someproject> DAV svn SVNPath /repos/svn/repos/someproject AuthzSVNAccessFile /repos/svn/access/someproject/svn_access.conf AuthType Basic AuthName "Active Directory LDAP Authentication" AuthBasicProvider ldap AuthzLDAPAuthoritative off AuthLDAPBindDN user@adserver.thoughtworks.com AuthLDAPBindPassword somePassword AuthLDAPURL "ldap://adserver.company.com:389/ou=Principal,dc= dcString1,dc=dcStrin2?SAMAccountName?sub?(&(objectClass=user))" require vaild-user SVNPathAuthz off </Location> ◦ Reload httpd service ◦ ◦ Add following lines to '/repos/svn/access/someproject/svn_access.conf' ▪ can_write_group=aduserA, aduserB,aduserC read_only_group=aduserD,aduserE,aduserF no_access_group=aduserG,aduserH,aduserJ [repository:/] @can_write_group=rw @read_only_group=r @no_access_group= ◦ Create a repository as follows: ▪ svnadmin create /repos/svn/repos/someproject ▪ change permissions as follows ▪ chmod -R g+w /repos/svn/repos/someproject ▪ chown -R apache.apache /repos/svn/repos/someproject ◦ Similarly, you can setup mirror server with the configuration given at Link Above.
  • 7. (d.) Setting CIFS over a Zone  Initial reading disclosed its not possible over local zones, only global zone could support CIFS.  So just did practical with setting up SAMBA server on Solaris Zones; implemented SWAT (Samba Web Admin Tool) for easy configuration. ◦ for Solaris 10, SAMBA came up real easy to configure ▪ #svcs samba wins swat ▪ #svcadm enable samba ▪ #svcadm enable wins ▪ #svcadm enable swat ◦ Simply browsing http://samba_Zone_IPaddress:901/ presents with a nice SWAT GUI to configure SAMBA service on that zone. To get start with, you need to ▪ > select 'Shares', add new share with proper configuration ▪ > select 'Users', to add Users ▪ > Restart Services from UI itself ▪ > now try accessing this share from Windows as normal Windows Share using User created ::Tools/Technology Used::  Solaris Zones: http://www.solarisinternals.com/wiki/index.php/Zones  CoolStack Software Bundles: {now superseded by WebStack} ~ http://hub.opensolaris.org/bin/view/Project+webstack/sunwebstack  Rsync: http://en.wikipedia.org/wiki/Rsync  SVN: http://subversion.apache.org/  Apache: http://www.apache.org/  CIFS: http://msdn.microsoft.com/en-us/library/aa302188.aspx  Samba: http://www.samba.org/  SWAT: http://linux.die.net/man/8/swat ::Inference::  Solaris Zones is a highly under-used and over-capable technology.
  • 8.  Due to its minimal overhead architecture on Virtualization, its the best option according to me for Virtualization of Linux Boxes.  There is still a great scope left to be developed in this technology. ::Troubleshooting/Updates::  Problem: The Apache mod_dav and mod_dav_svn module was failing to integrate with SVN implementation. Solution: Initially I was using CoolStack's Software Bundle of Apache+PHP+MySQL due to ease of use on Native-Small Zone, but found out that actually it's implementation raised the incompatibility issue. So, created a Native Big- Zone and used standard Apache release, and it worked.