목차

소개

사전 요구 사항

사용되는 구성 요소

Cisco IoT FND PostgreSQL OVA 구축

1단계: Cisco 소프트웨어 다운로드에서 OVA 다운로드

2단계: VMware vSphere Client에 로그인하여 ESXi 서버에 OVA를 구축합니다.

3단계: 자격 증명을 사용하여 로그인

4단계: 네트워크 설정

Cisco IoT FND를 Release 5.0에서 5.1로 업그레이드

1단계: 업그레이드 패키지 다운로드

2단계: 업그레이드 전 확인 수행

3단계: 업그레이드 RPM을 /opt 디렉토리에 복사합니다.

4단계: Upgrade 명령 실행

소개

이 문서에서는 Cisco IoT FND PostgreSQL OVA를 설치하고 VMware ESXi에서 FND 릴리스 5.0.0에서 이후 릴리스로 업그레이드하는 방법에 대해 설명합니다.

사전 요구 사항

VMware ESXi 7.x 이상

Cisco IoT FND(Field Network Director) PostgreSQL OVA(Open Virtual Appliance) 릴리스 5.0.0 이상

VM 요구 사항:

Memory : 24GB

vCPU: 4

디스크: 최소 450GB

사용되는 구성 요소

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

Cisco IoT FND PostgreSQL OVA 구축

다음은 VMware ESXi 버전 7.x 또는 8.0 버전을 실행하는 OVA(Open Virtual Appliance) 소프트웨어와 함께 Cisco IoT FND 릴리스 5.x.x 이상 릴리스를 설치하는 지침입니다.

1단계: Cisco Software Downloads(Cisco 소프트웨어 다운로드)에서 OVA 다운로드

Cisco 소프트웨어 페이지에서 OVA 파일 다운로드 - 여기를 클릭하십시오.

2단계: VMware vSphere Client에 로그인하여 ESXi 서버에 OVA를 구축합니다.

데이터 저장소를 선택한 후 프로비저닝 유형을 선택하고 자동으로 전원 켜기 옵션을 활성화합니다. 이렇게 하면 구축 프로세스가 완료되면 가상 머신의 전원이 켜집니다. Next(다음)를 클릭합니다.

참고

씩(thick) 프로비저닝

- 앞쪽에 디스크 공간을 예약합니다.

- Cisco IoT FND OVA를 위해 ESXi 서버에 600GB의 사용 가능한 디스크 공간이 필요합니다.

씬 프로비저닝

- 필요에 따라 디스크 공간 증가

- 초기 디스크 사용량은 약 50GB로 구축 규모에 따라 증가합니다.

완료를 클릭하기 전에 선택 사항을 검토합니다.

3단계: 자격 증명을 사용하여 로그인

OVA 구축이 완료되고 Linux 시작 화면이 나타나면 다음 기본 자격 증명을 사용합니다.

SSH 액세스

- 사용자 이름: FNDUSER

- 암호: C!sco123

GUI 액세스

- 사용자 이름: 루트

- 암호: 루트123

4단계: 네트워크 설정

네트워크 컨피그레이션 단계를 완료합니다.

1. 고정 IP 주소를 할당하거나 DHCP 서버를 사용하여 IP 주소를 할당할 수 있는지 확인합니다.

2. 호스트 VM에 유효하고 연결 가능한 DNS 서버를 구성합니다.

3. IP 컨피그레이션이 완료된 후 네트워크 서비스를 다시 시작합니다.

Cisco IoT FND를 Release 5.0에서 5.1로 업그레이드

1단계: 업그레이드 패키지 다운로드

Cisco Software Download(Cisco 소프트웨어 다운로드) 페이지에서 업그레이드 패키지 다운로드 - 여기를 클릭하십시오.

파일 이름: CISCO-IOTFND-VPI-K9-UPGRADE-SCRIPTS-5.1.0-155.zip

2단계: 업그레이드 전 확인 수행

업그레이드를 진행하기 전에 Cisco IoT FND 서비스의 상태 및 운영 상태를 확인하십시오.

3단계: 업그레이드 RPM을 /opt 디렉토리에 복사합니다.

4단계: Upgrade 명령 실행

예:

rpm -Uvh upgrade-ova—<릴리스>-<빌드 번호>.rpm

[root@iot-fnd opt]# rpm -Uvh upgrade-ova-5.1.0-155.rpm

warning: upgrade-ova-5.1.0-155.rpm: Header V4 RSA/SHA256 Signature, key ID a5a10227: NOKEY

Verifying...                          ################################# [100%]

Preparing...                          ################################# [100%]

Updating / installing...

1:upgrade-ova-5.1.0-155            ################################# [100%]

Deleting /var/lib/docker/volumes/fogd_data/_data/dist/appmgr/extensions/fnd/dependencies...

Deletion complete.

Started installer in background. Please check ~/rpm.log in few minutes for details.

[root@iot-fnd opt]#

Mon Jan 12 13:38:02 EST 2026 Background installer started

Mon Jan 12 13:38:02 EST 2026 Please wait until the 'RPM installation completed' message is logged

Mon Jan 12 13:38:02 EST 2026 Upgrading cgms-postgres-5.1.0-155.x86_64.rpm

Verifying...                          ########################################

Preparing...                          ########################################

Updating / installing...

cgms-postgres-5.1.0-155               ########################################

Cleaning up / removing...

cgms-postgres-5.0.0-117               ########################################

Mon Jan 12 13:38:22 EST 2026 Upgrading cgms-influx-5.1.0-155.x86_64.rpm

Verifying...                          ########################################

Preparing...                          ########################################

Updating / installing...

cgms-influx-5.1.0-155                 ########################################

Cleaning up / removing...

cgms-influx-5.0.0-117                 ########################################

Mon Jan 12 13:38:28 EST 2026 monit-5.33.0-1.el7 already installed on non-RHEL 9 system

Mon Jan 12 13:38:36 EST 2026 Stopping PostgreSQL services

Mon Jan 12 13:39:37 EST 2026 Upgrading Postgresql 16.7

Mon Jan 12 13:39:38 EST 2026 Using RHEL 8.x Installing PostgreSQL 16.7 libraries

warning: postgresql16-libs-16.7-1PGDG.rhel8.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 08b40d20: NOKEY

Verifying...                          ########################################

Preparing...                          ########################################

Updating / installing...

postgresql16-libs-16.7-1PGDG.rhel8    ########################################

postgresql16-16.7-1PGDG.rhel8         ########################################

postgresql16-server-16.7-1PGDG.rhel8  ########################################

postgresql16-contrib-16.7-1PGDG.rhel8 ########################################

Mon Jan 12 13:39:42 EST 2026 Migrating DB data to Postgresql 16.7

Initializing database ... OK

Created symlink /etc/systemd/system/multi-user.target.wants/postgresql-16.service → /usr/lib/systemd/system/postgresql-16.service.

Performing Consistency Checks

-----------------------------

Checking cluster versions                                     ok

Checking database user is the install user                    ok

Checking database connection settings                         ok

Checking for prepared transactions                            ok

Checking for system-defined composite types in user tables    ok

Checking for reg* data types in user tables                   ok

Checking for contrib/isn with bigint-passing mismatch         ok

Checking for incompatible "aclitem" data type in user tables  ok

Checking for user-defined encoding conversions                ok

Checking for user-defined postfix operators                   ok

Checking for incompatible polymorphic functions               ok

Creating dump of global objects                               ok

Creating dump of database schemas                             ok

Checking for presence of required libraries                   ok

Checking database user is the install user                    ok

Checking for prepared transactions                            ok

Checking for new cluster tablespace directories               ok

If pg_upgrade fails after this point, you must re-initdb the

new cluster before continuing.

Performing Upgrade

------------------

Setting locale and encoding for new cluster                   ok

Analyzing all rows in the new cluster                         ok

Freezing all rows in the new cluster                          ok

Deleting files from new pg_xact                               ok

Copying old pg_xact to new server                             ok

Setting oldest XID for new cluster                            ok

Setting next transaction ID and epoch for new cluster         ok

Deleting files from new pg_multixact/offsets                  ok

Copying old pg_multixact/offsets to new server                ok

Deleting files from new pg_multixact/members                  ok

Copying old pg_multixact/members to new server                ok

Setting next multixact ID and offset for new cluster          ok

Resetting WAL archives                                        ok

Setting frozenxid and minmxid counters in new cluster         ok

Restoring global objects in the new cluster                   ok

Restoring database schemas in the new cluster                 ok

Copying user relation files                                   ok

Setting next OID for new cluster                              ok

Sync data directory to disk                                   ok

Creating script to delete old cluster                         ok

Checking for extension updates                                ok

Upgrade Complete

----------------

Optimizer statistics are not transferred by pg_upgrade.

Once you start the new server, consider running:

/usr/pgsql-16/bin/vacuumdb --all --analyze-in-stages

Running this script will delete the old cluster's data files:

./delete_old_cluster.sh

Starting new PostgreSQL server...

waiting for server to start.... done

server started

Setting password encryption method to 'scram-sha-256'...

ALTER ROLE

ALTER ROLE

Stopping new PostgreSQL server...

waiting for server to shut down.... done

server stopped

Upgrade and password config completed.

Mon Jan 12 13:40:05 EST 2026 Data migration completed

Removed /etc/systemd/system/multi-user.target.wants/postgresql-12.service.

Reinitializing monit daemon

Mon Jan 12 13:40:53 EST 2026 Deleting postgres 12

Updating Subscription Management repositories.

Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Dependencies resolved.

================================================================================

Package                 Arch      Version               Repository        Size

================================================================================

Removing:

postgresql12            x86_64    12.12-1PGDG.rhel8     @@commandline    8.6 M

postgresql12-contrib    x86_64    12.12-1PGDG.rhel8     @@commandline    2.3 M

postgresql12-libs       x86_64    12.12-1PGDG.rhel8     @@commandline    1.5 M

postgresql12-server     x86_64    12.12-1PGDG.rhel8     @@commandline     21 M

Transaction Summary

================================================================================

Remove  4 Packages

Freed space: 33 M

Running transaction check

Transaction check succeeded.

Running transaction test

Transaction test succeeded.

Running transaction

Preparing        :                                                        1/1

Running scriptlet: postgresql12-contrib-12.12-1PGDG.rhel8.x86_64          1/1

Erasing          : postgresql12-contrib-12.12-1PGDG.rhel8.x86_64          1/4

Running scriptlet: postgresql12-server-12.12-1PGDG.rhel8.x86_64           2/4

Erasing          : postgresql12-server-12.12-1PGDG.rhel8.x86_64           2/4

Running scriptlet: postgresql12-server-12.12-1PGDG.rhel8.x86_64           2/4

Erasing          : postgresql12-12.12-1PGDG.rhel8.x86_64                  3/4

Running scriptlet: postgresql12-12.12-1PGDG.rhel8.x86_64                  3/4

Erasing          : postgresql12-libs-12.12-1PGDG.rhel8.x86_64             4/4

Running scriptlet: postgresql12-libs-12.12-1PGDG.rhel8.x86_64             4/4

Verifying        : postgresql12-12.12-1PGDG.rhel8.x86_64                  1/4

Verifying        : postgresql12-contrib-12.12-1PGDG.rhel8.x86_64          2/4

Verifying        : postgresql12-libs-12.12-1PGDG.rhel8.x86_64             3/4

Verifying        : postgresql12-server-12.12-1PGDG.rhel8.x86_64           4/4

Installed products updated.

Removed:

postgresql12-12.12-1PGDG.rhel8.x86_64

postgresql12-contrib-12.12-1PGDG.rhel8.x86_64

postgresql12-libs-12.12-1PGDG.rhel8.x86_64

postgresql12-server-12.12-1PGDG.rhel8.x86_64

Complete!

Mon Jan 12 13:41:00 EST 2026 Using PostgreSQL version 16 for configuration path.

setting idle_in_transaction_session_timeout to 3h

set idle_in_transaction_session_timeout to 3h

Mon Jan 12 13:41:01 EST 2026 Already running influxdb 1.8.3

Mon Jan 12 13:41:04 EST 2026 Already running docker-ce 19.03.15

Mon Jan 12 13:41:04 EST 2026 Restarting services

Mon Jan 12 13:41:34 EST 2026 RPM installation completed

Cisco IoT FND on OVA upgrade is complete.