vania-janet/multiturn-rag-retrieval-data huggingface dataset:
Instead, you must define these labels in the spec.selector.matchLabels and spec.template.metadata.labels section of your stateful set YAML. To make sure that all your stateful set replicas are into the load balancing of your service, include the same label that you used in the spec.selector section of your service YAML.

labels
: In the spec metadata labels section, enter the same labels that you added to the spec.selector.matchLabels section of your stateful set YAML.

terminationGracePeriodSeconds
: Enter the number of seconds to give the kubelet to safely terminate the pod that runs your stateful set replica. For more information, see [Delete Pods](https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/delete-pods).

VolumeClaimTemplates.name
: In the spec volume claim templates metadata section, enter a name for your volume. Use the same name that you defined in the spec.containers.volumeMount.name section. The name that you enter here is used to create the name for your PVC in the format: <volume_name>-<statefulset_name>-<replica_number>.

ibm.io/auto-create-bucket
: In the spec volume claim templates metadata section, set an annotation to configure how buckets are created. Choose between the following options:



* true: Choose this option to automatically create a bucket for each stateful set replica. Note that the service credentials must have Writer permissions to automatically create the bucket.
* false: Choose this option if you want to share an existing bucket across your stateful set replicas. Make sure to define the name of the bucket in the spec.volumeClaimTemplates.metadata.annotions.ibm.io/bucket section of your stateful set YAML.



ibm.io/auto-delete-bucket
: In the spec volume claim templates metadata section, set an annotation to configure how buckets are deleted. Choose between the following options:
Instead of specifying the region and zone in the PVC, you can also specify these values in a [customized storage class](https://cloud.ibm.com/docs/openshift?topic=openshift-file_storagefile_multizone_yaml). Then, use your storage class in the metadata.annotations.volume.beta.kubernetes.io/storage-class section of your PVC. If the region and zone are specified in the storage class and the PVC, the values in the PVC take precedence.

accessMode
: Specify one of the following options.



* ReadWriteMany: The PVC can be mounted by multiple pods. All pods can read from and write to the volume.
* ReadOnlyMany: The PVC can be mounted by multiple pods. All pods have read-only access.
* ReadWriteOnce: The PVC can be mounted by one pod only. This pod can read from and write to the volume.



storage
: Enter the size of the File Storage for Classic, in gigabytes (Gi). After your storage is provisioned, you can't change the size of your File Storage for Classic. Make sure to specify a size that matches the amount of data that you want to store.

iops
: This option is available for the custom storage classes only (ibmc-file-custom / ibmc-file-retain-custom). Specify the total IOPS for the storage, selecting a multiple of 100 within the allowable range. If you choose an IOPS other than one that is listed, the IOPS is rounded up.

storageClassName
: The name of the storage class that you want to use to provision File Storage for Classic. You can choose to use one of the [IBM-provided storage classes](https://cloud.ibm.com/docs/openshift?topic=openshift-file_storagefile_storageclass_reference) or [create your own storage class](https://cloud.ibm.com/docs/openshift?topic=openshift-file_storagefile_custom_storageclass).
Now proceed with the same instructions that are listed in steps 3 and 4 [profile vx2d-16x224](https://cloud.ibm.com/docs/sap?topic=sap-hana-iaas-offerings-profiles-intel-vs-vpcvx2d-16x224).







 ux2d-36x1008 and ux2d-48x1344 



1. Create the volume groups for LVM. /hana/log and /hana/data are assigned to the LVM.

[root@ux2d-36x1008 ] pvcreate /dev/vde /dev/vdf
[root@ux2d-36x1008 ] pvcreate /dev/vdg /dev/vdh /dev/vdi
[root@ux2d-36x1008 ] vgcreate hana_data_vg /dev/vdg /dev/vdh /dev/vdi
[root@ux2d-36x1008 ] vgcreate hana_log_vg /dev/vdg /dev/vdh /dev/vdi
2. After the volume groups are created, two logical volumes need to be defined on top. These logical volumes reflect the file system size requirements for SAP HANA.

[root@ux2d-36x1008 ] lvcreate -i 2 -I 64 -l 100%VG -n hana_data_lv hana_data_vg
[root@ux2d-36x1008 ] lvcreate -i 3 -I 64 -l 100%VG -n hana_log_lv hana_log_vg
3. Now proceed with the same instructions that are listed in steps 3 and 4 [profile vx2d-16x224](https://cloud.ibm.com/docs/sap?topic=sap-hana-iaas-offerings-profiles-intel-vs-vpcvx2d-16x224).







 ux2d-72x2016, ux2d-100x2800, and ux2d-200x5600 



1.
* [sysstat](https://github.com/sysstat/sysstat/blob/master/README.md) - System performance tools for the Linux® operating system.
* [typeperf](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/typeperf) - Windows® command that writes performance data to the command window or to a log file.
* [esxtop](https://communities.vmware.com/t5/Storage-Performance/Interpreting-esxtop-Statistics/ta-p/2776936) - A command-line tool that gives administrators real-time information about resource usage in a VMware® vSphere environment. It can monitor and collect data for all system resources: CPU, memory, disk, and network.



* What is the difference between a replica volume, a dependent and an independent duplicate volume?

You can create a replica or a duplicate volume by using a snapshot of your volume. Replication and cloning use one of your snapshots to copy data to a destination volume. However, that is where the similarities end.

Replication keeps your data in sync in two different locations. Only one of the volume pair (primary volume and replica volume) can be active at a time. The replication process automatically copies information from the active volume to the inactive volume based on the replication schedule. For more information about replica volumes, see [Replicating data](https://cloud.ibm.com/docs/FileStorage?topic=FileStorage-replication).

Duplication creates a copy of your volume based on a snapshot in the same availability zone as the parent volume. The duplicate volume inherits the capacity and performance options of the original volume by default and has a copy of the data up to the point-in-time of a snapshot. The duplicate volume can be dependent or independent from the original volume, and it can be manually refreshed with data from the parent volume. You can adjust the IOPS or increase the volume size of the duplicate without any effect on the parent volume.
savevg –f /home/admin01/datavg_bkup –i datavg





 Backing up multiple volume groups by using the mkvgdata and restvg commands 

Small systems might require only one data volume group to contain all the physical volumes. For a non-root user you might want to create separate volume groups, for security reasons, because each volume group can have its own security permissions. If a volume group stops working, other volume groups remain active. Hence, separate volume groups are easier to maintain.

Run the following commands to back up multiple volume groups:

 lsvg -o | xargs -i mkvgdata {}
 tar -cvf /backup/vgdata.tar /tmp/vgdata

To generate an output file that contains information about the volume group, run the mkvgdata command for each online volume group to generate the output file. This output file is located in the /tmp/vgdata directory. You can compress and store this output file in the /backup file system directory as shown in the following example. This output file contains information about all volume groups, logical volumes, and file systems that can be used as a single image. This image can be transferred or stored within an mksysb backup image if the /backup directory is located on the root volume group.

Run the following command to re-create the volume groups, logical volumes, and file systems:

 tar -xvf /backup/vgdata.tar

Now edit the /tmp/vgdata/{volume group name}/{volume group name}.data file and look for the line with VG_SOURCE_DISK_LIST=. Change the line to have hdisks, vpaths, or hdiskpowers based on your requirement.

For example:

 restvg -r -d /tmp/vgdata/{volume group name}/{volume group name}.data





 Migrating raw partitions by using the dd command 

The output file of the savevg command can be restored by using the restvg command.
IBM Cloud File Storage for Classic plug-in 338 342 The File Storage for Classic plug-in is updated as follows:<br><br><br><br> * Supports dynamic provisioning with [volume topology-aware scheduling](https://cloud.ibm.com/docs/containers?topic=containers-file_storagefile-topology).<br> * Ignores persistent volume claim (PVC) delete errors if the storage is already deleted.<br> * Adds a failure message annotation to failed PVCs.<br> * Optimizes the storage provisioner controller's leader election and resync period settings, and increases the provisioning timeout from 30 minutes to 1 hour.<br> * Checks user permissions before starting the provisioning.<br><br><br> 
 Key Management Service provider 111 122 Added retry logic to avoid temporary failures when Kubernetes secrets are managed by IBM Key Protect for IBM Cloud. 
 Kubernetes v1.12.4 v1.12.5 See the [Kubernetes release notes](https://github.com/kubernetes/kubernetes/releases/tag/v1.12.5). 
 Kubernetes configuration N/A N/A The Kubernetes API server audit policy configuration is updated to include logging metadata for cluster-admin requests and logging the request body of workload create, update, and patch requests. 
 OpenVPN client 2.4.6-r3-IKS-8 2.4.6-r3-IKS-13 Updated image for [CVE-2018-0734](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0734) and [CVE-2018-5407](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5407). Additionally, the pod configuration is now obtained from a secret instead of from a ConfigMap.
"id": "d8b26921-1409-4c2f-9b46-39b5b6e0b945"
}
}'

A successful response indicates that the volume is attached.

{
"created_at": "2021-04-21T16:35:47.000Z",
"delete_volume_on_instance_delete": true,
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5/volume_attachments/9f2a645e-19c1-4f8f-b062-46b9e0671999",
"id": "9f2a645e-19c1-4f8f-b062-46b9e0671999",
"name": "my-volume-attachment-data-5iops",
"status": "attached",
"type": "data",
"volume": {
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/d8b26921-1409-4c2f-9b46-39b5b6e0b945",
"id": "d8b26921-1409-4c2f-9b46-39b5b6e0b945",
"name": "my-volume-data-5iops"
}
}







 Next steps 

Create more volumes and manage existing ones. See the following information.



* [Creating Block Storage for VPC volumes](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-block-storage)
SAP HANA in scale-out configuration requires a shared volume for its /hana/shared file system, and a /hana/log and /hana/data volume for each node. Follow the [mount option recommendation by NetApp](https://docs.netapp.com/us-en/netapp-solutions-sap/bp/saphana_aff_nfs_introduction.html) for setting up your target OS' fstab. See the following sample for an SAP HANA system of system ID 'BHB':



1. /hana/shared

fsf-tok0551b-fz.adn.networklayer.com:/903586db_f968_4bf7_bbd5_0926fb7a26ce /hana/shared/BHB nfs sec=sys,rw,vers=4,minorversion=1,hard,timeo=600,rsize=65536,wsize=65536,intr,noatime,lock 0 0
2. /hana/data

fsf-tok0551a-fz.adn.networklayer.com:/2b33d3df_9081_47c2_910a_a29356716d51/BHB/mnt00001 /hana/data/BHB/mnt00001 nfs sec=sys,rw,vers=4,minorversion=1,hard,timeo=600,rsize=65536,wsize=65536,intr,noatime,lock 0 0
fsf-tok0551b-fz.adn.networklayer.com:/ec39996c_346a_4815_a74f_4048382e6ecc/BHB/mnt00002 /hana/data/BHB/mnt00002 nfs sec=sys,rw,vers=4,minorversion=1,hard,timeo=600,rsize=65536,wsize=65536,intr,noatime,lock 0 0
3. /hana/log
name: cluster-info
volumeClaimTemplates: []
- apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
storageclass.beta.kubernetes.io/is-default-class: "true"
version: 2.0.3_354
labels:
addonmanager.kubernetes.io/mode: Reconcile
app: ibm-vpc-block-csi-driver
razee/force-apply: "true"
name: ibmc-vpc-block-10iops-tier
parameters:
billingType: hourly
classVersion: "1"
csi.storage.k8s.io/fstype: ext4
encrypted: "false"
encryptionKey: ""
profile: 10iops-tier
region: ""
resourceGroup: ""
sizeRange: '[10-2000]GiB'
tags: ""
zone: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
- apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
version: 2.0.3_354
labels:
addonmanager.kubernetes.io/mode: Reconcile
app: ibm-vpc-block-csi-driver
razee/force-apply: "true"
name: ibmc-vpc-block-5iops-tier
parameters:
billingType: hourly
classVersion: "1"
csi.storage.k8s.io/fstype: ext4
encrypted: "false"
encryptionKey: ""
profile: 5iops-tier
region: ""
resourceGroup: ""
sizeRange: '[10-2000]GiB'
tags: ""
zone: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
- mountPath: /etc/udev
name: etcudevpath
- mountPath: /run/udev
name: runudevpath
- mountPath: /lib/udev
name: libudevpath
- mountPath: /sys
name: syspath
- mountPath: /etc/storage_ibmc
name: customer-auth
readOnly: true
- mountPath: /etc/storage_ibmc/cluster_info
name: cluster-info
readOnly: true
serviceAccountName: ibm-vpc-block-node-sa
volumes:
- hostPath:
path: /var/lib/kubelet/plugins_registry/
type: Directory
name: registration-dir
- hostPath:
path: /var/lib/kubelet
type: Directory
name: kubelet-data-dir
- hostPath:
path: /var/lib/kubelet/csi-plugins/vpc.block.csi.ibm.io/
type: DirectoryOrCreate
name: plugin-dir
- hostPath:
path: /dev
type: Directory
name: device-dir
- hostPath:
path: /etc/udev
type: Directory
name: etcudevpath
- hostPath:
path: /run/udev
type: Directory
name: runudevpath
- hostPath:
path: /lib/udev
type: Directory
name: libudevpath
- hostPath:
path: /sys
type: Directory
name: syspath
- name: customer-auth
secret:
secretName: storage-secret-store
- configMap:
name: cluster-info
name: cluster-info
- apiVersion: apps/v1
kind: StatefulSet
metadata:
annotations:
version: 2.0.2_285
labels:
Create a data volume with a request similar to this example. This procedure shows the volume profiles, crreates a volume, saves the volume ID in a variable, checks the status of the volume, and then creates the volume attachment.

Show a list of volume profiles:

curl -X GET "$vpc_api_endpoint/v1/volumes/profiles?version=$api_version&generation=2" -H "Authorization: $iam_token"

Profiles can be general-purpose (3 IOPS/GB), 5iops-tier, 10-iops-tier, and custom. See [Profiles](https://cloud.ibm.com/docs/vpc?topic=vpc-block-storage-profilesblock-storage-profiles) for information about volume capacity and IOPS ranges based on the volume profile you select.

Create the data volume:

curl -X POST "$vpc_api_endpoint/v1/volumes?version=$api_version&generation=2" -H "Authorization: $iam_token" -d '{
"name": "my-volume",
"iops": 1000,
"capacity": 100,
"zone": {
"name": "us-south-3"
},
"profile": {
"name": "custom"
}
}'

Save the ID of the volume in a variable:

volume_id="0738-640774d7-2adc-4609-add9-6dfd96167a8f"

The status of the volume is pending when it first is created. Before you can proceed, the volume needs to move to available status, which takes a few minutes.

Check the status of the volume:

curl -X GET "$vpc_api_endpoint/v1/volumes/$volume_id?version=$api_version&generation=2" -H "Authorization: $iam_token"

Create a volume attachment to attach the new data volume to the virtual server instance. Use the instance ID variable that you created earlier in the request. Use the volume ID variable to specify the volume.
"primary_ipv4_address": "10.0.0.32",
"resource_type": "network_interface",
"subnet": {
"crn": "crn:[...]",
"id": "bea6a632-5e13-42a4-b4b8-31dc877abfe4",
"name": "my-subnet",
"resource_type": "subnet"
}
},
"profile": {
"name": "bx2-2x8"
},
"resource_type": "instance",
"vcpu": {
"architecture": "amd64",
"count": 2
},
"volume_attachments": [
{
"id": "a8a15363-a6f7-4f01-af60-715e85b28141",
"name": "my-boot-volume-attachment",
"volume": {
"crn": "crn:...]",
"id": "49c5d61b-41e7-4c01-9b7a-1a97366c6916",
"name": "my-boot-volume"
}
},
{
"id": "e77125cb-4df0-4988-a878-531ae0ae0b70",
"name": "my-volume-attachment-1",
"volume": {
"crn": "crn:...]",
"id": "2cc091f5-4d46-48f3-99b7-3527ae3f4392",
"name": "my-data-volume"
}
}
],
"vpc": {
serviceAccountName: ibm-vpc-block-controller-sa
volumes:
- emptyDir: {}
name: socket-dir
- name: customer-auth
secret:
secretName: storage-secret-store
- configMap:
name: cluster-info
name: cluster-info
volumeClaimTemplates: []
- apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
storageclass.beta.kubernetes.io/is-default-class: "true"
version: 2.0.2_285
labels:
addonmanager.kubernetes.io/mode: Reconcile
app: ibm-vpc-block-csi-driver
razee/force-apply: "true"
name: ibmc-vpc-block-10iops-tier
parameters:
billingType: hourly
classVersion: "1"
csi.storage.k8s.io/fstype: ext4
encrypted: "false"
encryptionKey: ""
profile: 10iops-tier
region: ""
resourceGroup: ""
sizeRange: '[10-2000]GiB'
tags: ""
zone: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
- apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
version: 2.0.2_285
labels:
addonmanager.kubernetes.io/mode: Reconcile
app: ibm-vpc-block-csi-driver
razee/force-apply: "true"
name: ibmc-vpc-block-5iops-tier
parameters:
billingType: hourly
classVersion: "1"
csi.storage.k8s.io/fstype: ext4
encrypted: "false"
encryptionKey: ""
"isDependentDuplicateFlag": 1,
"prices": {"id": 15751}, {"id": 19487}, {"id": 18983}, {"id": 15749}, {"id":10407}],
"quantity": 1,
"iops":454,
"osFormatType":{
"keyName": "LINUX"
},
"location": 2,
"volumeSize":23
}]
}



For more information about the API and the options, see the [API Reference](https://sldn.softlayer.com/reference/softlayerapi/).





 Managing your duplicate volume 

All duplicate volumes can be accessed by a host for read and write operations as soon as the volume is provisioned.

However, snapshots and replication of independent duplicate volumes aren't allowed until the data copy from the original to the duplicate is complete and the duplicate volume is fully independent. Depending on the size of the data, the separation process can take several hours. When it's complete, the duplicate can be managed and used as an independent volume.

While data is being copied from the original volume to the independent duplicate, you can see that the status indicator on the details page shows the duplication is in progress. During this time, you can attach to a host, and read and write to the volume, but you can't create snapshot schedules or initiate a refresh. When the separation process is complete, the new volume is independent from the original, and can be managed with snapshots and replication as normal. After the conversion is complete, the independent volume can be manually refreshed by using a snapshot from the parent volume.

Dependent duplicates do not go through the separation process and can be refreshed manually at any time. The refresh process can be initiated from the CLI, with the API and in the UI. Later, if you want to convert the dependent duplicate into an independent volume, you can initiate that process by using the UI, the CLI, or the API, too.
IBM Cloud File Storage for Classic plug-in 338 342 The file storage plug-in is updated as follows:<br><br><br><br> * Supports dynamic provisioning with [volume topology-aware scheduling](https://cloud.ibm.com/docs/containers?topic=containers-file_storagefile-topology).<br> * Ignores persistent volume claim (PVC) delete errors if the storage is already deleted.<br> * Adds a failure message annotation to failed PVCs.<br> * Optimizes the storage provisioner controller's leader election and resync period settings, and increases the provisioning timeout from 30 minutes to 1 hour.<br> * Checks user permissions before starting the provisioning.<br><br><br> 
 Key Management Service provider 111 122 Added retry logic to avoid temporary failures when Kubernetes secrets are managed by IBM Key Protect for IBM Cloud. 
 Kubernetes configuration N/A N/A The Kubernetes API server audit policy configuration is updated to include logging metadata for cluster-admin requests and logging the request body of workload create, update, and patch requests. 
 OpenVPN client 2.4.6-r3-IKS-8 2.4.6-r3-IKS-13 Updated image for [CVE-2018-0734](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0734) and [CVE-2018-5407](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5407). Additionally, the pod configuration is now obtained from a secret instead of from a ConfigMap.
[Review the File Storage for Classic troubleshooting documentation for steps to resolve common errors](https://cloud.ibm.com/docs/containers?topic=containers-cs_sitemapsitemap_file_storage).







 Checking whether your PVC is successfully provisioned. 

Follow the steps to check the status of your PVC and review any error messages.



1. Check the status of your PVC. A PVC is successfully provisioned if the PVC shows a status of Bound.

kubectl get pvc



* If the PVC shows a status of Bound, the PVC is successfully provisioned.

Example output

NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
silver-pvc Bound pvc-4b881a6b-ada8-4a44-b568-fe909107d756 24Gi RWX ibmc-file-silver 7m29s
* If the status of the PVC shows Pending, describe the PVC and review the Events section of the output for any warnings or error messages. Note that PVCs that reference storage classes with the volume binding mode set to WaitForFirstConsumer remain Pending until an app pod is deployed that uses the PVC.

kubectl describe pvc <pvc_name>

Example output

Name: local-pvc
Namespace: default
StorageClass: sat-local-file-gold
Status: Pending
Volume:
Labels: <none>
Annotations: <none>
Finalizers: [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode: Filesystem
Mounted By: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning ProvisioningFailed 60s (x42 over 11m) persistentvolume-controller storageclass.storage.k8s.io "sat-local-file-gold" not found



2.
"id": "9f2a645e-19c1-4f8f-b062-46b9e0671999",
"name": "my-volume-attachment-data-5iops-updated",
"status": "attached",
"type": "data",
"volume": {
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/d8b26921-1409-4c2f-9b46-39b5b6e0b945",
"id": "d8b26921-1409-4c2f-9b46-39b5b6e0b945",
"name": "my-volume-data-5iops"
}
}





 Detaching a volume with the API 

Make a DELETE /instances request and specify the volume attachment ID to delete a volume attachment. Deleting a volume attachment detaches a volume from an instance.

DELETE /instances/{instance_id}/volume_attachments/{id}

curl -X DELETE "$vpc_api_endpoint/v1/instances/$instance_id/volume_attachments/$volume_attachment_id?version=2022-04-22&generation=2" -H "Authorization: $iam_token"

Verify that the volume is detached from the instance by making a GET /instances/{instance_id} call.





 Applying user tags that are associated with a backup policy to a volume with the API 

To add user tags to a volume, you first make a GET /volumes/{volume_id} call and copy the hash string from Etag property in the response header. You then use the hash string when you specify If-Match in a PATCH /volumes/{volume_id} request to create new user tags.