### Is there an existing issue for this?

- [X] I have searched the existing issues

### Enhancement description

OpenSearch 2.9 supports a lot of useful features that AWS opensearch also supports, such as being able to use filters in on FAISS searches in the KNN plugin. It would be great to have these in localstack!

### 🧑‍💻 Implementation

this may be as trivial as a version bump? As far as I can tell, localstack is just pulling the opensearch docker image

### Anything else?

_No response_
),
    CompatibleVersionsMap(
        SourceVersion="OpenSearch_1.3",
        TargetVersions=["OpenSearch_2.3", "OpenSearch_2.5"],
    ),
    CompatibleVersionsMap(
        SourceVersion="OpenSearch_2.3",
        TargetVersions=["OpenSearch_2.5"],
    ),
    CompatibleVersionsMap(SourceVersion="OpenSearch_2.5", TargetVersions=["OpenSearch_2.7"]),
]
def get_install_type_and_version(version: str) -> (EngineType, str):
    engine_type = EngineType(version.split("_")[0])
    if version not in install_versions:
        raise ValueError(f"unknown version {version}")
    return engine_type, install_versions[version]
def get_engine_type(version: str) -> EngineType:
    return EngineType(version.split("_")[0])
def get_install_version(version: str) -> str:
    if version not in install_versions:
        raise ValueError(f"unknown version {version}")
    return install_versions[version]
def _opensearch_url(install_version: semver.VersionInfo) -> str:
    arch = "x64" if get_arch() == "amd64" else "arm64"
    version = str(install_version)
    return (
        f"https://artifacts.opensearch.org/releases/bundle/opensearch/"
        f"{version}/opensearch-{version}-linux-{arch}.tar.gz"
    )
def _es_url(install_version: semver.VersionInfo) -> str: