이제 본격적으로 StarlingX의 설정 및 설치를 위한 작업을 하겠습니다.

 

해당 설치에서 이용하고 있는 Ansible Bootstrap playbook을 위해서는 외부 네트워크 연결이 필요합니다.

네트워크가 연결이 되어있다면 DHCP로 인해 이미 IP를 할당 받았을 것이고 이를 알기 위해서는 ip address 명령어를 입력해서 할당된 ip를 확인합니다. 그리고 ping 8.8.8.8로 구글의 도메인으로 핑을 보내 외부 연결이 되어있나 확인을 하면 됩니다.

 

만약 DHCP가 할당되지 않았다면 수동으로 IP를 입력하시면 됩니다.

sudo ip address add <IP-ADDRESS>/<SUBNET-LENGTH> dev <PORT>
sudo ip link set up dev <PORT>
sudo ip route add default via <GATEWAY-IP-ADDRESS> dev <PORT>
ping 8.8.8.8

예를 드리면 이런식으로 입력하면 됩니다.

sudo ip address add 192.168.8.224/24 dev eno1
sudo ip link set up dev eno1
sudo ip route add default via 192.168.8.1 dev eno1
ping 8.8.8.8

 

그리고 Ansible을 위한 yml파일 설정을 합니다.

다음은 Ansible을 위한 yml파일들의 경로입니다.

/etc/ansible/hosts
The default Ansible inventory file. Contains a single host: localhost.

/usr/share/ansible/stx-ansible/playbooks/bootstrap/bootstrap.yml
The Ansible bootstrap playbook.

/usr/share/ansible/stx-ansible/playbooks/host_vars/bootstrap/default.yml
The default configuration values for the bootstrap playbook.

sysadmin home directory ($HOME)
The default location where Ansible looks for and imports user configuration override files for hosts. For example: $HOME/<hostname>.yml.

이 중 전부를 확인해봤는데 3번째의 default.yml와 4번째의 sysadmin home directory를 제외하고는 안건드려도 됩니다.

 

가장 기본이 되는 4번째의 sysadmin home directory 먼저 설정하겠습니다.

cd ~
cat <<EOF > localhost.yml
system_mode: simplex

dns_servers:
  - 8.8.8.8
  - 8.8.4.4

external_oam_subnet: <OAM-IP-SUBNET>/<OAM-IP-SUBNET-LENGTH>
external_oam_gateway_address: <OAM-GATEWAY-IP-ADDRESS>
external_oam_floating_address: <OAM-FLOATING-IP-ADDRESS>

admin_username: admin
admin_password: <sysadmin-password>
ansible_become_pass: <sysadmin-password>
EOF

 해당 명령어에 이전에 확인한 ip의 값을 이용해서 채워넣으면 됩니다.

예시입니다.

예시입니다.

저는 floating address 에 실제 ip주소와 동일한 주소를 부여했습니다.

그리고 password는 졸업작품 당시 진행한 작품이라 저런식으로 부여했습니다.

 

localhost.yml에 적힌 설정뿐만 아닌 다른 설정이 필요할 떄도 있을겁니다.

추가로 설정을 원하신다면 3번째의 default.yml을 확인하시면 됩니다. 원하시지 않는다면 넘어가도 괜찮습니다.

vi /usr/share/ansible/stx-ansible/playbooks/host_vars/bootstrap/default.yml

vi 편집기로 해당 yml 파일에 들어갑니다.

default.yml 
default.yml 

그러면 위와 같이 각 설정에 대한 값과 그에 대한 설명이 주석으로 되어있는 것을 확인할 수 있습니다.

k8s의 cluster pod 설정, dns 설정 등 다양한 설정 값을 변경할 수 있습니다.

이 파일에도 localhost.yml에 있는 내용이 중복으로 있습니다.

 

만약 defalut.yml을 변경할 경우 localhost.yml의 내용이 적용되지 않는 경우도 있어서 default.yml의 내용중  localhost.yml과 중복되는 내용은 통일시켜주었습니다. 

 

설정이 완료됐으면 Ansible을 실행하면 됩니다.

ansible-playbook /usr/share/ansible/stx-ansible/playbooks/bootstrap/bootstrap.yml

위 명령어를 진행하면 Ansible이 실행되게 됩니다. 대략 5~10분의 시간이 소요됩니다.

초반부에 에러가 발생한다면 sudo 계정으로 진행되고 있는지 확인하고 아니라면 sudo계정으로 로그인해 진행합니다.

정상적으로 진행된다면 위와같이 화면이 진행되게 됩니다.

kubernetes master를 초기화하는 과정에서 만약 에러가 발생한다면 localhost.yml의 내용과 존재를 확인하고 없다면 다시 만듭니다. 그리고 다시 위의 ansible-playbook 명령어를 진행합니다.

그리고 5~10분의 소요된 후 정상적으로 완료가 되었다면 위와같은 화면이 나타나게 됩니다.

'Cloud > StalingX' 카테고리의 다른 글

StarlingX - (5) StarlingX 대시보드 및 기능  (3) 2020.03.17
StarlingX - (4) Controller 설정  (3) 2020.03.16
StarlingX - (2) bootable usb로 os 설치  (0) 2020.03.16
StarlingX - (1)구성 및 최소 요구사항  (0) 2020.03.16
StarlingX  (1) 2020.03.15

+ Recent posts