diff options
Diffstat (limited to 'deploy/adapters')
10 files changed, 286 insertions, 3 deletions
diff --git a/deploy/adapters/ansible/kubernetes/roles/kargo/files/mirrors_aarch64.repo b/deploy/adapters/ansible/kubernetes/roles/kargo/files/mirrors_aarch64.repo new file mode 100644 index 00000000..1d622d3c --- /dev/null +++ b/deploy/adapters/ansible/kubernetes/roles/kargo/files/mirrors_aarch64.repo @@ -0,0 +1,22 @@ +[base] +name=CentOS-$releasever - Base +baseurl=http://mirror.centos.org/altarch/$releasever/os/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 + +#released updates +[updates] +name=CentOS-$releasever - Updates +baseurl=http://mirror.centos.org/altarch/$releasever/updates/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 + +#additional packages that may be useful +[extras] +name=CentOS-$releasever - Extras +baseurl=http://mirror.centos.org/altarch/$releasever/extras/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 diff --git a/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml index 16d0b2c0..a40778f5 100644 --- a/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml +++ b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml @@ -21,8 +21,11 @@ - name: configure local mirror repo copy: - src: mirrors.repo + src: "{{ item }}" dest: /etc/yum.repos.d/mirrors.repo + with_first_found: + - mirrors_{{ ansible_architecture }}.repo + - mirrors.repo run_once: "True" - name: clean local pip conf to use official pip repo diff --git a/deploy/adapters/ansible/kubernetes/roles/pre-k8s/files/centos_base_aarch64.repo b/deploy/adapters/ansible/kubernetes/roles/pre-k8s/files/centos_base_aarch64.repo new file mode 100644 index 00000000..1d622d3c --- /dev/null +++ b/deploy/adapters/ansible/kubernetes/roles/pre-k8s/files/centos_base_aarch64.repo @@ -0,0 +1,22 @@ +[base] +name=CentOS-$releasever - Base +baseurl=http://mirror.centos.org/altarch/$releasever/os/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 + +#released updates +[updates] +name=CentOS-$releasever - Updates +baseurl=http://mirror.centos.org/altarch/$releasever/updates/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 + +#additional packages that may be useful +[extras] +name=CentOS-$releasever - Extras +baseurl=http://mirror.centos.org/altarch/$releasever/extras/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 diff --git a/deploy/adapters/ansible/kubernetes/roles/pre-k8s/tasks/RedHat.yml b/deploy/adapters/ansible/kubernetes/roles/pre-k8s/tasks/RedHat.yml index 58af0f7b..8e410e15 100644 --- a/deploy/adapters/ansible/kubernetes/roles/pre-k8s/tasks/RedHat.yml +++ b/deploy/adapters/ansible/kubernetes/roles/pre-k8s/tasks/RedHat.yml @@ -51,5 +51,8 @@ - name: change sources(yum) list copy: - src: centos_base.repo + src: "{{ item }}" dest: /etc/yum.repos.d/centos_base.repo + with_first_found: + - centos_base_{{ ansible_architecture }}.repo + - centos_base.repo diff --git a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml index ef7128c5..8d944387 100644 --- a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml +++ b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml @@ -41,7 +41,10 @@ - setup-openstack - sync-inventory -- hosts: compute +- hosts: + - compute + - utility + - neutron_server remote_user: root roles: - post-osa diff --git a/deploy/adapters/ansible/roles/post-osa/files/sfc.conf b/deploy/adapters/ansible/roles/post-osa/files/sfc.conf new file mode 100755 index 00000000..ce42c9e1 --- /dev/null +++ b/deploy/adapters/ansible/roles/post-osa/files/sfc.conf @@ -0,0 +1,9 @@ +[DEFAULT] + +service_plugins = router,metering,flow_classifier,sfc + +[sfc] +drivers = ovs + +[flowclassifier] +drivers = ovs diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/install_networking_sfc.yml b/deploy/adapters/ansible/roles/post-osa/tasks/install_networking_sfc.yml new file mode 100644 index 00000000..fbed5815 --- /dev/null +++ b/deploy/adapters/ansible/roles/post-osa/tasks/install_networking_sfc.yml @@ -0,0 +1,73 @@ +--- + +- name: install networking-sfc + pip: + name: networking-sfc + virtualenv: /openstack/venvs/neutron-15.1.4 + when: + - inventory_hostname in groups['neutron_server'] + +- name: install crudini + package: + name: crudini + state: latest + when: + - inventory_hostname in groups['neutron_server'] + +- name: Install networking-sfc for CLI + pip: + name: networking-sfc + when: + - inventory_hostname in groups['utility'] + +- name: turn off neutron-server on control node + service: name=neutron-server state=stopped + when: inventory_hostname in groups['neutron_server'] + +- name: copy sfc.conf + copy: + src: "{{ sfc_plugins.src }}" + dest: "{{ sfc_plugins.dst }}" + mode: 0755 + when: inventory_hostname in groups['neutron_server'] + +- name: Configure SFC driver + shell: crudini --merge /etc/neutron/neutron.conf < /opt/sfc.conf + when: inventory_hostname in groups['neutron_server'] + +- name: delete sfc.conf + shell: rm -rf {{ sfc_plugins.dst }} + when: inventory_hostname in groups['neutron_server'] + +- name: Perform a Neutron DB online upgrade + command: | + /openstack/venvs/neutron-15.1.4/bin/neutron-db-manage + --config-file /etc/neutron/neutron.conf + --config-file /etc/neutron/plugins/ml2/ml2_conf.ini + upgrade --expand + become: "yes" + become_user: "neutron" + when: inventory_hostname in groups['neutron_server'][0] + +- name: Perform a Neutron DB offline upgrade + command: | + /openstack/venvs/neutron-15.1.4/bin/neutron-db-manage + --config-file /etc/neutron/neutron.conf + --config-file /etc/neutron/plugins/ml2/ml2_conf.ini + upgrade --contract + become: "yes" + become_user: "neutron" + when: inventory_hostname in groups['neutron_server'][0] + +- name: SFC DB upgrade + command: | + /openstack/venvs/neutron-15.1.4/bin/neutron-db-manage + --subproject networking-sfc + upgrade head + become: "yes" + become_user: "neutron" + when: inventory_hostname in groups['neutron_server'][0] + +- name: turn on neutron-server on control node + service: name=neutron-server state=started + when: inventory_hostname in groups['neutron_server'] diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml index c48a5d1a..f7f7a6cc 100644 --- a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml +++ b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml @@ -8,3 +8,10 @@ ############################################################################## --- - include: "{{ ansible_distribution }}.yml" + when: inventory_hostname in groups['compute'] + +# install networking-sfc for non odl scenarios +- include: install_networking_sfc.yml + when: + - odl_sfc is not defined or odl_sfc == "Disable" + - inventory_hostname not in groups['compute'] diff --git a/deploy/adapters/ansible/roles/post-osa/vars/main.yml b/deploy/adapters/ansible/roles/post-osa/vars/main.yml new file mode 100644 index 00000000..4feb9756 --- /dev/null +++ b/deploy/adapters/ansible/roles/post-osa/vars/main.yml @@ -0,0 +1,5 @@ +--- + +sfc_plugins: + src: sfc.conf + dst: /opt/sfc.conf diff --git a/deploy/adapters/cobbler/kickstarts/default-aarch64.ks b/deploy/adapters/cobbler/kickstarts/default-aarch64.ks new file mode 100644 index 00000000..365694fb --- /dev/null +++ b/deploy/adapters/cobbler/kickstarts/default-aarch64.ks @@ -0,0 +1,136 @@ +# Kickstart for Profile: CentOS7.3_aarch64 +# Distro: CentOS7.3 + +# System Authorization +auth --useshadow --enablemd5 + +#if $os_version == "rhel7" +eula --agreed +services --enabled=NetworkManager,sshd +#end if + +# Use Graphic Mode +text + +# Disable Firewall +firewall --disabled + +# Run the Setup Agent on first-boot +firstboot --disable + +# System Keyboard +keyboard us + +# Language Setting +lang en_US + +# Installation Loggin Level +logging --level=info + +# Network Installation +url --url=$tree + + +$SNIPPET('kickstart_network_config') +$SNIPPET('kickstart_yum_repo_config') + +# Set User Password +#if $getVar('username', 'root') != "root" +rootpw root + #set username = $getVar('username', 'root') + #set crypted_param = '' + #set password_param = '--password=%s' % $username + #if $getVar('password', '') != "" + #set crypted_param = '--iscrypted' + #set password_param = '--password=%s' % $password + #end if +user --name=$username $crypted_param $password_param +#else + #if $getVar('password', '') != "" +rootpw --iscrypted $password + #else +rootpw root + #end if +#end if + +# Selinux Disable +selinux --disabled + +# No X Window System +skipx + +# System Timezone +#if $getVar('timezone', '') != "" +timezone --utc $timezone +#else +timezone --utc US/Pacific +#end if + +ignoredisk --only-use=sda +bootloader --location=mbr +clearpart --drives=sda --all --initlabel +part /boot/efi --fstype=efi --size=200 +part /boot --fstype=ext4 --size=512 +part / --fstype=ext4 --size=10240 --grow +part swap --size=4000 + +# Install +install + +# Reboot After Installation +reboot + +%pre +$SNIPPET('kickstart_pre_log') +$SNIPPET('kickstart_start') +$SNIPPET('kickstart_pre_install_network_config') + +# Enable installation monitoring +$SNIPPET('kickstart_pre_anamon') +%end + +# Packages +%packages --nobase +@core +iproute +# ntp +openssh-clients +# wget +# yum-plugin-priorities +json-c +libestr +rsyslog +parted +# vim +# lsof +# strace +# if $os_version == "rhel7" +# net-tools +# end if +#if $getVar('tool', '') != '' + #set $kickstart_software = "kickstart_software_%s" % $tool +$SNIPPET($kickstart_software) +#end if +%end + +%post --log=/var/log/post_install.log +$SNIPPET('kickstart_post_log') +$SNIPPET('kickstart_post_install_kernel_options') +$SNIPPET('kickstart_post_install_network_config') + +chkconfig iptables off +chkconfig ip6tables off + +$SNIPPET('kickstart_yum') +$SNIPPET('kickstart_ssh') +# $SNIPPET('kickstart_ntp') +$SNIPPET('kickstart_limits.conf') +$SNIPPET('kickstart_sysctl.conf') +$SNIPPET('kickstart_rsyslog.conf') +#if $getVar('tool', '') != '' + #set $kickstart_tool = "kickstart_%s" % $tool +$SNIPPET($kickstart_tool) +#end if +$SNIPPET('kickstart_post_anamon') +$SNIPPET('kickstart_done') +%end |