SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Cinder – Block Storage
Couch To OpenStack
- git clone https://github.com/bunchc/Couch_to_OpenStack.git
- cd Couch_to_OpenStack
- vagrant up
Build Time!
- Subscribe & Recordings: http://bit.ly/BrownbagPodcast
- Sign up for the rest of the series:
http://openstack.prov12n.com/about-couch-to-openstack/
Some Logistics
On Twitter: #vBrownBag
Also: @VMTrooper, @JFrappier
Join the conversation
- New Edition: http://www.packtpub.com/openstack-cloud-
computing-cookbook-second-edition/book
- Old Edition: http://amzn.to/12eI6rX
Buy the Book
7/2/2013 – Intro to OpenStack
7/9/2013 – Vagrant Primer
7/16/2013 – Identity services (Keystone)
7/23/2013 – Image services (Glance)
7/30/2013 – Compute Services (Nova)
8/6/2013 – Block Storage / Volume Services (Cinder) << We Are Here
8/13/2013 – Networking Services (Neutron fka Quantum)
8/20/2013 – Monitoring & Troubleshooting
8/27/2013 – HA OpenStack
9/3/2013 – DevOps Deployments
Note: Dates are subject to change depending on how far we get in each lesson.
The Rest of the Series
Use the automated Nova Install and manually install
Cinder
Remember we have a G+ Support group here:
http://bit.ly/C2OSGooglePlus
Homework Review
- Block Storage for Cloud Instances over iSCSI
- Originally part of Nova as nova-volume. Now, a
separate project.
- Cinder Volumes are presented as /dev/vd* in Linux
Instances and as a new Volume to Storage Manager in
Windows Instances.
- Mount and format them like normal disks.
Cinder Intro
- Creates the Controller, Compute, and Cinder (Block)
Nodes
- Sets variables required for Cinder deployment
- Creates a Cinder Service and Endpoint in Keystone
- Updates MySQL
- Creates a Cinder DB
- Assigns the Cinder User to the DB
- Installs Cinder
- Configures Cinder settings
Build – What’s it doing?
Cinder Architecture
- http://docs.openstack.org/grizzly/basic-
install/apt/content/basic-install_controller.html#basic-
install_controller-cinder
- http://docs.openstack.org/grizzly/openstack-
compute/install/apt/content/cinder-install.html
Concepts – Reference
- vagrant ssh controller
- sudo su -
- cat .stackrc
- export OS_TENANT_NAME=cookbook
- export OS_USERNAME=admin
- export OS_PASSWORD=openstack
- export OS_AUTH_URL=http://${MY_IP}:5000/v2.0/
- source /vagrant/.stackrc
Using Cinder!
- keystone service-list
+----------------------------------+----------+----------+----------------------------+
| id | name | type | description |
+----------------------------------+----------+----------+----------------------------+
| 3e5e37bd90394e01b981daef86c10dab | ec2 | ec2 | EC2 Service |
| 07409443890b4d7da1ae35686332b2c3 | glance | image | OpenStack Image Service |
| e8fcf639a36147de8b9894db072268b6 | keystone | identity | OpenStack Identity Service |
| c9c4ffc41c184c82bfa9e501a35977f7 | nova | compute | OpenStack Compute Service |
| ec098d41c68b4278b3e68418dfd08dac | volume | volume | Volume Service |
+----------------------------------+----------+----------+----------------------------+
- keystone service-get <UUID>
+-------------+----------------------------------+
| Property | Value |
+-------------+----------------------------------+
| description | Volume Service |
| id | ec098d41c68b4278b3e68418dfd08dac |
| name | volume |
| type | volume |
+-------------+----------------------------------+
Verify Cinder Service
- cinder-manage host list
host zone
cinder.book nova
Verify Cinder Nodes
Cinder Component Functions
Component Purpose
cinder-api Interact with users and other OpenStack services
cinder-scheduler Determine which Cinder node to present storage from
cinder-volume* Block Storage Server
tgtd* A Linux iSCSI target. Not an OpenStack Component, but
important for test environments.
- Private Network for OpenStack Compute instances internally:
nova-manage network create privateNet --fixed_range_v4=10.10.<3rd Octet>.2/24 
--network_size=20 --bridge_interface=eth2
- Assign a floating (Public) IP address for users to access to the Instance:
nova-manage floating create --ip_range=172.16.<3rd Octet>.1/28
- Create a keypair using Nova Client with the following commands:
nova keypair-add demo > /vagrant/demo.pem
chmod 0600 /vagrant/*.pem
- Nova Security Rules to enable ping and ssh to our Instances:
nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
- Fix nova-network on the Compute Node
killall dnsmasq
sudo stop nova-network
sudo start nova-network
- Deploy an Ubuntu Image
nova boot myInstance --image <get UUID from nova image-list> --flavor 2 --key_name demo
Configure a Nova Instance
- Verify the source LVM Volume (cinder-volumes) was created
pvscan
PV /dev/sda5 VG precise64 lvm2 [79.76 GiB / 0 free]
PV /dev/loop2 VG cinder-volumes lvm2 [5.00 GiB / 5.00 GiB free]
Total: 2 [84.75 GiB] / in use: 2 [84.75 GiB] / in no VG: 0 [0 ]
- Create the Cinder volume that we will present to the VM
cinder create --display-name c2OS 1
- Verify the volume was created
cinder list
lvdisplay cinder-volumes
nova volume-list (command only works on the Nova or Controller Nodes)
Create the Cinder Volume
Use the Cinder Volume
- Attach the Volume to the Instance
nova volume-attach <instance_uuid> <volume_uuid> /dev/vdc
- Login to the Instance
ssh -i /vagrant/demo.pem ubuntu@<instance IP>
- Format and mount the volume
fdisk -l
sudo mkfs.ext4 /dev/vd<substitute correct letter>
sudo mkdir /mnt1
sudo mount /dev/vdb /mnt1
df -h
Monitor /var/log/nova/nova-compute.log
2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Command: sudo nova-rootwrap
/etc/nova/rootwrap.conf iscsiadm -m node -T iqn.2010-10.org.openstack:volume-bd31eb87-5eda-
4171-946c-326c0318d837 -p 10.0.2.15:3260 --rescan
2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Exit code: 255
2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Stdout: ''
2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Stderr: 'iscsiadm: No portal
found.n'
Volume Attach Troubleshoot
For next week’s session, we will add another node to the deployment: Quantum (Neutron)
Networking.
We will need perform a few extra actions than we have done for the previous sessions:
1. Edit the Vagrantfile to generate an additional server give it the name “quantum”
2. The additional server that we create should have its own shell script file with its
hostname as the filename (ex: quantum.sh).
3. The controller.sh will need to be extended to create a quantum database, an endpoint,
service, etc. Also, the nova.conf file will need to be extended to use Quantum for Network
Services
4. Post ideas, questions, comments on the Google Plus Community: http://bit.ly/C2OSGooglePlus
Homework!

Weitere ähnliche Inhalte

Was ist angesagt?

Openstack Study Nova 1
Openstack Study Nova 1Openstack Study Nova 1
Openstack Study Nova 1Jinho Shin
 
OSv at Cassandra Summit
OSv at Cassandra SummitOSv at Cassandra Summit
OSv at Cassandra SummitDon Marti
 
Running Docker with OpenStack | Docker workshop #1
Running Docker with OpenStack | Docker workshop #1Running Docker with OpenStack | Docker workshop #1
Running Docker with OpenStack | Docker workshop #1dotCloud
 
ILM - Pipeline in the cloud
ILM - Pipeline in the cloudILM - Pipeline in the cloud
ILM - Pipeline in the cloudAaron Carey
 
reInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewreInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewFaheem Memon
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker, Inc.
 
Openstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability IssueOpenstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability IssueVigneshvar A.S
 
Kubernetes on CloudStack with coreOS
Kubernetes on CloudStack with coreOSKubernetes on CloudStack with coreOS
Kubernetes on CloudStack with coreOSSebastien Goasguen
 
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...Atlassian
 
Kube-AWS
Kube-AWSKube-AWS
Kube-AWSCoreOS
 
Painless ruby deployment on shelly cloud
Painless ruby deployment on shelly cloudPainless ruby deployment on shelly cloud
Painless ruby deployment on shelly cloudGiedrius Rimkus
 
How to operate containerized OpenStack
How to operate containerized OpenStackHow to operate containerized OpenStack
How to operate containerized OpenStackNalee Jang
 
Wanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-dockerWanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-dockerEwout Prangsma
 
Consuming Cinder from Docker
Consuming Cinder from DockerConsuming Cinder from Docker
Consuming Cinder from DockerJohn Griffith
 
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupKubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupStefan Schimanski
 
Introction to docker swarm
Introction to docker swarmIntroction to docker swarm
Introction to docker swarmHsi-Kai Wang
 
Cinder Status Openstack Shanghai
Cinder Status Openstack ShanghaiCinder Status Openstack Shanghai
Cinder Status Openstack ShanghaiOpenCity Community
 
Storage as a service and OpenStack Cinder
Storage as a service and OpenStack CinderStorage as a service and OpenStack Cinder
Storage as a service and OpenStack Cinderopenstackindia
 

Was ist angesagt? (20)

Openstack Study Nova 1
Openstack Study Nova 1Openstack Study Nova 1
Openstack Study Nova 1
 
OSv at Cassandra Summit
OSv at Cassandra SummitOSv at Cassandra Summit
OSv at Cassandra Summit
 
Running Docker with OpenStack | Docker workshop #1
Running Docker with OpenStack | Docker workshop #1Running Docker with OpenStack | Docker workshop #1
Running Docker with OpenStack | Docker workshop #1
 
Docker swarm
Docker swarmDocker swarm
Docker swarm
 
ILM - Pipeline in the cloud
ILM - Pipeline in the cloudILM - Pipeline in the cloud
ILM - Pipeline in the cloud
 
reInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewreInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s review
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0
 
Openstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability IssueOpenstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability Issue
 
Kubernetes on CloudStack with coreOS
Kubernetes on CloudStack with coreOSKubernetes on CloudStack with coreOS
Kubernetes on CloudStack with coreOS
 
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
 
Kube-AWS
Kube-AWSKube-AWS
Kube-AWS
 
Painless ruby deployment on shelly cloud
Painless ruby deployment on shelly cloudPainless ruby deployment on shelly cloud
Painless ruby deployment on shelly cloud
 
How to operate containerized OpenStack
How to operate containerized OpenStackHow to operate containerized OpenStack
How to operate containerized OpenStack
 
Wanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-dockerWanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-docker
 
OpenStack Storage Overview
OpenStack Storage OverviewOpenStack Storage Overview
OpenStack Storage Overview
 
Consuming Cinder from Docker
Consuming Cinder from DockerConsuming Cinder from Docker
Consuming Cinder from Docker
 
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupKubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
 
Introction to docker swarm
Introction to docker swarmIntroction to docker swarm
Introction to docker swarm
 
Cinder Status Openstack Shanghai
Cinder Status Openstack ShanghaiCinder Status Openstack Shanghai
Cinder Status Openstack Shanghai
 
Storage as a service and OpenStack Cinder
Storage as a service and OpenStack CinderStorage as a service and OpenStack Cinder
Storage as a service and OpenStack Cinder
 

Andere mochten auch

Introduction to OpenStack Cinder
Introduction to OpenStack CinderIntroduction to OpenStack Cinder
Introduction to OpenStack CinderSean McGinnis
 
OpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseOpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseAvishay Traeger
 
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...Guston Remie
 
Openstack Denver Meetup - Intro to Block Storage
Openstack Denver Meetup - Intro to Block StorageOpenstack Denver Meetup - Intro to Block Storage
Openstack Denver Meetup - Intro to Block StorageJohn Griffith
 
OpenStack State of Fibre Channel
OpenStack State of Fibre ChannelOpenStack State of Fibre Channel
OpenStack State of Fibre Channelhemna6969
 
OpenStack Contribution Workflow
OpenStack Contribution WorkflowOpenStack Contribution Workflow
OpenStack Contribution WorkflowSean McGinnis
 
Filesystem as a service in OpenStack
Filesystem as a service in OpenStackFilesystem as a service in OpenStack
Filesystem as a service in OpenStackopenstackindia
 
Laying OpenStack Cinder Block Services
Laying OpenStack Cinder Block ServicesLaying OpenStack Cinder Block Services
Laying OpenStack Cinder Block ServicesKenneth Hui
 
Storage as a service OpenStack
Storage as a service OpenStackStorage as a service OpenStack
Storage as a service OpenStackopenstackindia
 
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...Cloud Native Day Tel Aviv
 
Presentazione PureStorage @ VMUGIT UserCon 2015
Presentazione PureStorage @ VMUGIT UserCon 2015Presentazione PureStorage @ VMUGIT UserCon 2015
Presentazione PureStorage @ VMUGIT UserCon 2015VMUG IT
 
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatDeep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatCloud Native Day Tel Aviv
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack ArchitectureMirantis
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Stephen Gordon
 

Andere mochten auch (16)

OpenStack Cinder
OpenStack CinderOpenStack Cinder
OpenStack Cinder
 
Introduction to OpenStack Cinder
Introduction to OpenStack CinderIntroduction to OpenStack Cinder
Introduction to OpenStack Cinder
 
OpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseOpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana Release
 
Avishay trager cinder-grizzly-deep-dive
Avishay trager   cinder-grizzly-deep-diveAvishay trager   cinder-grizzly-deep-dive
Avishay trager cinder-grizzly-deep-dive
 
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...
OpenStack Benelux Conference 2014 | Deep Dive | Alain Clark | OpenStack Found...
 
Openstack Denver Meetup - Intro to Block Storage
Openstack Denver Meetup - Intro to Block StorageOpenstack Denver Meetup - Intro to Block Storage
Openstack Denver Meetup - Intro to Block Storage
 
OpenStack State of Fibre Channel
OpenStack State of Fibre ChannelOpenStack State of Fibre Channel
OpenStack State of Fibre Channel
 
OpenStack Contribution Workflow
OpenStack Contribution WorkflowOpenStack Contribution Workflow
OpenStack Contribution Workflow
 
Filesystem as a service in OpenStack
Filesystem as a service in OpenStackFilesystem as a service in OpenStack
Filesystem as a service in OpenStack
 
Laying OpenStack Cinder Block Services
Laying OpenStack Cinder Block ServicesLaying OpenStack Cinder Block Services
Laying OpenStack Cinder Block Services
 
Storage as a service OpenStack
Storage as a service OpenStackStorage as a service OpenStack
Storage as a service OpenStack
 
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...
Avishay Traeger & Shimshon Zimmerman, Stratoscale - Deploying OpenStack Cinde...
 
Presentazione PureStorage @ VMUGIT UserCon 2015
Presentazione PureStorage @ VMUGIT UserCon 2015Presentazione PureStorage @ VMUGIT UserCon 2015
Presentazione PureStorage @ VMUGIT UserCon 2015
 
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatDeep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack Architecture
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
 

Ähnlich wie Cinder Block Storage for Cloud Instances

Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean Winn
Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean WinnCouch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean Winn
Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean WinnTrevor Roberts Jr.
 
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker ContainersDockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker ContainersDocker, Inc.
 
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)Boden Russell
 
Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)DongHyeon Kim
 
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...Puppet
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법Open Source Consulting
 
Scaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceScaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceBen Hall
 
Performance characteristics of traditional v ms vs docker containers (dockerc...
Performance characteristics of traditional v ms vs docker containers (dockerc...Performance characteristics of traditional v ms vs docker containers (dockerc...
Performance characteristics of traditional v ms vs docker containers (dockerc...Boden Russell
 
Docker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingDocker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingOpen Source Consulting
 
Open stack pike-devstack-tutorial
Open stack pike-devstack-tutorialOpen stack pike-devstack-tutorial
Open stack pike-devstack-tutorialEueung Mulyana
 
OpenStack API's and WSGI
OpenStack API's and WSGIOpenStack API's and WSGI
OpenStack API's and WSGIMike Pittaro
 
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 Praguetomasbart
 
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案inwin stack
 
OpenStack Magnum 2016-08-04
OpenStack Magnum 2016-08-04OpenStack Magnum 2016-08-04
OpenStack Magnum 2016-08-04Adrian Otto
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila
 
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03Mathias Herberts
 

Ähnlich wie Cinder Block Storage for Cloud Instances (20)

Couch to open_stack_keystone
Couch to open_stack_keystoneCouch to open_stack_keystone
Couch to open_stack_keystone
 
Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean Winn
Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean WinnCouch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean Winn
Couch to OpenStack: Neutron (Quantum) - August 13, 2013 Featuring Sean Winn
 
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker ContainersDockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
 
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
 
Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)
 
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...
How Puppet Enables the Use of Lightweight Virtualized Containers - PuppetConf...
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
Scaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceScaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container Service
 
Performance characteristics of traditional v ms vs docker containers (dockerc...
Performance characteristics of traditional v ms vs docker containers (dockerc...Performance characteristics of traditional v ms vs docker containers (dockerc...
Performance characteristics of traditional v ms vs docker containers (dockerc...
 
One-Man Ops
One-Man OpsOne-Man Ops
One-Man Ops
 
Docker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingDocker on openstack by OpenSource Consulting
Docker on openstack by OpenSource Consulting
 
vBACD - Introduction to Opscode Chef - 2/29
vBACD - Introduction to Opscode Chef - 2/29vBACD - Introduction to Opscode Chef - 2/29
vBACD - Introduction to Opscode Chef - 2/29
 
Open stack pike-devstack-tutorial
Open stack pike-devstack-tutorialOpen stack pike-devstack-tutorial
Open stack pike-devstack-tutorial
 
OpenStack API's and WSGI
OpenStack API's and WSGIOpenStack API's and WSGI
OpenStack API's and WSGI
 
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
 
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案
整合Cloud Foundry 和 Kubernetes 技術打造企業級雲應用平台解決方案
 
OpenStack Magnum 2016-08-04
OpenStack Magnum 2016-08-04OpenStack Magnum 2016-08-04
OpenStack Magnum 2016-08-04
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)
 
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03
Warp 10 Platform Presentation - Criteo Beer & Tech 2016-02-03
 
kubernetes practice
kubernetes practicekubernetes practice
kubernetes practice
 

Kürzlich hochgeladen

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Kürzlich hochgeladen (20)

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

Cinder Block Storage for Cloud Instances

  • 1. Cinder – Block Storage Couch To OpenStack
  • 2. - git clone https://github.com/bunchc/Couch_to_OpenStack.git - cd Couch_to_OpenStack - vagrant up Build Time!
  • 3. - Subscribe & Recordings: http://bit.ly/BrownbagPodcast - Sign up for the rest of the series: http://openstack.prov12n.com/about-couch-to-openstack/ Some Logistics
  • 4. On Twitter: #vBrownBag Also: @VMTrooper, @JFrappier Join the conversation
  • 5. - New Edition: http://www.packtpub.com/openstack-cloud- computing-cookbook-second-edition/book - Old Edition: http://amzn.to/12eI6rX Buy the Book
  • 6. 7/2/2013 – Intro to OpenStack 7/9/2013 – Vagrant Primer 7/16/2013 – Identity services (Keystone) 7/23/2013 – Image services (Glance) 7/30/2013 – Compute Services (Nova) 8/6/2013 – Block Storage / Volume Services (Cinder) << We Are Here 8/13/2013 – Networking Services (Neutron fka Quantum) 8/20/2013 – Monitoring & Troubleshooting 8/27/2013 – HA OpenStack 9/3/2013 – DevOps Deployments Note: Dates are subject to change depending on how far we get in each lesson. The Rest of the Series
  • 7. Use the automated Nova Install and manually install Cinder Remember we have a G+ Support group here: http://bit.ly/C2OSGooglePlus Homework Review
  • 8. - Block Storage for Cloud Instances over iSCSI - Originally part of Nova as nova-volume. Now, a separate project. - Cinder Volumes are presented as /dev/vd* in Linux Instances and as a new Volume to Storage Manager in Windows Instances. - Mount and format them like normal disks. Cinder Intro
  • 9. - Creates the Controller, Compute, and Cinder (Block) Nodes - Sets variables required for Cinder deployment - Creates a Cinder Service and Endpoint in Keystone - Updates MySQL - Creates a Cinder DB - Assigns the Cinder User to the DB - Installs Cinder - Configures Cinder settings Build – What’s it doing?
  • 12. - vagrant ssh controller - sudo su - - cat .stackrc - export OS_TENANT_NAME=cookbook - export OS_USERNAME=admin - export OS_PASSWORD=openstack - export OS_AUTH_URL=http://${MY_IP}:5000/v2.0/ - source /vagrant/.stackrc Using Cinder!
  • 13. - keystone service-list +----------------------------------+----------+----------+----------------------------+ | id | name | type | description | +----------------------------------+----------+----------+----------------------------+ | 3e5e37bd90394e01b981daef86c10dab | ec2 | ec2 | EC2 Service | | 07409443890b4d7da1ae35686332b2c3 | glance | image | OpenStack Image Service | | e8fcf639a36147de8b9894db072268b6 | keystone | identity | OpenStack Identity Service | | c9c4ffc41c184c82bfa9e501a35977f7 | nova | compute | OpenStack Compute Service | | ec098d41c68b4278b3e68418dfd08dac | volume | volume | Volume Service | +----------------------------------+----------+----------+----------------------------+ - keystone service-get <UUID> +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Volume Service | | id | ec098d41c68b4278b3e68418dfd08dac | | name | volume | | type | volume | +-------------+----------------------------------+ Verify Cinder Service
  • 14. - cinder-manage host list host zone cinder.book nova Verify Cinder Nodes
  • 15. Cinder Component Functions Component Purpose cinder-api Interact with users and other OpenStack services cinder-scheduler Determine which Cinder node to present storage from cinder-volume* Block Storage Server tgtd* A Linux iSCSI target. Not an OpenStack Component, but important for test environments.
  • 16. - Private Network for OpenStack Compute instances internally: nova-manage network create privateNet --fixed_range_v4=10.10.<3rd Octet>.2/24 --network_size=20 --bridge_interface=eth2 - Assign a floating (Public) IP address for users to access to the Instance: nova-manage floating create --ip_range=172.16.<3rd Octet>.1/28 - Create a keypair using Nova Client with the following commands: nova keypair-add demo > /vagrant/demo.pem chmod 0600 /vagrant/*.pem - Nova Security Rules to enable ping and ssh to our Instances: nova secgroup-add-rule default tcp 22 22 0.0.0.0/0 nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0 - Fix nova-network on the Compute Node killall dnsmasq sudo stop nova-network sudo start nova-network - Deploy an Ubuntu Image nova boot myInstance --image <get UUID from nova image-list> --flavor 2 --key_name demo Configure a Nova Instance
  • 17. - Verify the source LVM Volume (cinder-volumes) was created pvscan PV /dev/sda5 VG precise64 lvm2 [79.76 GiB / 0 free] PV /dev/loop2 VG cinder-volumes lvm2 [5.00 GiB / 5.00 GiB free] Total: 2 [84.75 GiB] / in use: 2 [84.75 GiB] / in no VG: 0 [0 ] - Create the Cinder volume that we will present to the VM cinder create --display-name c2OS 1 - Verify the volume was created cinder list lvdisplay cinder-volumes nova volume-list (command only works on the Nova or Controller Nodes) Create the Cinder Volume
  • 18. Use the Cinder Volume - Attach the Volume to the Instance nova volume-attach <instance_uuid> <volume_uuid> /dev/vdc - Login to the Instance ssh -i /vagrant/demo.pem ubuntu@<instance IP> - Format and mount the volume fdisk -l sudo mkfs.ext4 /dev/vd<substitute correct letter> sudo mkdir /mnt1 sudo mount /dev/vdb /mnt1 df -h
  • 19. Monitor /var/log/nova/nova-compute.log 2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Command: sudo nova-rootwrap /etc/nova/rootwrap.conf iscsiadm -m node -T iqn.2010-10.org.openstack:volume-bd31eb87-5eda- 4171-946c-326c0318d837 -p 10.0.2.15:3260 --rescan 2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Exit code: 255 2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Stdout: '' 2013-08-01 04:56:56.324 9369 TRACE nova.openstack.common.rpc.amqp Stderr: 'iscsiadm: No portal found.n' Volume Attach Troubleshoot
  • 20. For next week’s session, we will add another node to the deployment: Quantum (Neutron) Networking. We will need perform a few extra actions than we have done for the previous sessions: 1. Edit the Vagrantfile to generate an additional server give it the name “quantum” 2. The additional server that we create should have its own shell script file with its hostname as the filename (ex: quantum.sh). 3. The controller.sh will need to be extended to create a quantum database, an endpoint, service, etc. Also, the nova.conf file will need to be extended to use Quantum for Network Services 4. Post ideas, questions, comments on the Google Plus Community: http://bit.ly/C2OSGooglePlus Homework!

Hinweis der Redaktion

  1. If you see the following after deploying your Instance:root@compute:~# ps -ef | grep dns107 4450 1 0 14:31 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.confroot 6003 5897 0 19:17 pts/3 00:00:00 grep --color=auto dnsMay need to do the following:killalldnsmasqservice nova-network restartroot@compute:~# ps -ef | grepdnsnobody 6259 1 0 19:22 ? 00:00:00 /usr/sbin/dnsmasq --strict-order --bind-interfaces --conf-file= --pid-file=/var/lib/nova/networks/nova-br100.pid --listen-address=10.10.139.1 --except-interface=lo --dhcp-range=set:privateNet,10.10.139.3,static,255.255.255.224,120s --dhcp-lease-max=32 --dhcp-hostsfile=/var/lib/nova/networks/nova-br100.conf --dhcp-script=/usr/bin/nova-dhcpbridge --leasefile-ro --domain=novalocalroot 6260 6259 0 19:22 ? 00:00:00 /usr/sbin/dnsmasq --strict-order --bind-interfaces --conf-file= --pid-file=/var/lib/nova/networks/nova-br100.pid --listen-address=10.10.139.1 --except-interface=lo --dhcp-range=set:privateNet,10.10.139.3,static,255.255.255.224,120s --dhcp-lease-max=32 --dhcp-hostsfile=/var/lib/nova/networks/nova-br100.conf --dhcp-script=/usr/bin/nova-dhcpbridge --leasefile-ro --domain=novalocalroot 6775 5897 0 19:26 pts/3 00:00:00 grep --color=auto dns