Data Plane Deployment
Reference:
-
5.3. Creating a set of data plane nodes from deployment guide.
-
Sample pre-provisioned nodes config from upstream repository.
-
5.5. Deploying the data plane from deployment guide.
-
Connect to the bastion server with password
redhat
ssh root@192.168.123.100
Sample Output[root@ocp4-bastion ~] #
-
Create Secret
oc create secret generic dataplane-ansible-ssh-private-key-secret --save-config --dry-run=client --from-file=authorized_keys=/root/.ssh/id_rsa_compute.pub --from-file=ssh-privatekey=/root/.ssh/id_rsa_compute --from-file=ssh-publickey=/root/.ssh/id_rsa_compute.pub -n openstack -o yaml | oc apply -f- ssh-keygen -f ./id -t ecdsa-sha2-nistp521 -N '' oc create secret generic nova-migration-ssh-key --from-file=ssh-privatekey=id --from-file=ssh-publickey=id.pub -n openstack -o yaml | oc apply -f-
-
Change to the sample configuration files' repository.
cd ~/rhoso-deploy-files/sample/
-
Copy sample dataplane node set configuration from upstream repository link mentioned above.
or
Use
dataplane-node-set-deploy.sample
file. -
Create a copy of sample configuration file.
cp dataplane-node-set-deploy.sample osp-ng-dataplane-node-set-deploy.yaml
-
Edit the file with your preferred editor.
vi osp-ng-dataplane-node-set-deploy.yaml
-
You may need to perform following changes in the yaml file copied from sample:
-
Under
spec
section add environment variables for ansible output (optional)env: - name: ANSIBLE_FORCE_COLOR value: "True" - name: ANSIBLE_VERBOSITY value: "2"
-
Add
download-cache
underservices
list. -
Set
ansibleHost
varialbe to the ip address of compute node. -
Add
ansibleUser
variable and set it toroot
. -
Under the
nodes
blok foredpm-compute-0
node, make sure all network names are their settings are as per your network configuration table. -
Control plane network is not your default route on the compute host in this lab.
-
Remove the block for
edpm-compute-1
, we are deploying single compute now. -
Under
nodeTemplate
changeansibleUser
from cloud-admin toroot
. -
Set the appropriate name for your nova api networks, change the string from
internal_api
tointernalapi
. -
Under
edpm_network_config_template
jinja2 block:-
Under
network_config
changefor network in role_networks
tofor network in role_networks if network != 'external'
-
Add below jinja2 block
{% if 'external' in role_networks or 'external_bridge' in role_tags %} - type: ovs_bridge name: br-ex dns_servers: {{ ctlplane_dns_nameservers }} domain: {{ dns_search_domains }} use_dhcp: false members: - type: interface name: nic2 mtu: 1500 primary: true {% endif %} {% if 'external' in role_networks %} routes: - ip_netmask: 0.0.0.0/0 next_hop: {{ external_gateway_ip | default('192.168.123.1') }} addresses: - ip_netmask: {{ external_ip }}/{{ external_cidr }} {% endif %}
-
Set the variables for compute host networking, e.g dns, vlan, mtu, etc.
-
Define
role_networks
used in jinja2 block. -
Set
edpm_sshd_allowed_ranges
to ctlplane subnet. -
Set
edpm_container_registry_logins
with your credentials.
-
-
-
Make sure nmae of the nodesets in deployment config matches with metadata name in your dataplane nodeset configuration. |
Configuration of data plane node set file is tricky. Compare your configuration settings with the pre-configured file for reference. |
-
Copy sample dataplane deployment configuration from the documentation link mentioned in the reference on top.
or
Use
dataplane-deployment.sample
file. -
Create a copy of sample configuration file.
cp dataplane-deployment.sample osp-ng-dataplane-deployment.yaml
-
Edit the file with your preferred editor.
vi osp-ng-dataplane-deployment.yaml
-
Make sure you appropriate
nodeSets
are listed. -
Delete the other unwatend nodeSets configuration lines.
-
Deploy the data plane by applying nodesets and deployment configuration.
oc apply -f osp-ng-dataplane-node-set-deploy.yaml oc apply -f osp-ng-dataplane-deployment.yaml
The data plane deployment takes several minutes to complete.
-
Go to the next page for steps to track the progress of your deployment.