openapi: 3.1.0 info: title: Solaris Zones Oracle Solaris Kernel Zones Archive Creation Kernel Zone Configuration API description: REST API for creating and managing Oracle Solaris Kernel Zones via the RAD zonemgr module. Kernel Zones (brand solaris-kz) are non-global zones with their own kernel, providing greater independence and enhanced security isolation compared to native zones. They support live migration, independent patching, and hardware-assisted virtualization. version: '1.6' contact: name: Oracle Solaris Support url: https://www.oracle.com/solaris/support/ email: solaris-support@oracle.com license: name: Oracle Technology Network License url: https://www.oracle.com/legal/terms.html servers: - url: https://{host}:{port}/api/com.oracle.solaris.rad.zonemgr/1.6 description: Oracle Solaris RAD REST endpoint variables: host: default: localhost description: Solaris host running RAD port: default: '6788' description: RAD REST API port security: - cookieAuth: [] tags: - name: Kernel Zone Configuration description: Configure kernel zone resources and properties paths: /Zone/{zoneName}/_rad_method/editConfig: put: operationId: editKernelZoneConfig summary: Solaris Zones Begin Editing Kernel Zone Configuration description: Start a configuration editing session for a kernel zone. Kernel zones support additional resource types such as virtual CPUs (dedicated-cpu), virtual memory, and virtual I/O devices. tags: - Kernel Zone Configuration parameters: - $ref: '#/components/parameters/zoneName' requestBody: content: application/json: schema: type: object properties: liveMode: type: boolean default: false description: Enable live reconfiguration examples: EditkernelzoneconfigRequestExample: summary: Default editKernelZoneConfig request x-microcks-default: true value: liveMode: true responses: '200': description: Editing session started content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Editkernelzoneconfig200Example: summary: Default editKernelZoneConfig 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/addResource: put: operationId: addKernelZoneResource summary: Solaris Zones Add Resource to Kernel Zone description: Add a resource to the kernel zone configuration. Kernel zones support additional resource types including dedicated-cpu for virtual CPU allocation, capped-memory for memory limits, and virtual I/O devices. tags: - Kernel Zone Configuration parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/KernelZoneResource' examples: AddkernelzoneresourceRequestExample: summary: Default addKernelZoneResource request x-microcks-default: true value: type: dedicated-cpu properties: - name: Example Title value: example_value type: simple listvalue: {} complexvalue: {} parent: example_value responses: '200': description: Resource added content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Addkernelzoneresource200Example: summary: Default addKernelZoneResource 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/commitConfig: put: operationId: commitKernelZoneConfig summary: Solaris Zones Commit Kernel Zone Configuration tags: - Kernel Zone Configuration parameters: - $ref: '#/components/parameters/zoneName' responses: '200': description: Configuration committed content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Commitkernelzoneconfig200Example: summary: Default commitKernelZoneConfig 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/getResources: put: operationId: getKernelZoneResources summary: Solaris Zones Query Kernel Zone Resources description: Retrieve resources configured for the kernel zone including CPU, memory, I/O devices, and networking. tags: - Kernel Zone Configuration parameters: - $ref: '#/components/parameters/zoneName' requestBody: content: application/json: schema: type: object properties: type: type: string description: 'Resource type filter. Kernel zones support: dedicated-cpu, capped-memory, anet, device, suspend, security-flags' filter: type: array items: $ref: '#/components/schemas/Property' examples: GetkernelzoneresourcesRequestExample: summary: Default getKernelZoneResources request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} responses: '200': description: Kernel zone resources content: application/json: schema: type: object properties: status: type: string payload: type: array items: $ref: '#/components/schemas/KernelZoneResource' examples: Getkernelzoneresources200Example: summary: Default getKernelZoneResources 200 response x-microcks-default: true value: status: example_value payload: - type: dedicated-cpu properties: - {} parent: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: RadError: type: object properties: status: type: string example: failure payload: type: object properties: code: type: integer message: type: string example: example_value ZoneResult: type: object properties: status: type: string example: example_value payload: type: object properties: code: type: string enum: - NONE - FRAMEWORK_ERROR - SNAPSHOT_ERROR - COMMAND_ERROR - RESOURCE_ALREADY_EXISTS - RESOURCE_NOT_FOUND - RESOURCE_TOO_MANY - RESOURCE_UNKNOWN - ALREADY_EDITING - INCOMPLETE_NO_CONFIG - PROPERTY_UNKNOWN - NOT_EDITING - SYSTEM_ERROR - INVALID_ARGUMENT - INVALID_ZONE_STATE message: type: string stdout: type: string stderr: type: string example: example_value Property: type: object required: - name properties: name: type: string description: Property name. Key kernel zone properties include ncpus, physical, locked, swap, lower-link, allowed-address. example: Example Title value: type: string description: Property value example: example_value type: type: string enum: - simple - list - complex example: simple listvalue: type: array items: type: string example: [] complexvalue: type: array items: type: string example: [] KernelZoneResource: type: object required: - type properties: type: type: string description: Resource type. Kernel zone specific types include dedicated-cpu and capped-memory for virtual hardware allocation. enum: - dedicated-cpu - capped-memory - capped-cpu - anet - device - fs - suspend - security-flags - attr example: dedicated-cpu properties: type: array items: $ref: '#/components/schemas/Property' description: Resource property values example: [] parent: type: string description: Parent resource reference example: example_value responses: NotFound: description: Zone not found content: application/json: schema: $ref: '#/components/schemas/RadError' Unauthorized: description: Authentication required content: application/json: schema: $ref: '#/components/schemas/RadError' BadRequest: description: Invalid request content: application/json: schema: $ref: '#/components/schemas/RadError' parameters: zoneName: name: zoneName in: path required: true description: Kernel zone name schema: type: string securitySchemes: cookieAuth: type: apiKey in: cookie name: _rad_session description: RAD session cookie obtained via authentication externalDocs: description: Oracle Solaris Kernel Zones Documentation url: https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/kernel-zones/oracle-solaris-kernel-zones.html